RCE in VMware vCenter Server vSphere Client VSAN Health Check Plug-in
CVE-2021-21985 is a critical unauthenticated remote code execution vulnerability in VMware vCenter Server 6.5, 6.7, and 7.0, specifically in the vSphere Client (HTML5). The flaw is caused by insufficient input validation in the Virtual SAN (VSAN) Health Check plug-in, which is enabled by default in vCenter Server. An attacker with network access to the vCenter Server HTTPS service on port 443 can send crafted input to the vulnerable plug-in and achieve command execution on the underlying operating system hosting vCenter Server. VMware and downstream advisories describe the resulting execution context as having unrestricted privileges on the host OS.
Are you exposed to this one?
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
Impact, mitigation & remediation
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
Impact
What an attacker gets, and what they’ve been doing with it.
Mitigation
If you can’t patch tonight, do this now.
Remediation
Patch, then assume compromise.
Exploits
5 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos.
This repository provides a proof-of-concept (PoC) exploit for CVE-2021-21985, a remote code execution vulnerability in VMware vCenter Server's VSAN Health Check plugin. The repository contains two files: a README.md with usage instructions and vulnerability details, and a Bash script ('cve-2021-21985_PoC') that implements the exploit logic. The script sends a crafted POST request to the vulnerable vCenter endpoint over HTTPS, targeting the '/ui/h5-vsan/rest/proxy/service/com.vmware.vsan.client.services.capability.VsanCapabilityProvider/<Class/Method>' path. The script can list available methods or attempt to exploit a specific method. The exploit requires network access to the target's port 443 and is effective against unpatched vCenter Server and Cloud Foundation versions as specified. The code is a straightforward PoC and does not include advanced payload customization or post-exploitation features.
This repository contains a working exploit for CVE-2021-21985, a critical remote code execution vulnerability in VMware vCenter Server's vSphere UI. The main exploit script, 'cve-2021-21985.py', is a Python program that automates the exploitation process by sending a series of crafted POST requests to the vulnerable REST API endpoint '/ui/h5-vsan/rest/proxy/service/&vsanQueryUtil_setDataService' on the target vCenter Server. The exploit leverages a JNDI injection vulnerability to trigger a remote lookup via javax.naming.InitialContext.doLookup, causing the target to connect to an attacker-controlled RMI server (e.g., 'rmi://8.8.8.8:1099/Exploit'). This can result in arbitrary code execution, such as spawning a reverse shell. The repository also includes a README with detailed exploitation steps, references, and usage instructions. The only code file is the exploit script; the rest are IDE configuration files. The exploit is operational and requires the attacker to set up an RMI server and a listener for the reverse shell.
This repository provides a Proof-of-Concept (PoC) exploit and detection script for CVE-2021-21985, a critical remote code execution vulnerability in VMware vCenter Server (versions 6.5 to 7.0). The main code file, 'CVE-2021-21985.nse', is an Nmap Scripting Engine (NSE) script that checks if a target vCenter instance is vulnerable by sending a crafted POST request to the vSAN Health Check REST API endpoint and analyzing the response. The README.md details both the vulnerability and a manual exploitation chain, showing how an attacker can leverage a series of POST requests to specific REST endpoints to achieve remote code execution via JNDI (RMI) payloads. The repository also documents relevant log file paths for monitoring exploitation attempts. The exploit is network-based, targeting the HTTPS interface of vCenter, and does not require authentication if the vulnerable plug-in is enabled. The code is a PoC and does not include a weaponized payload, but the manual steps demonstrate how to achieve code execution. The repository is structured with a single code file (Lua/NSE), a README with detailed exploitation steps, and a license file.
This repository, 'VcenterKiller', is a comprehensive exploitation toolkit written in Go, targeting multiple critical vulnerabilities in VMware vCenter Server and Workspace ONE Access. It supports exploitation of CVE-2021-21972, CVE-2021-21985, CVE-2021-22005, CVE-2021-44228 (Log4Shell), CVE-2022-22954, CVE-2022-22972, and CVE-2022-31656. The tool provides modules for remote code execution, webshell upload, SSH key injection, authentication bypass, and Log4j JNDI injection (with built-in LDAP/RMI servers for payload delivery). The main entry point is 'main.go', which dispatches to specific modules under 'src/'. Each module implements the exploit logic for a specific CVE, with endpoints and payloads tailored to the vulnerability. The tool is operational and can be used for post-exploitation, red teaming, or authorized penetration testing of VMware environments. The codebase is modular, with clear separation of exploit logic per CVE, and includes support for proxies and various attack modes. The README provides detailed usage instructions and legal disclaimers.
This repository contains a working exploit for CVE-2021-21985, a critical remote code execution vulnerability in VMware vCenter Server's vSAN plugin. The repository includes two main Python proof-of-concept scripts (PoC_1.py and PoC_3.py), a C source file (JNI_Rce.c) and its header (JNI_Rce.h) for a JNI shared library payload, and a README with compilation instructions. - PoC_1.py crafts a multi-stage attack: it writes a malicious class file and a command (such as a reverse shell) to the target's /tmp directory via the vSAN plugin's REST API, then loads a JNI shared library to execute the command. The exploit abuses several endpoints under /ui/h5-vsan/rest/proxy/service/&vsanQueryUtil_setDataService/. - PoC_3.py provides an interactive shell-like interface, using a Spring beans XML payload zipped and base64-encoded, which is then loaded via the vSAN plugin to execute arbitrary commands. Output is exfiltrated by reading a system property set by the payload. - JNI_Rce.c is the C code for the JNI shared library, which reads a command from /tmp/.cfg1487.class and executes it via Java's Runtime.exec(). The exploit is operational and provides full remote code execution on unpatched vCenter Servers. The main attack vector is network-based, targeting the vSAN plugin's REST API endpoints. The repository is well-structured, with clear separation between payload, exploit logic, and documentation.
Affected products & vendors
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
Recent activity
7 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.
A remote code execution vulnerability in VMware vCenter Server referenced as another initial access vector to obtain the vsphere-ui user before local privilege escalation via CVE-2021-3156.
A critical remote code execution vulnerability in VMware vCenter Server's vSphere Client (HTML5), specifically in the Virtual SAN Health Check plug-in, enabled by default. Allows attackers with network access to port 443 to execute commands with unrestricted privileges on the underlying OS.
A critical remote code execution (RCE) vulnerability in VMware vCenter Server’s vSphere Client (HTML5), caused by missing input validation in the vSAN Health Check plugin (enabled by default), allowing an attacker with network access to port 443 to execute arbitrary code with unrestricted privileges on the underlying host OS.
A VMware vCenter vulnerability listed among 2021 CVEs known to be exploited.
The version that knows your environment.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.