针对由 Yuki Chen(@guhe120)报告的 CVE-2024-49112 的漏洞利用工具。这是 Windows 轻量目录访问协议(LDAP)中的一个漏洞。
由 SafeBreach Labs 创建(发布于 2025 年 1 月 1 日)。有关该漏洞的完整技术分析以及我们如何成功利用它的详细信息,请查看博客文章 此处
CVE-2024-49112 是 Windows LDAP 客户端中的一个严重漏洞,根据 Microsoft 的说法,该漏洞允许远程代码执行。此漏洞利用工具通过与该漏洞交互目标 Windows Server 系统的 Netlogon 远程协议(NRPC)和 LDAP 客户端,利用该漏洞使其崩溃。
https://github.com/user-attachments/assets/1cbda4a9-943a-4e07-a95a-b20e45863ec3
安装依赖项:
确保所有必需的 Python 包均已安装。您可以使用 pip 和提供的 requirements.txt 文件来安装它们:
pip install -r requirements.txt
配置漏洞利用工具:
target_ip:目标机器的 IP 地址。port:用于 RPC 通信的 TCP 端口(默认值:49664)。listen_port:漏洞利用服务器用于监听的 UDP 端口(默认值:389)。如果未更改,则需要以管理员或 root 权限运行该工具。domain_name:攻击者拥有的互联网上的域名。此域名下必须有两个 DNS SRV 记录。(SRV 记录将域名映射到端口和另一个域名):
domain_name -> listen_port 攻击者机器的主机名domain_name -> listen_port 攻击者机器的主机名攻击者机器的主机名 将起作用。除了攻击者的主机名,此值也可以替换为互联网上指向恶意 LDAP 服务器 IP 的域名,该服务器利用此漏洞。account:账户名称参数(默认值:Administrator)。site_name:站点名称参数(默认值:空字符串)。python LdapNightmare.py <target_ip> --domain-name <domain_name> [options]
示例:
python LdapNightmare.py 192.168.1.100 --domain-name example.com
启动漏洞利用服务器:
该脚本启动一个异步 LDAP 服务器,监听指定 UDP 端口上的传入连接。
调用 DsrGetDcNameEx2:
该脚本通过 Netlogon 远程协议调用 DsrGetDcNameEx2 函数,以触发受害服务器向攻击者发送 LDAP 查询。
触发漏洞:
通过发送特制的响应,该漏洞利用工具触发 CVE-2024-49112 漏洞,导致受害服务器崩溃。
| Or Yair | Shahak Morag | |
|---|---|---|
| Or Yair | Shahak Morag | |
| @oryair1999 | @shahakmo |