漏洞复现 - VMware vCenter Server 任意文件上传漏洞 (CVE-2021-22005)
本文最后更新于 2025年7月14日 下午
📌 漏洞描述
CVE-2021-22005 是 VMware vCenter Server 中存在的一个关键任意文件上传漏洞,攻击者无需认证即可向 vCenter Server 上传任意文件并执行,从而在服务器上远程执行任意代码。
🎯 漏洞复现
EXP 工具地址:
👉 https://github.com/shmilylty/cve-2021-22005-exp
1 |
|
🕵️♂️ 后续渗透操作详解
成功利用 CVE-2021-22005 漏洞上传 WebShell 并拿到初始权限后,可以通过对 vCenter 的核心文件进行获取和解析,进一步提升权限或伪造合法身份,实现对集群的完全控制。
🔍 1️⃣ 找到 data.mdb
文件位置
data.mdb
是 vCenter 中保存身份验证信息(包括 SSO、LDAP 等)的核心数据库文件。拿到它,就相当于拿到了管理员的身份证明材料。
不同系统下该文件默认存放路径如下:
1 |
|
📌 Tip:可通过 WebShell 查找此文件是否存在,并尝试下载。
🗝️ 2️⃣ 伪造 Cookie
拿到 data.mdb
后,下一步是伪造 SAML 票据生成合法的登录 Cookie,以管理员身份接管整个 vCenter 环境。
✅ 方法一:直接下载 data.mdb
到本地解析
工具推荐:horizon3ai/vcenter_saml_login
操作示例:
1 |
|
该脚本会解析 data.mdb
并生成可用的 SAML Token,然后帮你直接获取合法 Cookie。
✅ 方法二:目标机器无法下载,可在目标机本地解析
如果目标机器的 data.mdb
文件体积过大、不方便下载,或者网络受限,可以直接在目标主机执行提取脚本。
推荐工具:
使用示例:
1 |
|
运行后,会从 data.mdb
中提取出:
idp_cert.txt
trusted_cert_1.txt
trusted_cert_2.txt
即 vCenter 的 SSO 身份验证证书。
📥 生成 Cookie
拿到证书后,将它们下载到本地,再使用下面的脚本生成可用的登录 Cookie:
脚本地址:vCenter_GenerateLoginCookie.py
1 |
|
示例:
1 |
|
执行后会在控制台输出一个伪造好的 SAML Cookie,粘贴到浏览器即可
🏰 3️⃣ 替换 Cookie 接管集群
把生成的 Cookie 替换到浏览器中已有的 vCenter 会话 Cookie(或通过 Burp Suite 等工具注入),刷新页面,即可绕过密码验证,以管理员身份登录 vCenter 后台,控制整个服务器集群。
⚠️ 风险提示
- 此漏洞是未授权远程任意文件上传,结合后渗透可实现完整接管,影响极大。
- 如果生产环境尚未修复,请立即隔离对外服务,并尽快升级或部署安全防护。