Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach exposed SGLang GLM-4V endpoint
-
DeliveryCraft video_url with inflated fps/max_frames/token limits
-
ExploitServer bypasses budget, decodes full-resolution frames
-
ExecutionWorker memory exhausted
-
ImpactService denial for legitimate users
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 the target SGLang instance (version ≤0.5.21) to be serving a GLM-4V (GLM-V) multimodal model and to accept video_url inputs, because the flaw is specific to the glm4v.py video-processing path that trusts client-supplied fps, max_frames, max_tokens_per_frame, and max_image_tokens fields instead of enforcing server-side budgets. The attacker must be able to reach the inference API endpoint and submit these parameters in the video_url object; per CVSS PR:N no authentication is required by the base vector, though in practice the endpoint is often fronted by a proxy or network boundary. Limiting factors: deployments not serving GLM-4V, not enabling video input, or upgraded past 0.5.21 are not affected; impact is denial of service only (no code execution or data exposure). |
| Impact | All available signals point to a genuine availability risk but not a top-tier emergency. The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) describes a network-reachable, low-complexity, unauthenticated attack with no user interaction, and impact is confined to availability (VA:H; VC:N/VI:N - no confidentiality or integrity loss), consistent with CWE-770 uncontrolled resource consumption and the 'Denial Of Service' tag. The 8.7 score is driven almost entirely by the ease of reaching the endpoint plus high availability impact, not by any code-execution or data-exposure potential. No EPSS score, SSVC decision, KEV listing, or POC indicator is present in the input, so exploitation probability and automatability cannot be quantified from the data. There is no CISA KEV entry (not actively exploited per available data) and no public exploit identified at time of analysis, so this is a credible-but-prioritize-by-exposure issue rather than a confirmed in-the-wild threat. Important scoping caveat: the PR:N rating assumes the SGLang inference endpoint is reachable without authentication; in production SGLang is frequently deployed behind an API gateway, reverse proxy, or internal network boundary, which would raise the practical barrier even though the base vector says PR:N. |
| Exploit ScenarioDerived | An attacker with network access to an SGLang server hosting a GLM-4V vision model submits a chat/completions request containing a video_url object with fps, max_frames, max_tokens_per_frame, and max_image_tokens set to extreme values. Because glm4v.py honors these client-supplied limits instead of enforcing server-side caps, the worker decodes every frame of a high-resolution video at full resolution, exhausting memory and crashing or hanging the worker, denying service to legitimate users. No public exploit code is identified at time of analysis, but the attack requires only a crafted JSON request against a documented API field. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
Memory exhaustion denial of service in SGLang through 0.5.21 allows unauthenticated remote attackers to override the GLM-V video-processing resource budget by supplying attacker-controlled fps, max_frames, max_tokens_per_frame, and max_image_tokens values inside the video_url object of an inference request, causing glm4v.py to decode every frame of a high-resolution video at full size until worker memory is exhausted. Per CVSS PR:N in both the vendor-supplied CVSS 4.0 vector and the assessed CVSS:3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H), the request path requires no authentication from the base vector, although in practice the endpoint is often fronted by a proxy or network boundary. Exploitation is limited to deployments serving a GLM-4V (GLM-V) multimodal model that accept video_url inputs; impact is availability only, with no code execution or data exposure, and no public exploit identified at time of analysis (no CISA KEV entry, no POC referenced).
RemediationAI
No vendor-released patch identified at time of analysis; the only upstream reference is tracking issue https://github.com/sgl-project/sglang/issues/43705, so confirm the fixed release (expected to be a version later than 0.5.21) via the project repository at https://github.com/sgl-project/sglang and the VulnCheck advisory at https://www.vulncheck.com/advisories/sglang-through-0.5.21-resource-budget-bypass-via-glm-v-video-parameters before upgrading. Until a patched version is confirmed, the most effective compensating control is to enforce server-side caps before requests reach glm4v.py: terminate the inference API behind a gateway or reverse proxy that rejects or clamps oversized fps, max_frames, max_tokens_per_frame, and max_image_tokens values in the video_url object, accepting the trade-off that legitimate long or high-frame-rate video analysis will be truncated or refused. A second control is to require authentication and restrict the multimodal/video endpoint to trusted clients at the proxy layer, recognizing that this does not fix the underlying trust of client-supplied fields and adds operational friction. A third is to run each worker under a cgroup/container memory limit with restart-on-OOM and per-worker request concurrency limits, which converts a full-node denial of service into a single-worker restart at the cost of transient request failures and possible throughput loss. Where GLM-4V video input is not required, disabling the video_url code path entirely removes the exposure with the side effect of removing that feature for all users; monitoring memory growth and abnormally large video request payloads provides additional detection but not prevention.
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
SGLang is an LLM serving framework whose OpenAI-compatible entrypoint exposes multimodal request schemas, including the video_url object whose fields (fps, max_frames, max_tokens_per_frame, max_image_tokens) are declared in python/sglang/srt/entrypoints/openai/protocol.py at lines 592-594 and parsed via the conversation parser (conversation.py line 691). The root cause is CWE-770, Allocation of Resources Without Limits or Throttling: the GLM-4V processing path in python/sglang/srt/multimodal/processors/glm4v.py (lines 160-167 and 400) accepts these client-supplied values as the authoritative budget instead of clamping them to server-side defaults. Because the params directly control frame sampling (fps, max_frames) and per-frame token budget (max_tokens_per_frame, max_image_tokens), an attacker can set arbitrarily high values so that every frame of a high-resolution video is decoded and tokenized at full size, inflating memory per request until the worker is exhausted. The CPE cpe:2.3:a:sgl-project:sglang:*:*:*:*:*:*:*:* confirms all SGLang builds through 0.5.21 as the affected code base, and the flaw is specific to the GLM-V video pipeline rather than the general text or image serving paths.
Know when Sglang 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
Unauthenticated network request with no user interaction triggers resource exhaustion, so AV:N/AC:L/PR:N/UI:N; impact is availability-only (A:H) with no confidentiality or integrity effect and no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
SGLang through 0.5.21 contains a resource budget bypass vulnerability that allows remote attackers to override GLM-V video processing limits by supplying fps, max_frames, max_tokens_per_frame and max_image_tokens in the video_url object. Attackers can set these values arbitrarily high so glm4v.py decodes every frame of high-resolution video at full size, exhausting worker memory and denying service.
Executive ViewAI
Organizations running SGLang version 0.5.21 or earlier to serve GLM-4V multimodal models are exposed to unauthenticated remote denial-of-service attacks that can exhaust worker memory and take inference services offline. Because the attack requires only a crafted video input and no credentials, any externally reachable deployment is at risk, potentially disrupting customer-facing AI applications and internal workflows. Leadership should prioritize mitigation given the high availability impact and lack of a vendor patch; no public exploit identified at time of analysis.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict network access to SGLang endpoints, enforce authentication via proxy, validate and cap video processing parameters (fps, max_frames, max_tokens_per_frame, max_image_tokens), apply container memory limits and rate limiting, and monitor for memory exhaustion.
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.
Unauthenticated remote attackers can crash the SGLang inference server (versions up to and including 0.5.19) by calling
Remote code execution in SGLang (versions up to and including 0.5.15) allows unauthenticated attackers to run arbitrary
SGLang's multimodal generation module deserializes untrusted data with pickle.loads() over an unauthenticated ZMQ broker
SGLang's encoder parallel disaggregation system is vulnerable to unauthenticated RCE through pickle deserialization in t
Unauthenticated remote code execution in SGLang (the LLM/multimodal generation serving runtime) affecting version 5.10 a
Remote code execution in SGLang 0.5.9's /v1/rerank endpoint allows unauthenticated attackers to execute arbitrary code b
Remote code execution in SGLang (versions up to and including 0.5.15) allows attackers to run arbitrary code on the infe
Remote code execution in SGLang AI inference servers allows unauthenticated attackers to run arbitrary code through the
Remote code execution in SGLang (versions ≤ v0.5.15) allows attackers to achieve arbitrary code execution through the op
Unauthenticated remote code execution affects SGLang, an LLM/multimodal inference-serving framework, at version 5.10, wh
Unauthenticated remote code execution in SGLang versions through v0.5.20 arises from unsafe pickle deserialization in th
Unauthenticated remote code execution in SGLang 0.5.11 through 0.5.14 occurs when the multimodal generation runtime is l
EUVD-2026-97434
GHSA-2mhj-6r3c-c9xj
NVD
CVE.org
EPSS
Exploit-DB