vRealize Operations Manager 漏洞调试环境搭建

发布于 2024-11-06 04:08:25 字数 5345 浏览 4 评论 0

0x00 前言

本文记录从零开始搭建 vRealize Operations Manager 漏洞调试环境的细节。

0x01 简介

本文将要介绍以下内容:

  • vRealize Operations Manager 安装
  • vRealize Operations Manager 漏洞调试环境配置
  • 常用知识

0x02 vRealize Operations Manager 安装

参考资料: https://docs.vmware.com/cn/vRealize-Operations/8.6/com.vmware.vcom.vapp.doc/GUID-69F7FAD8-3152-4376-9171-2208D6C9FA3A.html

1.下载 OVA 文件

下载页面:https://my.vmware.com/group/vmware/patch

下载前需要先注册用户,之后选择需要的版本进行下载

选择产品 vRealize Operations Manager,需要注意 pak 文件为升级包,这里选择 ova 文件进行下载,如下图

Alt text

经过筛选,只有版本 vROps-8.3.0-HF2 带有 ova 文件,其他都是 pak 文件

2.安装

(1) 在 VMware Workstation 中导入 OVA 文件

配置页面中选择 Remote Collecto(Standard) ,如下图

Alt text

等待 OVA 文件导入完成后,将会自动开机进行初始化,初始化完成后如下图

Alt text

(2) 配置

访问配置页面 https://192.168.1.103/

选择快速安装 EXPRESS INSTALLATION

设置 admin 口令

3.设置 root 用户口令

在虚拟机中选择 Login ,输入 root ,设置 root 用户初始口令

4.启用远程登录

以 root 身份执行命令:

service sshd start

5.开启远程调试功能

(1) 查看所有服务的状态

systemctl status

结果如下图

Alt text

定位到 web 相关的服务为 vmware-casa.service

(2) 查看 vmware-casa.service 的具体信息

systemctl status vmware-casa.service

结果如下图

Alt text

定位出加载的文件 /usr/lib/vmware-casa/bin/vmware-casa.sh ,查看文件内容并进一步分析后可定位出需要的配置文件 /usr/lib/vmware-casa/casa-webapp/bin/setenv.sh

(3) 添加调试参数

在变量 JVM_OPTS 中添加调试参数: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000

(4) 重启服务

service vmware-casa restart

(5) 查看调试参数是否更改:

ps -aux |grep vmware-casa

如下图

Alt text

(6) 打开防火墙

这里选择清空防火墙规则: iptables -F

(7) 使用 IDEA 设置远程调试参数

IDEA 的完整配置方法可参考之前的文章 《Zimbra 漏洞调试环境搭建》

0x03 常用知识

1.常用路径

web 目录: /usr/lib/vmware-casa/casa-webapp/webapps/

日志路径: /storage/log/vcops/log/cas

admin 用户的口令 hash: /storage/vcops/user/conf/adminuser.properties

数据库口令位置: /var/vmware/vpostgres/11/.pgpass

2.数据库连接

数据库口令内容示例:

localhost:5432:vcopsdb:vcops:J//mJcgppVIuGgzEuKIHGee9
localhost:5433:vcopsdb:vcops:keoMG4cmN+0jyD+7NAoED1HV
localhost:5433:replication:vcopsrepl:keoMG4cmN+0jyD+7NAoED1HV

连接数据库 1:

/opt/vmware/vpostgres/11/bin/psql -h localhost -p 5432 -d vcopsdb -U vcops
J//mJcgppVIuGgzEuKIHGee9

连接数据库 2:

/opt/vmware/vpostgres/11/bin/psql -h localhost -p 5433 -d vcopsdb -U vcops
keoMG4cmN+0jyD+7NAoED1HV

连接数据库 3:

/opt/vmware/vpostgres/11/bin/psql -h localhost -p 5433 -d replication -U vcopsrepl
keoMG4cmN+0jyD+7NAoED1HV

3.版本识别

识别方法:

通过 api 接口获得配置信息,在配置信息中导出详细的版本信息

访问 URL: https://<ip>/suite-api/docs/wadl.xml

回显的数据为 xml 格式,在 getCurrentVersionOfServer 中会包含版本信息,如下图

Alt text

Python 实现细节:

由于回显的数据为 xml 格式,存在转义字符,在解析时首先处理转义字符

示例代码:

def escape(_str):
    _str = _str.replace("&amp;", "&")
    _str = _str.replace("&lt;", "<")
    _str = _str.replace("&gt;", ">")
    _str = _str.replace("&quot;", "\"")
    return _str

使用 re 进行字符串匹配时,由于数据跨行,需要加上参数 re.MULTILINE|re.DOTALL

示例代码:

pattern_data = re.compile(r"getCurrentVersionOfServer(.*?)</ns2:doc>", re.MULTILINE|re.DOTALL)
versiondata = pattern_data.findall(escape(res.text))

完整代码已上传至 github,地址如下:https://github.com/3gstudent/Homework-of-Python/blob/master/vRealizeOperationsManager_GetVersion.py

0x04 小结

在我们搭建好 vRealize Operations Manager 漏洞调试环境后,接下来就可以着手对漏洞进行学习。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

旧瑾黎汐

暂无简介

0 文章
0 评论
23 人气
更多

推荐作者

ambitionlv

文章 0 评论 0

澉约

文章 0 评论 0

hukaixi

文章 0 评论 0

自演自醉

文章 0 评论 0

詹宝成

文章 0 评论 0

alipaysp_PLnULTzf66

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文