CVE-2026-116176

Description

A flaw was found in vLLM. This vulnerability allows a remote attacker to trigger a Server-Side Request Forgery (SSRF) by submitting an HTTP request containing a crafted X-Request-Id header. Because the application extracts network addresses from this header without validation, backend workers can be forced to initiate outbound network connections to an attacker-controlled server. This flaw can lead to severe information disclosure by leaking sensitive model cache data and internal identifiers, or result in a Denial of Service (DoS) by stalling worker processes.

Statement

This vulnerability is rated as Important because remote API users can trigger unauthorized outbound network connections from inference workers, allowing exfiltration of internal cluster identifiers and sensitive key-value cache data, or causing worker denial of service. In Red Hat OpenShift AI and Red Hat Enterprise Linux AI, exploitation is contingent upon explicitly enabling the optional P2pNcclConnector within the KV-transfer configuration. Default deployments do not enable this disaggregated caching feature and are therefore not exposed to the vulnerable connection handler.

Mitigation

To mitigate this vulnerability, apply one or more of the following operational controls:

1. Disable disaggregated KV-transfer:
Ensure that vLLM model serving workloads do not configure `--kv-transfer-config` to use `P2pNcclConnector`. Standard model serving without this optional connector avoids invoking the vulnerable address parser. Note that changing container deployment arguments will require restarting the model serving pod, resulting in temporary service interruption.

2. Sanitize ingress request headers:
Configure the ingress controller, API gateway, or reverse proxy fronting the inference service to strip or overwrite incoming `X-Request-Id` HTTP headers with internally generated unique IDs before proxying traffic to the backend vLLM containers.

3. Restrict pod network egress:
Apply OpenShift NetworkPolicy resources or firewall egress rules to restrict outbound network connections from the model serving namespace or pods, permitting communication only to trusted internal endpoints and blocking arbitrary external connections.

Caveats: Disabling `P2pNcclConnector` disables disaggregated prefill and decode functionality. Overwriting request headers may affect distributed request tracing if upstream clients rely on custom tracking headers.

--- CME Mitigation Guidance (2026-11-02) ---
Disclaimer: The following mitigation solutions are provided as a courtesy, pending the application of an official patch. This content was generated utilizing AI tools in conjunction with data from https://cmetaxonomy.org. Customers are advised to independently evaluate and test these temporary mitigations within their own infrastructure.

The highest-value action is to disable P2pNcclConnector in KV-transfer configurations to eliminate unvalidated address parsing from the X-Request-Id header and prevent backend workers from initiating outbound ZMQ connections: upgrade to vLLM 0.24.0 (or the fixed Rhoai/Odh Vllm Cuda Rhel/Rhoai/Odh Vllm Rocm Rhel/Rhaii/Vllm Neuron Rhel/Rhaii/Vllm Tpu Rhel/Rhoai/Odh Vllm Gaudi Rhel/Rhaii Fast/Vllm Neuron Rhel/Rhoai/Odh Kserve Agent Rhel/Rhoai/Odh Kserve Controller Rhel/Rhoai/Odh Kserve Router Rhel/Rhoai/Odh Kserve Storage Initializer Rhel/Rhaii/Vllm Gaudi Rhel/Rhelai3/Bootc Gaudi Rhel/Rhelai3/Bootc Aws Cuda Rhel/Rhelai3/Bootc Azure Cuda Rhel/Rhelai3/Bootc Azure Rocm Rhel/Rhelai3/Bootc Cuda Rhel/Rhelai3/Bootc Gcp Cuda Rhel/Rhelai3/Bootc Rocm Rhel/Rhaii/Vllm Cpu Rhel/Rhaii/Vllm Cuda Rhel/Rhaii/Vllm Rocm Rhel/Rhaii/Vllm Spyre Rhel/Rhoai/Odh Llm D Kv Cache Rhel/Rhoai/Odh Th Torch Cuda Py312 Rhel/Rhaii Fast/Vllm Gaudi Rhel/Rhaii Fast/Vllm Omni Cuda Rhel/Rhaii Fast/Vllm Spyre Rhel/Rhaii Fast/Vllm Tpu Rhel/Rhaii Fast/Vllm Cpu Rhel/Rhaii Fast/Vllm Rocm Rhel/Rhaii Fast/Vllm Cuda Rhel builds), which remove the vulnerable P2pNcclConnector component, closing crafted X-Request-Id HTTP header containing an arbitrary decode network address. Until patched, this is only a concern on vLLM deployments exposing the HTTP API endpoint configured with disaggregated KV-transfer using P2pNcclConnector — Default vLLM deployments running standard model serving without P2pNcclConnector enabled are unaffected — so Do not configure --kv-transfer-config to use P2pNcclConnector, strip or overwrite incoming X-Request-Id HTTP headers at ingress gateways, and apply egress network policies to block outbound connections from inference pods. As a compensating measure, Enforce allowlist validation on incoming HTTP headers to reject crafted X-Request-Id values containing arbitrary network addresses and Deploy Falco eBPF runtime probes to detect anomalous outbound network connections initiated by vLLM worker processes to unexpected external endpoints. These controls limit blast radius and contain exploitation, but they do not fix the underlying server-side request forgery defect — apply the upstream patch to fully remediate.

Highest-impact CME: CME-1304 SSRF Prevention (Outbound Request Allowlist) (high)

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score8.2N/A8.2
Attack VectorNetworkN/ANetwork
Attack ComplexityLowN/ALow
Privileges RequiredNoneN/ANone
User InteractionNoneN/ANone
ScopeUnchangedN/AUnchanged
ConfidentialityHighN/AHigh
Integrity ImpactNoneN/ANone
Availability ImpactLowN/ALow

Vector

Red Hat: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L

cve.org: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:L

Understanding the Weakness (CWE)

Confidentiality

Technical Impact: Read Application Data

Integrity

Technical Impact: Execute Unauthorized Code or Commands

Access Control

Technical Impact: Bypass Protection Mechanism

By providing URLs to unexpected hosts or ports, attackers can make it appear that the server is sending the request, possibly bypassing access controls such as firewalls that prevent the attackers from accessing the URLs directly. The server can be used as a proxy to conduct port scanning of hosts in internal networks, use other URLs such as that can access documents on the system (using file://), or use other protocols such as gopher:// or tftp://, which may provide greater control over the contents of requests.

Frequently Asked Questions

Want to get errata notifications? Sign up here.