vRealize Operations Manager 漏洞调试环境搭建

发布于 2024-11-06 04:08:25 字数 5345 浏览 21 评论 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技术交流群

发布评论

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

关于作者

旧瑾黎汐

暂无简介

文章
评论
27 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

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