CVE-2026-57173: Unauthenticated Audio Decompression-Bomb Denial of Service in vLLM
Vulnerability ID: CVE-2026-57173
CVSS Score: 6.5
Published: 2026-09-16
CVE-2026-57173 (GHSA-hcwq-8wjf-3gcr) represents a critical resource allocation validation vulnerability in the vLLM inference engine. Prior to version 0.24.0, vLLM's multimodal chat completions pipeline failed to enforce maximum audio decode duration limits. Unauthenticated remote attackers can exploit this to perform an audio decompression bomb attack, causing massive memory allocations that trigger immediate system Out-Of-Memory (OOM) crashes and service termination.
TL;DR
vLLM versions prior to 0.24.0 are vulnerable to remote Denial of Service via an audio decompression bomb targeting the chat completions API, causing an immediate worker crash due to memory exhaustion.
⚠️ Exploit Status: POC
Technical Details
- CWE ID: CWE-770
- Attack Vector: Network
- CVSS v3.1 Score: 6.5
- EPSS Score: Not Recorded
- Impact: Endpoint Denial of Service (OOM Crash)
- Exploit Status: Proof of Concept (PoC)
- KEV Status: Not Listed
Affected Systems
- vLLM installations serving audio-capable multimodal models
-
vLLM: < 0.24.0 (Fixed in:
0.24.0)
Code Analysis
Commit: 3d20275
Fix audio max duration parameter parsing in multimodal chat completions
@@ -235,7 +236,11 @@ def load_bytes(self, data: bytes) -> tuple[npt.NDArray, float]:
- return load_audio(BytesIO(data), sr=None)
+ return load_audio(
+ BytesIO(data),
+ sr=None,
+ max_duration_s=envs.VLLM_MAX_AUDIO_DECODE_DURATION_S,
+ )
@@ -245,7 +250,11 @@ def load_file(self, filepath: Path) -> tuple[npt.NDArray, float]:
- return load_audio(filepath, sr=None)
+ return load_audio(
+ filepath,
+ sr=None,
+ max_duration_s=envs.VLLM_MAX_AUDIO_DECODE_DURATION_S,
+ )
Exploit Details
- GitHub Security Advisory: The technical writeup and PoC behavior details are documented in the advisory.
Mitigation Strategies
- Upgrade vLLM to version 0.24.0 or higher.
- Limit the maximum request size on proxy or ingress layers to block large inline payload delivery.
- Configure the VLLM_MAX_AUDIO_DECODE_DURATION_S environment variable to a minimal acceptable value.
- Deploy API-level authentication to prevent external unauthenticated access to serving endpoints.
Remediation Steps:
- Step 1: Terminate current vulnerable instances of vLLM.
- Step 2: Update the application environment to vLLM >= 0.24.0.
- Step 3: Define VLLM_MAX_AUDIO_DECODE_DURATION_S=300 in the runner's execution environment.
- Step 4: Restart the vLLM serving container and verify that API requests are processed within safety limits.
References
Read the full report for CVE-2026-57173 on our website for more details including interactive diagrams and full exploit analysis.
Top comments (0)