文章总结: 本文详细分析了NOPAC域内提权漏洞,该漏洞由CVE-2021-42278和CVE-2021-42287组合构成。CVE-2021-42278源于AD未对域内机器账户名进行验证,允许创建不以$结尾的机器账户。攻击者可利用CVE-2021-42287,通过创建与域控机器账户同名的账户、申请TGT、重命名账户、再利用S4U2Self协议请求TGS票据,最终利用KDC在TGS_REP阶段的行为获取域控权限。 综合评分: 85 文章分类: 漏洞分析,内网渗透,域安全
【域攻防】noPac域内提权
原创
平凡在修行 平凡在修行
平凡在修行
2026年5月16日 20:00 北京
在小说阅读器读本章
去阅读
「时光会把你雕刻成,你应有的样子」
「免责声明」
本公众号分享的所有文章仅用于信息防御技术研究,切勿用于其他用途。由于传播或利用此文所提供的信息、技术或方法而造成的任何直接或间接的后果及损失,均由使用者本人负责, 文章作者不为此承担任何责任。
「一、漏洞原理」
- CVE-2021-42278,机器账户的名字一般来说应该以
$结尾,但AD没有对域内机器账户名做验证。 - CVE-2021-42287,与上述漏洞配合使用,创建与DC机器账户名字相同的机器账户(不以$结尾),账户请求一个TGT后,更名账户,然后通过S4U2self申请TGS Ticket,接着DC在
TGS_REP阶段,这个账户不存在的时候,DC会使用自己的密钥加密TGS Ticket,提供一个属于该账户的PAC,然后我们就得到了一个高权限ST。 - 假如域内有一台域控名为 DC(域控对应的机器用户为
DC$),此时攻击者利用漏洞 CVE-2021-42287 创建一个机器用户SAMTHEADMIN-48$,再把机器用户SAMTHEADMIN-48$的 sAMAccountName 改成 DC。然后利用 DC 去申请一个TGT票据。再把 DC 的sAMAccountName 改为SAMTHEADMIN-48$。这个时候 KDC 就会判断域内没有 DC 这个用户,自动去搜索DC$(DC$是域内已经的域控DC 的 sAMAccountName),攻击者利用刚刚申请的 TGT 进行 S4U2self,模拟域内的域管去请求域控 DC 的 ST 票据,最终获得域控制器DC的权限。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:平凡在修行 平凡在修行 平凡在修行《【域攻防】noPac域内提权》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论