B0bTheSkull/adrecon-lite

GitHub: B0bTheSkull/adrecon-lite

轻量级 Active Directory 安全审计工具,专注检测 AS-REP Roasting、Kerberoastable、委派配置等高危账户,支持实时 LDAP 扫描与离线 JSON 分析。

Stars: 0 | Forks: 0

# ADRecon-Lite ![Python](https://img.shields.io/badge/python-3.10%2B-blue?style=flat-square&logo=python) ![License](https://img.shields.io/badge/license-MIT-green?style=flat-square) ![Status](https://img.shields.io/badge/status-alpha-orange?style=flat-square) ## 功能介绍 ADRecon-Lite 是一款专注且结果可审查的 AD 审计工具。它通过 LDAP 连接到域控制器,提取用户和计算机记录,并标记出攻击者在枚举期间真正关注的配置项: | 检测项 | 严重性 | 重要原因 | |---|---|---| | **AS-REP Roasting 候选账户** | 高 | 设置了 `DONT_REQ_PREAUTH` — 无需预身份验证即可请求 TGT 并进行离线破解 | | **可 Kerberoast 的用户** | 高 | 设置了 `servicePrincipalName` 的用户账户 — 可以请求服务票据 (Service Ticket) 并进行离线破解 | | **非约束委派** | 严重(在 DC 上为中) | 可以重用从任何向此主机进行身份验证的用户那里获取的 TGT | | **约束委派** | 中 | 账户可以模拟用户访问特定服务 | | **带协议转换的约束委派** | 高 | 相同,但绕过了要求用户首先进行身份验证的前提条件 | | **基于资源的约束委派 (RBCD)** | 高 | 已填充 `msDS-AllowedToActOnBehalfOfOtherIdentity` — 存在 RBCD 攻击向量 | | **不需要密码** | 严重 | 账户可以使用空密码进行身份验证 | | **密码永不过期** | 低 | 常见于旧版管理员账户 — 未发生凭据轮换 | 已禁用的账户会被自动过滤 — 已禁用账户上的失效配置不属于攻击面。 ## 安装说明 ``` git clone https://github.com/B0bTheSkull/adrecon-lite.git cd adrecon-lite pip install -e . ``` ## 使用方法 ### 实时 AD 扫描 ``` adrecon \ --server ldap://dc01.lab.local \ --user 'LAB\\analyst' \ --base-dn 'DC=lab,DC=local' # (系统将提示您输入密码;或传递 --password '...') ``` 使用 LDAPS: ``` adrecon --server ldaps://dc01.lab.local --ssl --user ... --base-dn ... ``` ### 离线模式(用于测试、演示或 CI) ``` adrecon --offline --records examples/sample_records.json ``` ### 用于 SOAR / 流水线摄取的 JSON 输出 ``` adrecon --offline --records examples/sample_records.json --json > audit.json ``` ### 退出代码 | 代码 | 含义 | |---|---| | `0` | 无严重或高危发现 | | `1` | 至少有一个严重或高危发现 | | `2` | 配置 / 连接错误 | ## 示例输出 ``` ADRecon-Lite Records inspected: 10 | Findings: 8 ──────────────────────────────────────────────────────────────────────── [CRITICAL] Password not required account: broken_kiosk dn: CN=broken_kiosk,OU=Kiosks,DC=lab,DC=local detail: PASSWD_NOTREQD set — account can authenticate with empty password ──────────────────────────────────────────────────────────────────────── [ HIGH] AS-REP roasting candidate account: legacy_app dn: CN=legacy_app,OU=Service Accounts,DC=lab,DC=local detail: DONT_REQ_PREAUTH set — TGT can be requested without pre-auth and offline cracked ──────────────────────────────────────────────────────────────────────── [ HIGH] Kerberoastable user account: svc_sql dn: CN=svc_sql,OU=Service Accounts,DC=lab,DC=local detail: User account has SPN(s) registered: MSSQLSvc/sql01.lab.local:1433 spns: ['MSSQLSvc/sql01.lab.local:1433'] ──────────────────────────────────────────────────────────────────────── [ HIGH] Constrained delegation with protocol transition account: iis_pool$ dn: CN=iis_pool,OU=Servers,DC=lab,DC=local detail: Allowed to delegate to: http/intranet.lab.local ──────────────────────────────────────────────────────────────────────── ... Summary: [CRITICAL] 1 [ HIGH] 4 [ MEDIUM] 2 [ LOW] 1 ``` ## 为什么开发这个工具 大多数企业 SOC 角色都会以某种形式接触 Windows / Active Directory。大型的 AD 侦察工具(如 BloodHound、ADRecon、PingCastle)非常出色,绝对值得深入了解——但它们非常庞大。我想要一个小型工具,能够完全理解其逻辑,在家庭实验环境中进行演示,并用作教学辅助,解释*为什么*这些 AD 配置是危险的。 离线模式是有意为之的:这意味着您可以审查该工具、运行测试套件并进行演示,而无需设置域控制器。将它与免费的 Windows Server 2019 评估版 VM(或 [GOAD 实验环境](https://github.com/Orange-Cyberdefense/GOAD))结合使用,即可体验实时场景。 ## 搭建测试环境 为了在真实的 AD 环境中进行练习,最简单的选项有: - **GOAD (Game Of Active Directory)** — 预构建的易受攻击 AD 实验环境:https://github.com/Orange-Cyberdefense/GOAD - **Windows Server 2019/2022 评估版** — 免费的 180 天试用版,安装 AD DS 角色,创建几个带有危险标志的测试用户 - **Detection Lab** — https://github.com/clong/DetectionLab ## 路线图 - [ ] 组枚举(Domain Admins、Enterprise Admins、Schema Admins、Account Operators) - [ ] 具有安全相关设置的 GPO 枚举(LSA 保护、SMB 签名、NTLM) - [ ] 密码策略检索(最小长度、复杂性、锁定阈值) - [ ] 通过 `lastLogonTimestamp` 检测闲置账户(N 天内无登录) - [ ] 域信任枚举 - [ ] 用于项目交付物的 HTML 报告输出 - [ ] 可供 BloodHound 摄取的输出 ## 许可证 MIT — 见 [许可证](LICENSE)
标签:Active Directory, AD审计, AS-REP Roasting, Checkov, Kerberoasting, LDAP, LNA, Plaso, Python, RBCD, Windows域环境, 凭证获取, 动态分析, 域渗透, 委派攻击, 安全合规, 安全基线扫描, 开源安全工具, 无后门, 电子数据取证, 网络代理, 网络安全, 逆向工具, 逆向工程平台, 隐私保护