CVE-2026-126398: vLLM: reachable assertion in XD-RoPE crashes engine

MEDIUM
Published November 13, 2026
CISO Take

CVE-2026-126398 is a reachable assertion in vLLM's GPUModelRunner._init_xdrope_positions (CWE-617). An unauthenticated remote attacker can send a /v1/completions request containing only prompt_embeds to an XD-RoPE model and kill the EngineCore and API server for every client. Severity is medium (CVSS 5.9, high attack complexity) because the flaw only affects availability, and it needs the non-default --enable-prompt-embeds flag. There is no public exploit, no Nuclei template and no KEV listing, and EPSS data is not yet available. Even so, the crash takes down shared inference, so internet-exposed or multi-tenant deployments should treat it as a real outage risk. Upgrade to vLLM 0.30.0 or later, and until then disable --enable-prompt-embeds or put authentication in front of the endpoint.

Sources:NVDGitHub Advisoryvulncheck.comATLAS

What is the risk?

Overall risk is medium. The CVSS 3.1 vector is AV:N/AC:H/PR:N/UI:N with A:H and no confidentiality or integrity impact. A single malformed request can crash the whole engine, so exploit effort is low once the preconditions are met. Those preconditions are: version 0.28.0 up to (not including) 0.30.0, an XD-RoPE model, and --enable-prompt-embeds turned on. No exploitation in the wild, no public PoC, no scanner template and no KEV listing were reported at publication. EPSS and SSVC data are unavailable. Risk rises for internet-exposed, unauthenticated or multi-tenant endpoints, and for business-critical inference services without automatic restart.

How does the attack unfold?

Reconnaissance
Attacker identifies an exposed vLLM endpoint serving an XD-RoPE model with prompt embeddings enabled.
AML.T0006
Initial Access
Attacker reaches the unauthenticated OpenAI-compatible /v1/completions endpoint over the network.
AML.T0049
Exploitation
A request containing only prompt_embeds triggers the assertion in _init_xdrope_positions.
AML.T0040
Impact
The EngineCore and API server terminate, denying inference service to all clients.
AML.T0029

What systems are affected?

PackageEcosystemVulnerable RangePatched
vLLMpip—No patch
96.5K93 dependentsPushed 5d ago26% patched~37d to patchFull package profile →

Do you use vLLM? You're affected.

How severe is it?

CVSS 3.1
5.9 / 10
EPSS
N/A
Exploitation Status
No known exploitation
Sophistication
Trivial

What is the attack surface?

AVACPRUISCIA
AVNetwork
ACHigh
PRNone
UINone
SUnchanged
CNone
INone
AHigh

What should I do?

6 steps
  1. Upgrade vLLM to 0.30.0 or later (see GHSA-5q78-j82c-2vr2).

  2. If you cannot patch right away, remove --enable-prompt-embeds from the launch arguments.

  3. Do not expose the vLLM OpenAI-compatible API directly to untrusted networks. Put an authenticating gateway or reverse proxy in front of it and restrict access by network policy.

  4. Have the gateway reject /v1/completions requests that carry prompt_embeds without a prompt, if the feature is not needed.

  5. Add health checks and automatic restart with backoff, and alert on repeated EngineCore terminations or assertion errors in logs.

  6. Inventory vLLM instances, versions and flags to find which ones run XD-RoPE models with prompt embeds enabled.

How is it classified?

Which compliance frameworks are affected?

This CVE is relevant to:

EU AI Act
Art. 15-Accuracy, robustness and cybersecurity
ISO 42001
A.6.2.6-AI system operation and monitoring
NIST AI RMF
MANAGE 2.3-Procedures to respond to and recover from unknown risks
OWASP LLM Top 10
LLM10:2025-Unbounded Consumption

Frequently Asked Questions

What is CVE-2026-126398?

CVE-2026-126398 is a reachable assertion in vLLM's GPUModelRunner._init_xdrope_positions (CWE-617). An unauthenticated remote attacker can send a /v1/completions request containing only prompt_embeds to an XD-RoPE model and kill the EngineCore and API server for every client. Severity is medium (CVSS 5.9, high attack complexity) because the flaw only affects availability, and it needs the non-default --enable-prompt-embeds flag. There is no public exploit, no Nuclei template and no KEV listing, and EPSS data is not yet available. Even so, the crash takes down shared inference, so internet-exposed or multi-tenant deployments should treat it as a real outage risk. Upgrade to vLLM 0.30.0 or later, and until then disable --enable-prompt-embeds or put authentication in front of the endpoint.

Is CVE-2026-126398 actively exploited?

No confirmed active exploitation of CVE-2026-126398 has been reported, but organizations should still patch proactively.

How to fix CVE-2026-126398?

1. Upgrade vLLM to 0.30.0 or later (see GHSA-5q78-j82c-2vr2). 2. If you cannot patch right away, remove --enable-prompt-embeds from the launch arguments. 3. Do not expose the vLLM OpenAI-compatible API directly to untrusted networks. Put an authenticating gateway or reverse proxy in front of it and restrict access by network policy. 4. Have the gateway reject /v1/completions requests that carry prompt_embeds without a prompt, if the feature is not needed. 5. Add health checks and automatic restart with backoff, and alert on repeated EngineCore terminations or assertion errors in logs. 6. Inventory vLLM instances, versions and flags to find which ones run XD-RoPE models with prompt embeds enabled.

What systems are affected by CVE-2026-126398?

This vulnerability affects the following AI/ML architecture patterns: model serving, LLM inference servers, multi-tenant inference APIs, RAG pipelines, agent frameworks.

What is the CVSS score for CVE-2026-126398?

CVE-2026-126398 has a CVSS v3.1 base score of 5.9 (MEDIUM).

What is the AI security impact?

Affected AI Architectures

model servingLLM inference serversmulti-tenant inference APIsRAG pipelinesagent frameworks

MITRE ATLAS Techniques

AML.T0029Denial of AI Service
AML.T0040AI Model Inference API Access
AML.T0049Exploit Public-Facing Application

Compliance Controls Affected

EU AI Act: Art. 15
ISO 42001: A.6.2.6
NIST AI RMF: MANAGE 2.3
OWASP LLM Top 10: LLM10:2025

What are the technical details?

Original Advisory

vLLM from 0.28.0 before 0.30.0 contains a reachable assertion vulnerability in GPUModelRunner._init_xdrope_positions that allows remote attackers to crash the engine by submitting embeddings-only requests. Attackers can send a /v1/completions request containing only prompt_embeds to XD-RoPE models with --enable-prompt-embeds, terminating the EngineCore and API server for all clients.

Exploitation Scenario

An attacker finds an exposed vLLM server that serves an XD-RoPE model and has prompt embeddings enabled. They send a single POST to /v1/completions with only a prompt_embeds field and no text prompt. This triggers the assertion in GPUModelRunner._init_xdrope_positions, the EngineCore terminates, and the API server stops responding to all users. The attacker then repeats the request each time the service restarts, which keeps a production AI service offline at almost no cost.

Weaknesses (CWE)

CWE-617 — Reachable Assertion: The product contains an assert() or similar statement that can be triggered by an attacker, which leads to an application exit or other behavior that is more severe than necessary.

  • [Implementation] If the assertion statement is required (e.g., for security or reliability), change the invoking code to avoid the conditions that trigger the assertion.
  • [Implementation] Consider changing the assertion to some other less "fatal" error. This might not be easy to implement, since other code may be needed to handle the error.

Source: MITRE CWE corpus.

CVSS Vector

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

Timeline

Published
November 13, 2026
Last Modified
November 13, 2026
First Seen
November 13, 2026

Related Vulnerabilities