由 Yuki Chen (@guhe120) 报告的 CVE-2024-49113 漏洞利用程序。这是 Windows 轻量目录访问协议 (LDAP) 中的一个漏洞。
由 SafeBreach Labs 创建(发布于 2025 年 1 月 1 日)。有关该漏洞的完整技术分析以及我们如何成功利用它的详细信息,请查看博客文章 此处
CVE-2024-49113 是 Windows LDAP 客户端中的一个严重漏洞,据 Microsoft 称,该漏洞允许远程代码执行。此漏洞利用程序通过与目标的 Netlogon 远程协议 (NRPC) 和 LDAP 客户端进行交互,使目标 Windows Server 系统崩溃。
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 attacker's machine hostnamedomain_name -> listen_port attacker's machine hostnameattacker's machine hostname 在假定受害者服务器可以通过 NBNS 使用主机名找到攻击者机器的情况下有效。除了使用攻击者的主机名外,该值也可以替换为一个指向利用该漏洞的恶意 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-49113 漏洞,导致受害者服务器崩溃。
| Or Yair | Shahak Morag | |
|---|---|---|
| Or Yair | Shahak Morag | |
| @oryair1999 |
| @shahakmo |