Like needing the master key and the right maintenance panel just to trip the building alarm
CVE-2025-41241 is a denial-of-service flaw in VMware vCenter's guest OS customisation API path. Broadcom says a malicious actor must already be authenticated through vCenter and have permission to perform guest OS customisation API calls to trigger it. Affected ranges are vCenter 7.0 before 7.0 U3v and 8.0 before 8.0 U3g; Broadcom also maps related exposure into Cloud Foundation 4.5.x/5.x and certain Telco Cloud products through their bundled vCenter component.
Broadcom/Tenable calling this MEDIUM is technically fair, but for a 10,000-host enterprise I'd still downgrade it to LOW. The decisive friction is not the crash itself; it's the attacker position required to reach it: authenticated access plus a privileged, specialized API permission set inside vCenter. That's already post-initial-access and usually limited to VMware admins or tightly scoped automation accounts.
3 steps from start to impact.
Obtain a usable vCenter identity
govc, PowerCLI, or pyVmomi, because they make authenticated vSphere API access trivial once credentials exist.- Network reachability to vCenter
- Valid vCenter credentials
- Ability to pass any MFA or reuse an existing session/token
- This is not unauthenticated remote; it assumes prior compromise or insider access
- Many enterprises isolate vCenter behind VPN, jump hosts, PAM, or management VLANs
- SSO/MFA and separate admin accounts can break the chain early
Reach the guest customisation API path
govc, pyVmomi, or custom REST/SOAP requests.- Privileges to perform guest OS customisation API calls
- A vulnerable vCenter build
- Knowledge of the affected API workflow
- Broadcom scored this PR:H and AC:H for a reason
- Guest customisation rights are not universally granted to every vCenter user
- Many automation accounts are scoped to folders, templates, or a subset of clusters
Trigger vCenter service instability
- Successful hit on the vulnerable code path
- Sufficient access to invoke or repeat the triggering requests
- Blast radius is mostly the vCenter management plane
- Running workloads generally continue; this is disruptive but not the same as host compromise
- Operational resilience such as service watchdogs, HA design, and backups can shorten outage duration
vpxd/vmon restarts, appliance health alarms, sudden API task failures, and spikes in vCenter error logs. Nessus plugin 245963 will identify vulnerable versions but not active exploitation.The supporting signals.
| In-the-wild status | No public exploitation evidence found in the reviewed sources. CISA ADP enrichment for the CVE shows Exploitation: none, Automatable: no, Technical Impact: partial. |
|---|---|
| KEV status | Not present in the reviewed CISA Known Exploited Vulnerabilities catalog. |
| Proof-of-concept availability | No reputable public PoC located in reviewed GitHub/web results; no Metasploit module or commonly referenced exploit repo surfaced. |
| EPSS | Low. Vulners shows EPSS 0.00051 (~0.051% probability), and CIRCL/Vulnerability-Lookup mirrors a very low percentile context for this CVE. Treat it as unlikely to be opportunistically exploited. |
| CVSS vector reality check | CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H means network reachable in theory, but high attack complexity + high privileges required crush practical exploitability. Impact is availability-only. |
| Affected versions | vCenter 7.0 < 7.0 U3v and 8.0 < 8.0 U3g. Broadcom also lists Cloud Foundation 5.x / 4.5.x and certain Telco Cloud product lines because they ship affected vCenter components. |
| Fixed versions | Broadcom's response matrix fixes this in vCenter 7.0 U3v and 8.0 U3g. For Cloud Foundation, Broadcom points to async patching to those vCenter levels. |
| Exposure / scanning context | Public vCenter exposure is real: a prior Censys vCenter exposure study observed 3,541 internet-visible vCenter web admin hosts. But for *this* CVE, external reachability alone is not sufficient because the attacker still needs vCenter auth plus the right API rights. |
| Disclosure and credits | Published 2025-07-29. Broadcom credits Orange-CERT-CC, Clément Breuil, and Arnaud Magendie from Orange and Orange ops teams. |
| Detection coverage | Tenable maps this to plugin 245963 and detects by installed version. Expect strong asset/version coverage, but limited native attempt-level exploit detection unless you monitor vCenter API usage and appliance service health. |
noisgate verdict.
The single biggest downgrade factor is attacker position: exploitation requires an already-authenticated vCenter user with guest OS customisation API permissions, which is a narrow, post-compromise population. This is disruptive to the management plane, but it is not an internet-scale initial-access bug and it does not directly translate into ESXi or guest takeover.
Why this verdict
- Downward pressure: requires authenticated remote access — this is not a pre-auth edge bug; it assumes the attacker is already inside your management plane.
- Downward pressure: requires specific high privileges — Broadcom scored it
PR:H, and the vulnerable path is tied to guest OS customisation APIs that many users never touch. - Downward pressure: narrow real-world blast radius — the impact is vCenter availability, not code execution, not credential theft, and not direct host compromise.
- Slight upward pressure: vCenter is operationally central — even a DoS against the control plane can jam automation, provisioning, and admin recovery during an incident.
- Downward pressure: no public exploitation traction — no KEV listing, no public PoC of note, and very low EPSS all argue against emergency treatment.
Why not higher?
To score this MEDIUM or HIGH in a defender-focused queue, I'd need either pre-auth reachability, broadly granted permissions, or active exploitation evidence. We have none of those here. The exploit chain starts too far downstream in the kill chain to justify burning emergency patch bandwidth for most shops.
Why not lower?
I would not mark it IGNORE because vCenter is a crown-jewel management system and service disruption there has outsized operational impact. Also, some enterprises give powerful rights to CI/CD, backup, or provisioning accounts; if one of those is compromised, this nuisance becomes a very real outage lever.
What to do — in priority order.
- Strip guest customisation rights from non-admin accounts — Review vCenter roles, folders, and automation service accounts and remove guest OS customisation API permissions wherever they are not strictly needed. For a LOW verdict there is no mitigation SLA; treat this as backlog hygiene and complete it in the next normal IAM/VMware permission review cycle.
- Constrain vCenter to management-only paths — Keep vCenter reachable only from admin workstations, jump hosts, VPN, or management VLANs so credential theft elsewhere in the estate does not immediately convert into API access. For a LOW verdict there is no mitigation SLA; enforce this through your normal segmentation program rather than an emergency network change.
- Monitor guest customisation API usage — Alert on unusual guest customisation tasks, spikes in API calls from automation accounts, and
vpxd/vmoninstability so you can spot abuse before it becomes an outage. For a LOW verdict there is no mitigation SLA; add it during your next vCenter logging and detection tuning pass.
- Patching ESXi hosts only does not fix this; the vulnerable component is vCenter.
- A generic WAF in front of vCenter is not a reliable control here because the issue sits behind authenticated API workflows and role checks.
- Standard VM network segmentation does not stop a compromised privileged vCenter account from abusing the management API.
Crowdsourced verification payload.
Run this on the vCenter Server Appliance itself over SSH or the console as root or another account that can execute vpxd -v. Save it as check-cve-2025-41241.sh, then run bash check-cve-2025-41241.sh. It checks local vCenter version/build and prints VULNERABLE, PATCHED, or UNKNOWN.
#!/usr/bin/env bash
# check-cve-2025-41241.sh
# Verifies whether a VMware vCenter Server Appliance is below the fixed builds
# for CVE-2025-41241.
# Fixed thresholds:
# 7.0 U3v -> build 24730281
# 8.0 U3g -> build 24853646
# Exit codes:
# 0 = PATCHED / UNAFFECTED
# 1 = VULNERABLE
# 2 = UNKNOWN / could not determine
set -u
FIX_7_BUILD=24730281
FIX_8_BUILD=24853646
get_vpxd_output() {
if command -v vpxd >/dev/null 2>&1; then
vpxd -v 2>/dev/null
return 0
fi
return 1
}
OUT="$(get_vpxd_output)"
if [ -z "$OUT" ]; then
echo "UNKNOWN - unable to run 'vpxd -v' on this host"
exit 2
fi
# Typical output examples include a version and a build number.
VERSION="$(printf '%s\n' "$OUT" | grep -Eo '[0-9]+\.[0-9]+\.[0-9]+' | head -n1)"
BUILD="$(printf '%s\n' "$OUT" | grep -Eo 'build-?[0-9]+' | grep -Eo '[0-9]+' | head -n1)"
if [ -z "$VERSION" ] || [ -z "$BUILD" ]; then
echo "UNKNOWN - parsed output was insufficient: $OUT"
exit 2
fi
MAJOR="$(printf '%s' "$VERSION" | cut -d. -f1)"
MINOR="$(printf '%s' "$VERSION" | cut -d. -f2)"
PATCH="$(printf '%s' "$VERSION" | cut -d. -f3)"
# vCenter 9.x is explicitly unaffected per Broadcom response matrix.
if [ "$MAJOR" -ge 9 ] 2>/dev/null; then
echo "PATCHED - version $VERSION build $BUILD (9.x is listed as unaffected)"
exit 0
fi
# Affected supported lines in advisory: 7.0 and 8.0
if [ "$MAJOR" = "7" ] && [ "$MINOR" = "0" ]; then
if [ "$BUILD" -ge "$FIX_7_BUILD" ]; then
echo "PATCHED - version $VERSION build $BUILD (>= 7.0 U3v build $FIX_7_BUILD)"
exit 0
else
echo "VULNERABLE - version $VERSION build $BUILD (< 7.0 U3v build $FIX_7_BUILD)"
exit 1
fi
fi
if [ "$MAJOR" = "8" ] && [ "$MINOR" = "0" ]; then
if [ "$BUILD" -ge "$FIX_8_BUILD" ]; then
echo "PATCHED - version $VERSION build $BUILD (>= 8.0 U3g build $FIX_8_BUILD)"
exit 0
else
echo "VULNERABLE - version $VERSION build $BUILD (< 8.0 U3g build $FIX_8_BUILD)"
exit 1
fi
fi
echo "UNKNOWN - version $VERSION build $BUILD is outside the advisory's 7.0/8.0 scope"
exit 2
If you remember one thing.
Sources
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.