最后更新于2024年2月23日(星期五)21:38:03 GMT

直接系统调用支持Windows计量器

直接系统调用是一种众所周知的技术,通常用于绕过EDR/AV检测. 这种技术在执行动态分析时特别有用, 安全软件监控系统上的每个进程以检测任何可疑活动. 一种常见的方法是在Win32 API调用上添加用户域钩子, 尤其是那些经常被恶意软件使用的. 直接系统调用是一种直接运行系统调用并无需通过Win32 API进入内核模式的方法.

This first implementation 重点是用对相应的本机API的直接系统调用替换反射DLL注入(RDI)库使用的Win32 API调用. For example, VirtualAlloc 的系统调用所取代 ZwAllocateVirtualMemory. 因为RDI在Meterpreter及其扩展中无处不在, 对于这项初步工作来说,它是一个很好的候选者.

主要的困难是找到正确的系统调用号,因为不同Windows版本的系统调用号不一样. Also, EDR通常与NTDLL本地API挂钩, 使系统调用号的发现更具挑战性. 为此使用的技术是基于系统调用号按顺序分配的假设, 从数字0开始. 如果我们看看原生API函数是如何存储在内存中的, 系统调用号可以从相关的本机API函数在内存中的位置推断出来. 该技术包括选择系统调用函数(Zw…) from ntdll.dll 导出它们并按它们的内存地址升序排序. 一个给定的本机API函数的系统调用号就是它在这个排序列表中的索引. 这与 Halo's Gate.

另一个改进是确保调用 syscall 指令是通过 ntdll.dll. EDR/AV可以监视这一点,并标记任何不来自的系统调用 ntdll.dll as suspicious. 这种技术直接取自 RecycledGate. Here, 复杂之处在于Meterpreter必须与从WinXP到最新版本的所有Windows版本兼容. 这个实现将负责解析 ntdll.dll and get the correct trampoline 执行系统调用时将使用的地址.

这项工作是第一步,我们预计今年会有更多的增加. 下一步是使用Direct sycall将Meterpreter及其扩展发出的额外Win32 API请求切换到相应的本机API. 长期目标是使直接系统调用成为任何未来基于windows的开发负载的标准, exploit, etc.).

New module content (8)

GL.通过logread模块执行未认证的远程命令.

作者:DZONERZY, Unknown和h00die-gr3y h00die.gr3y@gmail.com
Type: Exploit
Pull request: #18648 contributed by h00die-gr3y
Path: linux / http / glinet_unauth_rce_cve_2023_50445

描述:此PR为许多不同的GL添加了一个开发模块.iNet network products. 该模块结合了认证旁路漏洞(CVE-2023-50919)和RCE (CVE-2023-50445),允许用户远程获取, without authentication, 在根用户上下文中运行的Meterpreter会话.

Ivanti连接安全未经身份验证的远程代码执行

Author: sfewer-r7
Type: Exploit
Pull request: #18708 contributed by sfewer-r7
Path: linux / http / ivanti_connect_secure_rce_cve_2023_46805

描述:此PR添加了一个由两个漏洞组成的漏洞利用链, 身份验证绕过(CVE-2023-46805)和命令注入漏洞(CVE-2024-21887). 漏洞利用链允许远程未经身份验证的攻击者以root权限执行任意操作系统命令. 根据伊凡蒂的建议, 这些漏洞影响所有受支持的产品版本, versions 9.x and 22.x. 目前尚不清楚不支持的版本是否为8.X及以上的人也会受到影响.

MajorDoMo命令注入

作者:Valentin Lobstein和smcintyre-r7
Type: Exploit
Pull request: #18630 contributed by Chocapikk
Path: linux / http / majordomo_cmd_inject_cve_2023_50917

描述:这增加了对MajorDoMo版本中命令注入漏洞的利用,该版本在0662e5e之前.

盐城小兵有效载荷部署器

作者:c2Vlcgo和h00die
Type: Exploit
Pull request: #18626 contributed by h00die
Path: linux /地方/ saltstack_salt_minion_deployer

描述:此PR添加了一个漏洞利用模块,允许用户破坏作为SaltStack Master的主机,将有效载荷部署到附加到该Master的Minions上.

Apache Commons Text RCE

作者:Alvaro Muñoz, Gaurav Jain和Karthik UJ
Type: Exploit
Pull request: #18638 contributed by errorxyz
Path: 多/ http / apache_commons_text4shell

描述:增加了一个针对CVE-2022-42889的攻击模块,该模块针对使用Apache Commons Text的web应用程序.5-1.以不安全的方式使用StringSubstitutor插入器类.

Atlassian Confluence SSTI注射

作者:Harsh Jaiswal, Rahul Maini和Spencer McIntyre
Type: Exploit
Pull request: #18734 contributed by zeroSteiner
Path: 多/ http / atlassian_confluence_rce_cve_2023_22527

描述:这增加了一个针对CVE-2023-22527的漏洞,该漏洞是Atlassian Confluence中未经身份验证的RCE. 该漏洞是由于允许评估OGNL表达式的SSTI缺陷造成的. 结果是在服务帐户上下文中执行操作系统命令.

PRTG CVE-2023-32781认证RCE

Author: Kevin Joensen kevin@baldur.dk
Type: Exploit
Pull request: #18568 contributed by ggisz
Path: windows / http / prtg_authenticated_rce_cve_2023_32781

描述:此PR添加了一个利用CVE-2023-32781的模块, PRTG版本23中的一个身份验证命令注入漏洞.2.84.1566 and earlier. 结果是命令以SYSTEM的形式执行.

Memory Search

Author: sjanusz-r7
Type: Post
Pull request: #18713 contributed by sjanusz-r7
Path: 多/收集/ memory_search

Description: Adds a new 多/收集/ memory_search 模块,可以读取Windows和Linux主机上的进程内存. 正则表达式可用于查找密码/凭据, 全局模式和pid可用于识别目标流程.

增强功能和特性(6)

  • #17634 from adfoster-r7 部分模块增加了之前缺失的可靠性和稳定性说明.
  • #18645 from jvoisin -这增加了一种从旧的获得Build ID的方法.所以通过使用'perf'命令. 在此之前,该模块依赖于命令'file'和'readelf'被安装以获得Build ID.
  • #18663 from sjanusz-r7 -增加一个新的Postgres会话类型, 这是当前的功能标志后面,可以激活: 特性设置postgresql_session_type为true. Example usage: 使用扫描仪/ postgres / postgres_login followed by 运行postgres: / / postgres: password@127.0.0.1:900 /template1 createsession=true verbose=false.
  • #18720 from zeroSteiner 这个增强标志着现有的Unix编码器也可以与Linux兼容. Previously, 没有编码器模块被标记为与Linux兼容, 因此用户在使用新的获取有效负载时不能设置坏字符.
  • #18735 from AleksaZatezalo 添加额外的模块元数据到 利用/ windows / iis / iis_webdav_scstoragepathfromurl module.
  • #18737 from zeroSteiner - This updates metasploit-payloads gem to 2.0.在Windows上对Meterpreter进行直接系统调用. See this PR and this PR for details.

Bugs fixed (3)

  • #18662 from dwelch-r7 修复了一个边缘情况 设置dns_feature为true 没有正确解析用户的 /etc/resolv.conf 文件,如果存在多个名称服务器.
  • #18712 from ekalinichev-r7 修复了调用Metasploit的REST api时的崩溃 /api/v1/modules?name=aux.
  • #18746 from zeroSteiner 修复了一个使用 generate OPTION=VALUE syntax. 以前,模块的数据存储可能会被无意中更新为新的选项值.

Documentation added (1)

  • #18729 from poupapaa 修正了Metasploit-Guide-SMB中的一个错字.md.

你可以在我们的网站上找到更多的文档 docs.metasploit.com.

Get it

与往常一样,您可以使用 msfupdate
自上一篇博文以来,你可以从
GitHub:

If you are a git user, you can clone the Metasploit框架 (主分支)为最新.
要安装fresh而不使用git,您可以使用open-source-only Nightly Installers or the
commercial edition Metasploit Pro