NeuVector CVE-2025-54469
CRITICALAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain control of enforcer container environment
-
DeliverySet CLUSTER_RPC_PORT/CLUSTER_LAN_PORT with injected shell payload
-
ExploitTrigger enforcer container stop
-
Executionmonitor process calls popen on tainted value
-
ImpactInjected command executes in container
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK
2 techniques across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the attacker to control the values of the CLUSTER_RPC_PORT or CLUSTER_LAN_PORT environment variables of the NeuVector enforcer container - i.e., the ability to define or modify the enforcer's container/pod environment (Kubernetes deployment or orchestration-level access). The injected command only runs when the enforcer container stops and the monitor process invokes popen() to check whether the consul subprocess ports are still active; it does not fire during normal steady-state operation. Limiting factors: this is not reachable over the network without first altering the container environment, it depends on the stop/teardown code path being triggered, and only unpatched versions (<5.3.5 in the 5.3.x line, <=5.4.6 in the 5.4.x line) are affected. Patched builds validate the variables as numeric ports and terminate on failure. |
| Impact | The input assigns CVSS 9.9 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H), but this score conflicts with the described mechanism and should be treated with caution. The vulnerability (CWE-78 command injection) is only reachable because the enforcer's monitor process passes the CLUSTER_RPC_PORT and CLUSTER_LAN_PORT environment variables into a popen() shell command without sanitization. Setting or tampering with those environment variables is not a network operation - it requires the ability to define the enforcer container's environment, which in practice means control over the Kubernetes pod/deployment spec or equivalent orchestration privilege. The AV:N/PR:L vector therefore appears overstated: realistic exploitation is local/configuration-bound and requires meaningful prior privilege, so the 9.9 'critical' rating likely overstates real-world risk (CVSS indicates network vector but the description implies control of the container environment - verify with vendor). No EPSS score, no CISA KEV listing, and no public POC were provided, so there is no evidence of active or opportunistic exploitation. Net assessment: a genuine command-injection defect worth patching, but functionally a privilege-dependent / defense-in-depth issue rather than a remotely-exploitable crisis; prioritize patching but below internet-facing unauthenticated RCEs. |
| Exploit ScenarioDerived | An attacker who can influence the enforcer container's environment (e.g., a tenant or compromised account able to modify the NeuVector enforcer pod spec/deployment) sets CLUSTER_RPC_PORT or CLUSTER_LAN_PORT to a value containing shell metacharacters and injected commands. When the enforcer container stops, the monitor process invokes popen() to check the consul subprocess ports, executing the attacker's injected command inside the container. No public exploit code was identified in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 18, 2026
NeuVector enforcer containers in the 5.3.x line before 5.3.5 and the 5.4.x line through 5.4.6 contain an OS command injection flaw in the monitor process teardown check, where unsanitized CLUSTER_RPC_PORT and CLUSTER_LAN_PORT environment variables are composed into a shell command executed via popen(). An attacker who can define or modify the enforcer pod's environment can inject commands that run when the container stops; this is not remotely reachable without orchestration-level access, and no public exploit code is identified at time of analysis. The input's 9.9 network-vector CVSS score conflicts with the assessed local high-privilege mechanism and should be treated with caution.
RemediationAI
Upgrade NeuVector to 5.4.7 or later, or to 5.3.5 for the 5.3.x line; the vendor states there is no workaround, so patching is the only full fix. If immediate upgrade is not possible, restrict who can create or modify enforcer pod specifications and environment variables through Kubernetes RBAC and admission policies, allowing only trusted operators to set CLUSTER_RPC_PORT and CLUSTER_LAN_PORT and requiring numeric values; also monitor enforcer container teardown for unexpected child processes or shell activity. These compensating controls reduce exposure but do not remove the injection path, and restrictive RBAC or admission policies can block legitimate deployment changes. See https://github.com/neuvector/neuvector/security/advisories/GHSA-c8g6-qrwh-m3vp and https://bugzilla.suse.com/show_bug.cgi?id=CVE-2025-54469.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in go
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
NeuVector is a container security platform whose enforcer runs as a container with a monitor entry process and a consul subprocess. On container stop, the monitor checks whether consul's ports are still active by invoking popen() with a shell command built from the environment variables CLUSTER_RPC_PORT and CLUSTER_LAN_PORT. Because those values are not validated (CWE-78), shell metacharacters in either variable can break out of the intended port-check command and execute arbitrary commands inside the enforcer container. The patched code validates that the values contain only valid port numbers and exits the monitor process on failure, terminating the container rather than running an injected command. Our independent assessment scores this CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H, because exploitation requires control of the enforcer's container or pod environment and only triggers on the stop/teardown path; this contrasts with the input's network-vector 9.9 score.
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Injection requires control of the enforcer container's environment variables, so AV:L and PR:H; command executes within the container with full code execution, so C/I/A:H and S:U.
Primary rating from Vendor (suse).
CVSS VectorVendor: suse
DescriptionCVE.org
A vulnerability was identified in NeuVector, where the enforcer used environment variables CLUSTER_RPC_PORT and CLUSTER_LAN_PORT to generate a command to be executed via popen, without first sanitising their values.
The entry process of the enforcer container is the monitor process. When the enforcer container stops, the monitor process checks whether the consul subprocess has exited. To perform this check, the monitor process uses the popen function to execute a shell command that determines whether the ports used by the consul subprocess are still active.
The values of environment variables CLUSTER_RPC_PORT and CLUSTER_LAN_PORT are used directly to compose shell commands via popen without validation or sanitization. This behavior could allow a malicious user to inject malicious commands through these variables within the enforcer container.
Executive ViewAI
NeuVector enforcer containers in the 5.3.x and 5.4.x lines are affected by a critical command-injection flaw that can undermine the container security enforcement layer if an actor with orchestration-level access alters pod configuration. Because enforcers provide visibility and policy enforcement across clusters, a compromise could reduce security assurance for workloads relying on NeuVector, so leadership should prioritize inventory and access-control review for affected deployments. No public exploit identified at time of analysis, and practical exposure is limited to environments where attackers already hold elevated cluster permissions.
No vendor-released patch identified at time of analysis; restrict orchestration-level access and pod-spec modification to trusted administrators, enforce RBAC and admission control, audit changes to CLUSTER_RPC_PORT and CLUSTER_LAN_PORT, and monitor the vendor advisory for a fixed release.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
NVD
CVE.org
EPSS
GitHub
Exploit-DB