Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach vLLM chat endpoint on multimodal model
-
DeliverySubmit large inline video/jpeg with media_io_kwargs.video.num_frames=-1
-
ExploitBypass frame-count cap into unlimited decode branch of VideoMediaIO.load_base64
-
ExecutionDecode and numpy.stack every frame into multi-GB array
-
ImpactExhaust API-frontend memory, OOM-kill/crash serving process
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource allocation 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 a vLLM deployment (0.18.0 through before 0.31.0) that serves a video-capable multimodal model and accepts inline video/jpeg media, and that honors per-request media_io_kwargs - runtime media_io_kwargs support first shipped in stable 0.18.0, which is why earlier versions are unaffected. The concrete trigger is a request setting media_io_kwargs.video.num_frames to -1 (or an arbitrarily large positive value) together with a large inline video/jpeg payload, which bypasses the positive-num_frames frame cap in VideoMediaIO.load_base64. Limiting factors: the target must actually be configured as a video/multimodal server (a text-only vLLM instance is not exposed), and in fixed versions (>= 0.31.0) the attack is blocked unless the operator explicitly re-enables client overrides with --trust-request-mm-kwargs. The CVSS vector lists PR:N (no authentication), so any client able to reach the endpoint qualifies; where the endpoint sits behind authentication or a gateway, that access control limits the realistic attacker set. |
| Impact | This is a genuine but bounded operational risk, best characterized as a reliability/availability threat rather than a system-compromise emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) describes a network-reachable, low-complexity issue requiring no authentication per the vector, and impact is confined to availability (VA:H) with no confidentiality or integrity impact (VC:N/VI:N) - consistent with a CWE-770 uncontrolled resource consumption / denial-of-service flaw. The vuln.today decision label is 'this_week', indicating prioritized but not emergency remediation. No CISA KEV listing and no EPSS score were provided in the input, so there is no signal of active or probable widespread exploitation; status is therefore 'no public exploit identified at time of analysis'. The only exploitation evidence is the vendor/VulnCheck advisory noting the issue was reproduced internally on vLLM 0.19.1 - this is a confirmed reproduction report, not published public exploit code. A key nuance: although the CVSS vector says PR:N, real-world exploitation requires that the target actually serve a video-capable multimodal model and accept per-request media_io_kwargs, which materially narrows the exposed population below what the unauthenticated network vector alone implies. Net: a legitimately high-severity availability bug for affected multimodal deployments, but not a critical-impact or mass-exploitation priority - patch on the vendor's 'this_week' cadence. |
| Exploit ScenarioDerived | An attacker (or careless client) with reach to a vLLM chat/completions endpoint backed by a video-capable multimodal model submits a large inline video/jpeg payload and sets media_io_kwargs.video.num_frames to -1, which selects the unlimited-frame branch of VideoMediaIO.load_base64. The server decodes and numpy.stacks every frame into a multi-gigabyte array before request validation rejects it, exhausting API-frontend memory/CPU and crashing or OOM-killing the serving process. No published exploit code is identified in the provided data; the flaw was reproduced by the reporter on vLLM 0.19.1 and the low attack complexity (AC:L) means crafting the malicious request is trivial. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 25, 2026
Memory exhaustion in vLLM 0.18.0 through 0.30.x lets a client crash or OOM-kill the serving frontend by setting media_io_kwargs.video.num_frames to -1 (or an arbitrarily large positive value) alongside a large inline video/jpeg payload, so the API decodes and stacks every frame. Only deployments serving a video-capable multimodal model and honoring per-request media_io_kwargs are exposed; text-only instances are not affected, and versions before 0.18.0 lack runtime media_io_kwargs support. The CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:N/VA:H) rates this a high-availability-impact, confidentiality- and integrity-neutral flaw, and no public exploit code has been identified at time of analysis, though the trigger is a simple documented parameter override.
RemediationAI
Upgrade to vLLM 0.31.0 or later, which ships PR #58830 and by default rejects non-empty per-request media_io_kwargs so clients can no longer override the server's video decoder frame settings per the advisory at https://github.com/vllm-project/vllm/security/advisories/GHSA-4m6g-h9mv-wqjc. If an interim upgrade is not possible, note that the trigger is a client-supplied decoder override on the chat endpoint, so compensating controls are: block untrusted access to video/multimodal chat endpoints (authentication or an API gateway in front of the frontend, which limits the realistic attacker set but does not remove the flaw for authenticated tenants), and cap request body size at the reverse proxy to reject large inline video/jpeg payloads, accepting the trade-off that legitimate large media requests will also fail. Running the frontend under a cgroup/container memory limit reduces blast radius by containing the OOM to the serving process, at the cost of a restart on exhaustion rather than prevention. Operators who deliberately enable --trust-request-mm-kwargs after upgrading re-expose themselves to this class of client-supplied resource exhaustion and should do so only for fully trusted clients; the VulnCheck advisory at https://www.vulncheck.com/advisories/vllm-0.18.0-before-0.31.0-memory-exhaustion-via-media-io-kwargs-num-frames-override provides an additional reference.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
vLLM's VideoMediaIO.load_base64 handles inline video/jpeg data: when num_frames is positive it caps the number of frames, when zero it rejects the request, and otherwise it splits the entire input and decodes every frame, combining them with numpy.stack. Because request-level media_io_kwargs.video values were forwarded to VideoMediaIO without restricting num_frames, a client could select the unlimited branch (-1) or an oversized positive value, forcing multi-gigabyte frame-array allocation in the API frontend before later request validation rejects the request. This maps to CWE-770 (Allocation of Resources Without Limits or Throttling), i.e. a missing/insufficient bound on a resource allocation rather than a memory-safety bug. The root cause is a configuration-pass-through design flaw introduced together with runtime media_io_kwargs support in stable 0.18.0; the upstream fix in PR #58830 changes the default so non-empty per-request media_io_kwargs are rejected, with operators able to re-enable client overrides via --trust-request-mm-kwargs. The CPE entry cpe:2.3:a:vllm-project:vllm:*:*:*:*:*:*:*:* is unversioned, so version scoping must come from the advisory ranges.
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Network-reachable chat endpoint, trivial crafted request (AC:L), no auth per vector (PR:N); impact is availability-only memory exhaustion (A:H) with no confidentiality or integrity effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
vLLM from 0.18.0 before 0.31.0 contains a resource exhaustion vulnerability that allows API clients to bypass the video/jpeg frame-count cap by overriding num_frames through media_io_kwargs. Attackers can set num_frames to -1 with a large inline video so VideoMediaIO.load_base64 decodes every frame, exhausting memory and crashing the API frontend.
Technical POC Analysis
CWE-770: Allocation of Resources Without Limits or Throttling.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
CVE-2026-116179 is a high-severity memory exhaustion vulnerability in vLLM versions 0.18.0 through 0.30.x that enables an unauthenticated remote client to crash the serving frontend by sending a crafted request to a video-capable multimodal model. This disrupts AI inference services and could cause costly downtime for teams relying on vLLM for production workloads; leadership should prioritize mitigation because no vendor patch is currently available and the attack vector is simple and publicly documented.
Restrict network access to vLLM endpoints to trusted users or internal networks; at the edge or proxy layer, reject requests where media_io_kwargs.video.num_frames is negative or exceeds a safe maximum, and enforce limits on inline media payload size; configure container memory limits and process supervision to automatically restart the serving frontend after a crash, reducing downtime; monitor for anomalous request patterns that set num_frames to extreme values and alert on repeated large video payloads. No vendor-released patch identified at time of analysis.
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-109440
GHSA-6vc9-vh4h-cxh4
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB