实战|内网中vcenter集群攻击全程实录,学会你也行!
字数 1391 2025-08-22 12:23:41
内网中vCenter集群攻击全程实录
攻击概述
本文详细记录了针对内网环境中vCenter集群的完整攻击过程,涵盖从初始信息收集到最终获取集群控制权的各个关键步骤。
攻击流程
1. 信息收集阶段
-
网络拓扑探测
- 使用nmap进行内网扫描,识别vCenter服务器IP
- 确认vCenter版本信息:
nmap -sV -p 443 <vCenter_IP> - 检查开放端口,重点关注443(HTTPS)、5480(管理界面)、427(服务定位协议)
-
版本识别
- 通过HTTP响应头获取版本信息
- 访问
https://<vCenter_IP>/sdk/vimServiceVersions.xml获取详细版本
2. 漏洞利用
-
CVE-2021-21972漏洞利用
- 确认vCenter版本在6.5-7.0之间
- 构造恶意请求上传WebShell:
POST /ui/vropspluginui/rest/services/uploadova HTTP/1.1 Host: <vCenter_IP> Content-Type: multipart/form-data - 上传包含恶意代码的ova文件
-
WebShell部署
- 上传位置通常为
/usr/lib/vmware-vsphere-ui/server/work/deployer/s/global/<random>/0/h5ngclient.war/ - 通过访问
https://<vCenter_IP>/ui/h5ngclient/<malicious_file>验证WebShell
- 上传位置通常为
3. 权限提升
-
获取vCenter服务账户权限
- 通过WebShell执行命令获取服务账户信息
- 查找vCenter配置文件中的数据库凭证
-
访问vCenter数据库
- 连接PostgreSQL数据库:
psql -h 127.0.0.1 -U vc -d VCDB - 查询关键表获取管理员凭证哈希
- 连接PostgreSQL数据库:
4. 横向移动
-
SSH隧道建立
- 利用获取的凭证建立SSH连接
- 设置动态端口转发:
ssh -D 1080 <user>@<vCenter_IP>
-
ESXi主机枚举
- 通过vSphere API获取连接的ESXi主机列表
- 检查主机版本和补丁状态
5. 持久化控制
-
后门账户创建
- 在vCenter中创建隐藏管理员账户
- 修改现有账户权限
-
定时任务设置
- 通过cron或Windows计划任务维持访问
- 部署内存驻留型恶意软件
防御建议
-
及时更新
- 保持vCenter和ESXi主机最新补丁状态
-
网络隔离
- 将vCenter管理网络与其他业务网络隔离
- 限制管理接口的访问来源
-
监控措施
- 启用vCenter操作日志并集中收集
- 监控异常API调用和文件上传行为
-
权限管理
- 实施最小权限原则
- 定期审计账户权限
-
备份策略
- 定期备份vCenter配置和虚拟机
- 测试备份恢复流程
关键工具和技术
-
扫描工具
- nmap
- vCenter版本检测脚本
-
漏洞利用
- 公开的CVE-2021-21972利用脚本
- WebShell生成工具
-
凭证提取
- pg_dump
- hashcat
-
横向移动
- chisel
- proxychains
-
持久化
- PowerCLI脚本
- 隐蔽后门技术
攻击检测指标
-
网络层面
- 对/ui/vropspluginui/rest/services/uploadova的异常POST请求
- 非常规端口上的WebShell访问
-
主机层面
- /usr/lib/vmware-vsphere-ui/server/work目录下的异常文件
- 异常的数据库查询操作
-
日志层面
- 短时间内大量失败的登录尝试
- 管理员账户的异常权限变更