
Cloud Vulnerability DB
Eine von der Community geführte Datenbank für Schwachstellen
CVE-2026-105758 is a denial-of-service vulnerability in vLLM, an inference and serving engine for large language models, caused by missing server-side resource limits on video sampling parameters in the Qwen2-VL and Qwen3-VL backends. Affecting vLLM versions >= 0.24.0 and < 0.30.0, the flaw allows unauthenticated remote attackers to exhaust API server memory by submitting arbitrarily large media_io_kwargs.video.max_frames and fps values to the /tokenize endpoint. The vulnerability was reported by Eva Crystal / 0xiviel (XSource Security), privately disclosed on September 23, 2026, and published to the GitHub Advisory Database on October 5, 2026. It carries a CVSS v3.1 base score of 5.3 (Medium) (Github Advisory, Feedly).
The root cause is CWE-770 (Allocation of Resources Without Limits or Throttling): the Qwen2VLVideoBackend and Qwen3VLVideoBackend classes in vllm/multimodal/video.py read max_frames and fps directly from the request-supplied media_io_kwargs dictionary without enforcing any server-side ceiling. Unlike other backends (e.g., GLMGAVideoBackend, which caps at _MAX_FRAMES=640 and _MAX_FPS=30), the Qwen samplers ignore the num_frames key entirely and use max_frames as the sole upper bound — which an attacker can set to an arbitrarily large value (e.g., 1e9). The vulnerable code path is reachable via unauthenticated HTTP POST to /tokenize and /invocations, as these endpoints are excluded from AuthenticationMiddleware even when --api-key is configured. An attacker can also explicitly select the qwen3_vl video backend on any deployment via the video_backend request field, making the attack applicable beyond Qwen-specific deployments (Github Advisory, vLLM PR #56729).
Successful exploitation causes memory exhaustion of the vLLM API server process, potentially terminating it before scheduling or admission control can intervene, which affects all tenants sharing the instance. Measured impact shows that 74 extra bytes of JSON in a 1.43 MiB request body drove server peak RSS from 2,271 MiB to 13,629 MiB; at larger video sizes, the process can be OOM-killed entirely. There is no confidentiality or integrity impact — the vulnerability is purely an availability (denial-of-service) issue. The --limit-mm-per-prompt flag does not mitigate this, as it bounds media items rather than frames within an item (Github Advisory).
No public proof-of-concept exploit code is known to exist, and there is no evidence of in-the-wild exploitation as of the advisory publication date (Feedly). The EPSS score is 0.0, and the vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. However, the attack requires no authentication, no special privileges, and no user interaction, making it trivially exploitable against any exposed vLLM instance serving Qwen2-VL or Qwen3-VL models with the Python frontend.
video_backend: qwen3_vl explicitly.data: URI or host it at an attacker-controlled URL to bypass the VLLM_MAX_MEDIA_DOWNLOAD_SIZE_MB limit (which does not apply to data: URIs)./tokenize (or /invocations) with a JSON body that includes the video payload and sets media_io_kwargs.video.max_frames to a very large value (e.g., 1000000000) and media_io_kwargs.video.fps to a high value (e.g., 1000000). Optionally include video_backend: qwen3_vl to force the vulnerable sampler on non-Qwen deployments./tokenize or /invocations endpoints containing media_io_kwargs fields with abnormally large max_frames (e.g., > 768) or fps (e.g., > 30) values; large request bodies (>1 MiB) to these endpoints from unexpected sources./tokenize or /invocations with media_io_kwargs in the body; Python OOM kill messages in system logs (e.g., Out of memory: Killed process <pid> (python)).Upgrade vLLM to version 0.30.0 or later, which applies class-level _MAX_FRAMES=768 and _MAX_FPS=30 caps to both Qwen2VLVideoBackend and Qwen3VLVideoBackend via commit ea723c8 (PR #56729), preventing request-level values from exceeding these ceilings (vLLM Release v0.30.0, vLLM PR #56729). If immediate patching is not possible, restrict network access to the /tokenize and /invocations endpoints using a reverse proxy or firewall rules, and implement external rate limiting and resource quotas on API requests containing video data. Note that configuring --api-key alone does not protect /tokenize or /invocations, as these endpoints are excluded from authentication middleware (Github Advisory).
The vulnerability was reported by Eva Crystal / 0xiviel (XSource Security) and coordinated by jperezdealgaba, who also authored the fix. The vLLM maintainer Isotr0py noted in the PR review that a more robust long-term solution would be making fps and max_frames static (non-overridable) kwargs, leaving the class-level cap as an interim measure pending further refactoring (vLLM PR #56729). Red Hat tracked the issue via Bugzilla and the advisory was picked up by GitLab's advisory database shortly after publication (Github Advisory).
Quelle: Dieser Bericht wurde mithilfe von KI erstellt
Kostenlose Schwachstellenbewertung
Bewerten Sie Ihre Cloud-Sicherheitspraktiken in 9 Sicherheitsbereichen, um Ihr Risikoniveau zu bewerten und Lücken in Ihren Abwehrmaßnahmen zu identifizieren.
Eine personalisierte Demo anfordern
"Die beste Benutzererfahrung, die ich je gesehen habe, bietet vollständige Transparenz für Cloud-Workloads."
"„Wiz bietet eine zentrale Oberfläche, um zu sehen, was in unseren Cloud-Umgebungen vor sich geht.“ "
"„Wir wissen, dass, wenn Wiz etwas als kritisch identifiziert, es auch wirklich kritisch ist.“"