前言
ADPulse 是一款开源、只读、轻量级的 AD 安全扫描器,35 项内置检查,三种报告格式,一条命令完成。
项目地址:
https://github.com/dievus/ADPulse

特点
• 纯粹只读 —— 不修改任何 AD 对象、组成员关系、GPO 或 ACL,安全无副作用 • 35 项安全检查 —— 覆盖从基础密码策略到高级 ACL 分析的完整攻击面 • 风险评分系统 —— 满分 100 分,每项发现根据严重程度扣分,直观反映整体安全态势 • 三种报告格式 —— 控制台彩色输出 + 机器可读 JSON + 自包含暗色主题 HTML 报告 • 极低权限要求 —— 大多数检查仅需普通域用户只读权限 • 支持 Pass-the-Hash —— 提供 NTLM Hash 即可认证,无需明文密码
快速上手

环境要求
• Python 3.8+ • 域控制器网络可达(端口 636/389/445) • 一个域用户账号(具备只读权限即可) • 如需运行 GPP/cpassword 检查(第 25 项),需能访问 SYSVOL 共享
安装
# 克隆仓库
git clone https://github.com/dievus/ADPulse.git
cd ADPulse
# 创建虚拟环境(推荐)
python -m venv venv
# 激活虚拟环境
# Linux / macOS:
source venv/bin/activate
# Windows:
venv\Scripts\activate
# 安装依赖
pip install -r requirements.txt基本使用
# 最简扫描 —— 明文密码
python ADPulse.py --domain corp.local --user jsmith --password 'P@ssw0rd!'
# 使用 Pass-the-Hash(无需明文密码)
python ADPulse.py --domain corp.local --user jsmith --hash 31d6cfe0d16ae931b73c59d7e0c089c0
# 指定域控制器 IP
python ADPulse.py --domain corp.local --user jsmith --password 'P@ssw0rd!' --dc-ip 10.0.0.1
# 仅生成 HTML 报告
python ADPulse.py --domain corp.local --user jsmith --password 'P@ssw0rd!' --report html
# 指定输出目录
python ADPulse.py --domain corp.local --user jsmith --password 'P@ssw0rd!' --output-dir /tmp/scans参数速查表
--domaincorp.local--user--password--hash--dc-ip--reportallconsole, json, html, all--output-dir--no-colorfalse
案例
案例一:新接手 AD 环境的快速体检
场景:某公司新入职的安全工程师需要快速了解公司 AD 环境的安全状况。
python ADPulse.py --domain company.local --user secadmin --password 'MyP@ss!' --report all
扫描结果:
• 发现严重问题 3 项:SYSVOL 中存在 GPP 加密密码、3 个用户配置了无约束委派、Domain Admins 组中存在 5 个过期未清理的账户 • 发现高危问题 6 项:密码策略最小长度仅 6 位、12 个 Kerberoastable 账户、域功能级别仍为 2008 R2 等
案例二:渗透测试中的信息收集
场景:某红队在进行授权渗透测试,需要对目标域环境进行快速信息收集。
python ADPulse.py --domain target.local --user pentest --hash 31d6cfe0d16ae931b73c59d7e0c089c0 --report json
扫描结果:
• 发现 8 个 Kerberoastable 账户,其中 3 个同时具有 adminCount=1(高价值目标) • 检测到 ESC1 漏洞:一个证书模板允许客户端提供 SubjectAltName 且注册权限过于宽松 • 发现 2 个用户账户启用了 "密码永不过期" 且密码超过 180 天未修改 • SID 历史注入检测未发现异常 —— 排除跨域提权路径
案例三:ADCS 证书服务专项排查
场景:某企业在安全通告中了解到 ADCS 漏洞(ESC1–ESC15)的严重性,需要专项评估内部 CA 的安全性。
python ADPulse.py --domain bank.local --user auditor --password 'AuditP@ss!' --report html --output-dir ./adcs-audit
扫描结果:
• ESC1:发现 2 个证书模板允许注册者自定义 SubjectAltName,且同时允许低权限用户注册 • ESC6:CA 服务器启用了 EDITF_ATTRIBUTESUBJECTALTNAME2 标志 • ESC8:CA 的 Web 注册端点 (/certsrv) 使用 HTTP 而非 HTTPS,存在 NTLM 中继风险 • ESC13:发现管理员额外配置的 OID 组链接可能被滥用于提权 • 证书模板清单显示 14 个模板中有 5 个使用了 RSA 1024 位密钥(弱密钥)
总结
ADPulse 是一款实用的 AD 安全审计工具,有 35 项检查、三种报告、一行命令,不需要复杂的配置,不引入写操作风险(但仍不建议用域控管账号使用)。
项目地址:https://github.com/dievus/ADPulse
本文链接:https://www.kinber.cn/post/6650.html 转载需授权!
推荐本站淘宝优惠价购买喜欢的宝贝:

支付宝微信扫一扫,打赏作者吧~
