Skip to main content

AdminSDHolder

当我们支配了整个域至森林实现了支配之后,如同前期章节提到的主机我们想要在域内维持高特权。我们可以通过多种技术实现域内访问持久化,我们也需要有些技术在之前内容已经涉及过了,例如高特权的主机 (例如配置非约束委派的) 实现本地持久化访问、对高特权的主体施加 ACL (例如 GenericAll) 等实现接下来,我们介绍一些尚未讨论过的持久化访问也是有多种方式,现在我们先来讨论 AdminSDHolder。技术。

AdminSDHolder 是一个具有一些默认安全权限的特殊 DACLAD 模板容器,用保护敏感主体不被更改的帐户和组 (。我们可以通过修改域管理员、企业管理员等)  DACL 来进行测试模板例如让一普通域用户完以防止它们被有意或无意的修改,并确保他们的安控制该分组 但在约 1 小时后,该实体会消失。受保护的对象列表如下:

Account Operators
Backup Operators
Server Operators
Print Operators
Domain Admins
Replicator
Enterprise Admins
Domain Controllers
Read-only Domain Controllers
Scheme Admins
Administrators

这样做的目的是确保高权限帐户具有更强的安全描述符,防止非特权帐户更改他们列表中权限。称为安全描述符传播器 (SDProp) 的进程每小时运行一次一些分以强制将 AdminSDHolder 安全描述符应用到所有受保护的可以在 DC 上本地访问,因此诞生出一些利用手法,及其成员。例如

,我们赋予一用户对

Account Operators:不可以直接修改 Domain Admins、Enterprise Admins 等域组,但是可以更改这些域组的内嵌分组,例如将较低权限的分组添加到Domain Admins

BackupFull Operators:备份Control GPO,编辑以将受控帐户SIDDACL,大概在 添加到特权组并还原

60

Server分钟后,该 Operators:以ACE SYSTEM 权限执行命令

Print Operators:拷贝 ntds.nit 备份,加载设备驱动


会消失。但是 AdminSDHolder 本身不保护,因此如果我们修改作用于它的 DACL,这些更改将被复制到后续对象。 因此,即使管理员在 DA 域管理员特权群组上看到了恶意 DACL 并将其删除,在 AdminSDHolder 的作用下,恶意 DACL 也会再次被还原以及重新应用。

对 AdminSDHolder 对象具备域管理员特权 (即完全控制或写权限),可以通过添加具有完全控制或者其他有趣的权限的用户,以实现后门或持久化访问。通过添加具有完全权限的用户。

image.png

通过 PowerView实现:

Add-DomainObjectAcl -TargetIdentity 'CN=AdminSDHolder,CN=System,dc=us,dc=techcorp,dc=local' -PrincipalIdentity
studentuser1 -Rights All -PrincipalDomain us.techcorp.local -TargetDomain us.techcorp.local -Verbose