Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Once the opt-in feature is enabled, exploitation is unauthenticated network RCE with no interaction; the non-default config is a real-world limiter but does not alter base metrics, yielding full C/I/A impact.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
3DescriptionCVE.org
SGLangs multimodal generation runtime is vulnerable to unauthenticated remote code execution when the --enable-custom-logit-processor option is enabled, as Python objects loaded via dill.loads() will be deserialized without validation.
AnalysisAI
Unauthenticated remote code execution in SGLang (the LLM/multimodal generation serving runtime) affecting version 5.10 arises when the non-default --enable-custom-logit-processor flag is set, allowing attacker-supplied Python objects to be deserialized via dill.loads() and execute arbitrary code on the inference host. No CISA KEV listing exists and SSVC records exploitation as 'none', but a public technical write-up (antiproof.ai, 'Three RCEs in SGLang') details the flaw and SSVC marks it automatable with total technical impact. EPSS is modest at 0.32% (55th percentile), consistent with a serious-but-conditional (feature-gated) issue rather than mass exploitation.
Technical ContextAI
SGLang is a high-performance serving/runtime engine for large language and multimodal models, exposing an HTTP API for generation requests. The 'custom logit processor' feature lets clients supply logic that shapes token sampling; to transport arbitrary Python callables it relies on dill, an extended pickle library. The root cause is CWE-502 (Deserialization of Untrusted Data): dill.loads() reconstructs arbitrary Python objects, and pickle/dill deserialization invokes object constructors and __reduce__ methods, giving an attacker code execution the moment a malicious blob is loaded without type/signature validation. The affected component is identified by CPE cpe:2.3:a:sglang:sglang:*:*:*:*:*:*:*:*, with EUVD naming sglang 5.10.
RemediationAI
No vendor-released patch version is identified in the available data, so the primary compensating control is to disable the vulnerable feature: run SGLang without --enable-custom-logit-processor (it is opt-in and off by default), which removes the untrusted dill.loads() path at the cost of losing client-supplied logit-processor functionality. Additionally restrict network exposure of the SGLang API by binding to localhost or placing it behind an authenticated reverse proxy/allowlist so untrusted clients cannot reach the generation endpoint, and monitor the project for a patched release before re-enabling the feature. Consult the upstream project (https://github.com/sgl-project/sglang) and the technical analysis at https://antiproof.ai/blog/three-rces-in-sglang/ for fix status; upgrade to a fixed version once the vendor publishes one, since disabling the feature is a mitigation rather than a code-level fix.
Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser
pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi
The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python
BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.
Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301
In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse
Unauthenticated remote code execution affects Kestra OSS (the open-source event-driven orchestration platform) prior to
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne
Same weakness CWE-502 – Deserialization of Untrusted Data
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-30766
GHSA-36m8-w8qf-g76p