一个使用 Impacket 库测试 Zerologon 漏洞(CVE‑2020‑1472)的 Python 脚本。
它尝试执行 Netlogon 身份验证绕过。脚本在成功执行绕过后会立即终止,并且不执行任何 Netlogon 操作。当域控制器已打补丁时,检测脚本会在发送 2000 对 RPC 调用后放弃,并得出结论:目标不存在漏洞(假阴性概率为 0.04%)。
需要 Python 3.7 或更高版本以及 Pip。按如下方式安装依赖项:
pip install -r requirements.txt
注意,运行 pip install impacket 也应该可以,只要未来的 Impacket 版本不破坏该脚本。
脚本目标可用于针对域控制器或备份域控制器。它也可能对只读域控制器有效,但尚未经过测试。假设有一个名为 EXAMPLE-DC 的域控制器,以及一个包含 IP 地址列表的文件 IPlist.txt,则按如下方式运行脚本:
./zerologon_tester.py EXAMPLE-DC IPlist.txt
域控制器名称应为其 NetBIOS 计算机名。如果该名称不正确,脚本很可能失败并出现 STATUS_INVALID_COMPUTER_NAME 错误。
关于此漏洞的白皮书将在以下链接发布:https://www.secura.com/blog/zero-logon,发布日期为 9 月 14 日星期一。