基于AD Event日志監測AdminSDHolder
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 對象時,都會生成此事件,包含帳戶名稱、目錄服務對象名稱、操作類型。

安全規則:
