Constrained Delegation
有限委派
使用此功能,域管理员可以允许计算机针对另一台计算机的服务模拟用户或计算机。
用户自身服务(S4U2self): 如果服务账户的_userAccountControl_值包含TRUSTED_TO_AUTH_FOR_DELEGATION(T2A4D),则它可以代表任何其他用户为自己(服务)获取TGS。
用户代理服务(S4U2proxy): 服务账户可以代表任何用户为msDS-AllowedToDelegateTo中设置的服务获取TGS。为此,它首先需要从该用户获取TGS到自身,但可以使用S4U2self在请求另一个TGS之前获取该TGS。
注意:如果用户在AD中标记为“帐户是敏感的,不能被委派”,则您将无法模拟他们。
这意味着如果您窃取了服务的哈希,您可以冒充用户并代表他们访问配置的服务(可能提权)。
此外,您不仅可以访问用户能够模拟的服务,还可以访问任何服务,因为不会检查SPN(请求的服务名称),只会检查权限。因此,如果您可以访问CIFS服务,则可以使用Rubeus中的/altservice标志访问HOST服务。
此外,在DC上访问LDAP服务是利用DCSync所需的。
# Powerview
Get-DomainUser -TrustedToAuth | select userprincipalname, name, msds-allowedtodelegateto
Get-DomainComputer -TrustedToAuth | select userprincipalname, name, msds-allowedtodelegateto
#ADSearch
ADSearch.exe --search "(&(objectCategory=computer)(msds-allowedtodelegateto=*))" --attributes cn,dnshostname,samaccountname,msds-allowedtodelegateto --json有其他方法可以获取TGT票据或RC4或AES256,而不必在计算机中成为SYSTEM,比如打印机漏洞、非约束委派、NTLM中继和Active Directory证书服务滥用。
只要拥有TGT票据(或散列),您就可以执行此攻击,而无需 compromis整个计算机。
最后更新于