基于AD Event日志监测AdminSDHolder

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

01、简介

AdminSDHolder是一个特殊的AD容器通常作为某些特权组成员的对象的安全模板。Active Directory将采用AdminSDHolder对象的ACL并定期将其应用于所有受保护的AD账户和组以防止意外和无意的修改并确保对这些对象的访问是安全的。如果攻击者能完全控制AdminSDHolder那么它就能同时控制域内的许多组这可以作为域内权限维持的方法。

 基于AD Event日志监测AdminSDHolder对象ACL的修改行为从而发现可疑的AdminSDHolder对象行为。

02、利用方式

(1)AdminSDHolder对象添加ACL

使用PowerView下载地址如下

https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1

添加用户bypass对AdminSDHolder的完全访问权限命令如下

Add-ObjectAcl -TargetADSprefix 'CN=AdminSDHolder,CN=System' -PrincipalSamAccountName bypass -Verbose -Rights All

(2)执行SDProp

默认情况下SDProp进程每60分钟在域控制器上运行一次SDProp将域的AdminSDHolder对象的权限与域中受保护的帐户和组的权限进行比较如果任何受保护帐户和组的权限与AdminSDHolder对象的权限不匹配则将受保护帐户和组的权限重置为与域的AdminSDHolder对象的权限匹配。

配置完成后ACL 中的更改将在 60 分钟后自动传播可通过更改注册表的方式设置SDProp 的时间间隔该值的范围是从60到7200单位为秒键类型为DWORD可以直接使用命令行更改

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

 (3)登录bypass用户可疑看到bypass非域管用户却可以将自己添加到“域管理员”组。

03、攻击检测

攻击手法的核心点在于需要修改AdminSDHolder的ACL因此我们只需要检测对AdminSDHolder的ACL的修改行为即可可以通过5136日志来监控。

5136事件每次修改 Active Directory 对象时都会生成此事件包含帐户名称、目录服务对象名称、操作类型。

安全规则

index=ad  EventCode=5136 DN="CN=AdminSDHolder,CN=System,DC=evil,DC=com"
| rename 类型 as  type | eval  type=mvindex(type,1)
|  stats count earliest(_time) AS start_time latest(_time) AS end_time  by  dest user type | eval start_time=strftime(start_time,"%Y-%m-%d %H:%M:%S")| eval end_time=strftime(end_time,"%Y-%m-%d %H:%M:%S")
| eval message="在"+start_time+"到"+end_time+"时间内域控服务器"+dest +" 疑似修改AdminSDHolder对象的行为,操作类型:"+type+",操作账号: "+user+",操作次数"+count+"次"
| table  start_time end_time user message type count

效果如下

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6