Skip to main content
Mallory
CriticalCISA KEVExploited in the wildPublic exploit

RCE in VMware vCenter Server vSphere Client VSAN Health Check Plug-in

IdentifiersCVE-2021-21985CWE-20· Improper Input Validation

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.

Share:
For your environment

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.

ANALYST BRIEF

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.

Successful exploitation allows unauthenticated remote code execution on the vCenter Server appliance or host operating system with unrestricted privileges. This can result in full compromise of the vCenter Server instance, including arbitrary command execution, deployment of additional malware or ransomware, persistence, credential and configuration theft, and use of the vCenter management plane to further compromise managed virtual infrastructure.

Mitigation

If you can’t patch tonight, do this now.

If immediate patching is not possible, apply the vendor workaround referenced in VMware KB 83829 to disable the affected VMware plug-ins, including the vulnerable VSAN Health Check functionality. Additionally, restrict network access to vCenter Server, especially HTTPS/443, to trusted administrative networks only until remediation is completed.

Remediation

Patch, then assume compromise.

Upgrade affected products to vendor-fixed releases. The provided advisory data identifies the fixed versions as VMware vCenter Server 7.0 U2b, 6.7 U3n, and 6.5 U3p; and VMware Cloud Foundation 4.2.1 and 3.10.2.1 where applicable. Follow VMware Security Advisory VMSA-2021-0010 and associated vendor guidance to ensure all affected vCenter components are updated.
PUBLIC EXPLOITS

Exploits

5 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 5 / 5 TOTALView more in app
CVE-2021-21985_PoCMaturityPoCVerified exploit

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.

sknuxDisclosed Nov 9, 2021bashnetwork
cve-2021-21985_expMaturityPoCVerified exploit

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.

xnianqDisclosed Jun 3, 2021pythonnetwork
CVE-2021-21985_PoCMaturityPoCVerified exploit

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.

alt3kxDisclosed May 29, 2021luanetwork
VcenterKillerMaturityPoCVerified exploit

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.

Schira4396Disclosed Oct 4, 2022gonetwork
Project_CVE-2021-21985_PoCMaturityPoCVerified exploit

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.

testanullDisclosed Jun 5, 2021cpythonnetwork
EXPOSURE SURFACE

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.

VendorProductType
BroadcomCloud Foundationapplication
BroadcomVcenter Serverapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

ACTIVITY FEED

Recent activity

7 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware1

Malware families riding this exploit, with evidence and IOCs.

Detection signatures2

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity

Community discussion across Reddit, Mastodon, and other social sources.

RCE in VMware vCenter Server vSphere Client VSAN Health Check Plug-in (CVE-2021-21985) | Mallory