Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend unauthenticated POST to /v1/completions
-
DeliverySupply crafted catastrophic regex in structured_outputs.regex
-
ExploitBackend passes pattern to RegexParser without timeout
-
ExecutionCatastrophic backtracking consumes CPU core
-
PersistStructured-output engine path stalls
-
ImpactInference availability degraded for all shared backend users
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the target vLLM deployment uses the lm-format-enforcer backend for structured outputs (not the default xgrammar backend), and that the /v1/completions endpoint accepts requests with a structured_outputs.regex parameter from the attacker's network location. The CVSS vector (PR:N) confirms no authentication is required. The primary limiting factor is the backend requirement: operators running vLLM with the default xgrammar structured output backend, or those who have not enabled the lm-format-enforcer backend, are not affected by this code path. Additionally, operators who restrict /v1/completions to authenticated or trusted callers via an API gateway reduce exploitation feasibility even on unpatched versions. |
| Impact | The CVSS 3.1 vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L scores 5.3 (Medium), and the metrics are accurate: the endpoint is network-reachable with no authentication and no prerequisite complexity, while the actual impact is bounded to low availability - one CPU core consumed, one engine path stalled, rather than a full service crash. EPSS data was not supplied; given the absence of KEV listing and public exploit code, opportunistic mass exploitation is unlikely at time of analysis, though any developer or security researcher familiar with ReDoS can reproduce the condition trivially. The realistic threat model is targeted disruption of inference availability in AI serving infrastructure - particularly relevant to organizations that expose vLLM API endpoints to semi-trusted or external consumers, such as multi-tenant LLM platforms or internal developer portals without rate limiting. The low availability impact rating may understate operational consequence in latency-sensitive inference deployments where stalling the structured-output path degrades the entire request queue sharing that backend, though scope remains unchanged (S:U) and the impact does not escape the vLLM process boundary. |
| Exploit ScenarioDerived | An attacker sends an unauthenticated HTTP POST to /v1/completions on a publicly reachable vLLM instance, setting structured_outputs.regex to a catastrophically backtracking pattern such as (a+)+ applied to a non-matching input string. The lm-format-enforcer backend passes this pattern directly to RegexParser without a timeout, triggering exponential NFA evaluation that pins one CPU core and causes the structured-output engine thread to stall, degrading or blocking all subsequent structured-output inference requests until the process is restarted. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 13, 2026
Uncontrolled resource consumption in vLLM's lm-format-enforcer structured output backend (all versions prior to 0.26.0) enables unauthenticated remote denial of service via the /v1/completions API endpoint. By submitting a crafted catastrophically backtracking regular expression to the structured_outputs.regex parameter, a remote attacker can saturate an entire CPU core and stall the structured-output engine path indefinitely - blocking inference requests that rely on the lm-format-enforcer backend for all concurrent users. No public exploit code has been identified and the vulnerability is not listed in CISA KEV, though the attack primitive (ReDoS against an exposed API) is well-understood and trivially constructible by any attacker familiar with catastrophic regex patterns.
RemediationAI
Upgrade vLLM to version 0.26.0 or later, which introduces compile_regex_with_timeout wrapping around lmformatenforcer.RegexParser at both compilation and validation stages, rejecting pathological patterns before they can stall the engine. The patched release is available at https://github.com/vllm-project/vllm/releases/tag/v0.26.0 and the underlying fix is tracked at https://github.com/vllm-project/vllm/pull/47595 and commit c9a788eedc412acceaa5112e0d44624b49841577. For operators unable to upgrade immediately, a practical compensating control is to place an API gateway or reverse proxy in front of the /v1/completions endpoint that validates or restricts the structured_outputs.regex parameter - for example, enforcing a maximum regex length (e.g., 256 characters) or disallowing patterns with deeply nested quantifiers, though this requires careful tuning to avoid breaking legitimate use. Restricting network access to the vLLM API to trusted internal consumers reduces exposure to unauthenticated callers. Note that disabling structured outputs entirely via backend configuration would eliminate the attack surface but also removes the feature for all users.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
vLLM (cpe:2.3:a:vllm-project:vllm:*:*:*:*:*:*:*:*) is a high-throughput LLM inference and serving engine that supports structured outputs via pluggable backends. The lm-format-enforcer backend processes user-supplied regular expressions through lmformatenforcer.RegexParser in vllm/v1/structured_output/backend_lm_format_enforcer.py. Prior to the fix, this parser was invoked with the raw user-supplied regex string without wrapping it in a compile_regex_with_timeout guard, and without pre-validating the pattern in validate_structured_output_request_lm_format_enforcer. CWE-400 (Uncontrolled Resource Consumption) precisely describes the root cause: the regex compilation phase has no CPU time bound, so a pathological pattern - one engineered to trigger catastrophic backtracking - causes the NFA/DFA construction to run indefinitely on one core. The PR diff confirms the fix: the compile_regex_with_timeout utility is now imported and wraps RegexParser both at compilation time and at request-validation time, so malformed patterns are rejected before they can block the engine.
Know when Vllm gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Network-accessible unauthenticated endpoint; no complexity or privileges needed; impact limited to partial availability stall of one engine path.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
vLLM is an inference and serving engine for large language models. Prior to 0.26.0, the structured_outputs.regex parameter in vllm/v1/structured_output/backend_lm_format_enforcer.py is passed to lmformatenforcer.RegexParser without compile_regex_with_timeout or validation in validate_structured_output_request_lm_format_enforcer, allowing an unauthenticated /v1/completions request against the lm-format-enforcer backend to consume a CPU core and stall the structured-output engine path with a catastrophic regular expression. This issue is fixed in version 0.26.0.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
vLLM is a high-throughput and memory-efficient inference and serving engine for LLMs. Rated critical severity (CVSS 10.0
vllm-project vllm version v0.6.2 contains a vulnerability in the MessageQueue.dequeue() API function. Rated critical sev
Information exposure in vLLM inference engine versions 0.8.3 to before 0.14.1. Invalid image requests to the multimodal
Timing-based API key recovery in vLLM before 0.11.0rc2 can let remote attackers bypass bearer-token authentication on de
vLLM is a high-throughput and memory-efficient inference and serving engine for LLMs. Rated high severity (CVSS 7.5), th
Denial of service in the vLLM LLM inference server (all versions prior to 0.24.0) allows a remote client to crash the sh
vLLM before version 0.14.1 contains a server-side request forgery vulnerability in the MediaConnector class where incons
Out-of-memory worker crashes in vLLM can be induced by a single small compressed audio payload submitted to the /v1/chat
vLLM is a high-throughput and memory-efficient inference and serving engine for LLMs. Rated medium severity (CVSS 6.5),
GPU memory exhaustion in vLLM versions prior to 0.28.0 lets an attacker with low-privileged API access (PR:L in the CVSS
Multimodal inference requests to vLLM deployments running versions prior to 0.28.0 can trigger a process-level assertion
Uncontrolled resource consumption in vLLM's OpenAI-compatible completions endpoint allows any authenticated API client t
EUVD-2026-58063
GHSA-48jh-3gj7-fg8v
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB