01、简介
每个用户都有一个关联的安全标识符(SID),SID History的作用是在域迁移过程中保持域用户的访问权限,即如果迁移后用户的SID改变了,系统会将其原来的SID添加到迁移后用户的SID History属性中,使迁移后的用户保持原有权限、能够访问其原来可以访问的资源。当攻击者获得了域管理员权限,就可以将SID History作为实现持久化的方法。
通过AD Event日志如何找到SID History的后门痕迹,我们通过一个后门利用实例来找找日志中留下的信息,从而制定安全监控规则,检测可疑的SID History后门行为。
02、利用方式
(1)使用域管理员权限查看test用户的SID History属性。
PS C:\Users\Administrator> Import-Module ActiveDirectory
PS C:\Users\Administrator> Get-ADUser test -Properties sidhistory
(2)使用域管理员权限运行mimikatz,将administrator的SID添加到普通用户test的SID History属性中。
//提升权限
mimikatz # privilege::debug
//修复NTDS服务
mimikatz # sid::patch
//将高权限SID注入到地权限用户的SID History属性
mimikatz # sid::add /sam:test /new:administrator
(3)重新查看test用户的SID History属性
(4)使用 test 用户登录域控服务器,可以看到已经拥有了管理员权限。
03、攻击检测
当攻击者将 SID Histtory属性添加到用户,用户对象发生更改产生4738事件,通过监视SidHistory属性的值,从而找到可疑的SID History后门行为。
4738事件:每次更改用户对象时,都会生成此事件,包含使用帐户和目标帐户以及Sid History属性的值。
安全检测规则: