HW攻防 | 从小程序到内网vcenter接管
字数 2103 2025-09-01 11:26:17
从外网渗透到内网vCenter接管:完整攻击链分析
一、攻击概述
本案例展示了一个完整的攻击链,从外网小程序渗透开始,通过横向移动最终接管内网vCenter虚拟化平台。攻击者利用了多个漏洞和技术手段,包括SQL注入、Shiro反序列化、WebShell上传、凭证窃取、内网扫描和vCenter漏洞利用等。
二、攻击流程详解
1. 外网突破阶段
1.1 小程序SQL注入发现
- 在小程序查询接口发现MySQL注入漏洞
- 利用价值有限,仅作为初步信息收集
1.2 Shiro反序列化漏洞利用
- 在同一接口发现Shiro框架
- 使用自动化工具成功利用反序列化漏洞获取Web服务器权限
- 尝试写入内存马被EDR拦截
1.3 WebShell写入技术
- 尝试多种WebShell写入方法失败
- 发现404.jsp文件被全局include
- 覆盖404.jsp文件写入WebShell
- 使用PowerShell下载免杀WebShell绕过检测
关键点:
- 前后端分离架构导致传统WebShell写入困难
- 利用全局包含文件(404.jsp)作为持久化点
- EDR环境下需要免杀技术
2. 内网横向移动
2.1 ToDesk凭证窃取
- 发现目标服务器运行ToDesk远程控制软件
- 使用procdump工具抓取内存
- 由于EDR限制,通过Web静态目录下载内存dump文件
- 本地分析内存文件,搜索凭证字符串
2.2 内网扫描与信息收集
- 部署FRP代理建立内网通道
- 使用免杀版fscan进行低速扫描
- 发现多个漏洞:
- Nacos默认凭证
- Druid未授权访问
- Spring Env信息泄露
- 数据库弱口令
2.3 数据库服务器控制
- 通过泄露凭证连接数据库服务器
- 选择双网卡主机作为跳板
- 部署Cobalt Strike进行权限维持
- 发现三个额外内网网段(1.1.1.1/2/3)
3. vCenter接管
3.1 vCenter发现
- 通过内网扫描识别vCenter服务器
- 确认无域环境,vCenter为集权控制中心
3.2 漏洞利用尝试
- 尝试多个公开vCenter漏洞利用工具失败
- 使用Goby扫描器针对内网环境精准探测
- 成功利用CVE-2021-22005上传WebShell
3.3 vCenter权限提升
- 获取root权限的Linux shell
- 尝试dump vCenter数据库解密凭证失败
- 通过SSH添加用户直接访问服务器
- 提取data.mdb数据库文件生成管理cookie
关键步骤:
- 使用脚本从data.mdb生成三个txt文件
- 通过本地代理发送HTTP请求生成有效cookie
- 添加cookie后直接访问/ui路径(不刷新页面)
三、技术细节分析
1. Shiro反序列化利用
- 使用ysoserial等工具生成payload
- 利用已知AES加密密钥或爆破获取密钥
- 构造rememberMe cookie实现RCE
2. 内存马防御绕过
- EDR检测常见内存马注入技术
- 替代方案:静态文件覆盖+免杀WebShell
- 使用PowerShell下载技术绕过静态检测
3. ToDesk凭证提取
- 内存中搜索特征字符串(连接日期等)
- 分析内存结构获取完整凭证
- 注意ToDesk版本差异导致的凭证存储位置变化
4. vCenter漏洞利用(CVE-2021-22005)
- 漏洞本质:未授权文件上传
- 利用步骤:
- 构造恶意tar文件包含WebShell
- 通过API接口上传并触发解压
- 访问上传的WebShell获取执行权限
5. vCenter认证绕过
- 传统方法:解密vpxuser密码
- 替代方案:通过data.mdb生成有效cookie
- 提取vCenter SSO域信息(vsphere.local)
- 生成有效的administrator@vsphere.local会话
- 直接操作UI接口实现完全控制
四、防御建议
1. 外网防护
- 定期更新框架(如Shiro)补丁
- 实施WAF防护SQL注入等常见攻击
- 禁用不必要的错误页面包含
2. 内网防护
- 限制远程管理软件使用或加强审计
- 定期更换内网系统默认凭证
- 实施网络分段,限制横向移动
3. vCenter防护
- 及时安装vCenter安全更新
- 限制管理接口访问来源
- 监控异常API调用和文件上传行为
- 实施多因素认证增强管理控制台安全
五、参考工具
-
漏洞利用工具:
- Shiro反序列化利用工具
- vCenter漏洞利用脚本(CVE-2021-22005)
-
内网扫描:
- fscan (免杀版)
- Goby (内网精准扫描)
-
凭证提取:
- procdump (内存抓取)
- mimikatz (凭证提取)
-
持久化工具:
- Cobalt Strike
- FRP (内网代理)
六、总结
本案例展示了从外网到内网核心系统的完整攻击链,强调了以下几个关键安全教训:
- 外网暴露面的任何小漏洞都可能成为入侵起点
- 内网凭证重用和默认配置会放大攻击影响
- 集权系统(vCenter)一旦沦陷将导致整个内网失守
- 防御需要分层部署,单一防护措施易被绕过
通过分析此类攻击链,安全团队可以更好地理解攻击者思维,从而构建更有效的防御体系。