CVE-2026-7669

MEDIUM

sgl-project SGLang HuggingFace Transformer hf_transformers_utils.py get_tokenizer deserialization

Title source: cna
STIX 2.1

Exploitation Summary

EIP tracks 1 public exploit for CVE-2026-7669. PoCs published by gouldnicholas.

AI-analyzed exploit summary This repository contains a functional exploit PoC for CVE-2026-7669, demonstrating how SGLang silently overrides `trust_remote_code=False` to `True`, leading to arbitrary code execution via a malicious tokenizer. The PoC includes detailed reproduction steps, a Docker environment, and a comprehensive ledger of claims to verify the vulnerability.

Description

A vulnerability was detected in sgl-project SGLang up to 0.5.9. Impacted is the function get_tokenizer of the file python/sglang/srt/utils/hf_transformers_utils.py of the component HuggingFace Transformer Handler. The manipulation of the argument trust_remote_code with the input False as part of Boolean results in code injection. The attack can be executed remotely. A high complexity level is associated with this attack. The exploitability is considered difficult. In get_tokenizer(), when the caller passes trust_remote_code=False and HuggingFace transformers v5 returns a TokenizersBackend instance (the generic fallback for tokenizer classes not in the registry), SGLang silently re-invokes AutoTokenizer.from_pretrained with trust_remote_code=True, overriding the caller's explicit security setting. A model repository containing a malicious tokenizer.py referenced via auto_map in tokenizer_config.json will execute arbitrary Python in the SGLang process during this second call. No log line or warning is emitted. The override affects all current SGLang versions because transformers==5.3.0 is pinned in pyproject.toml. Both tokenizer_mode="auto" and tokenizer_mode="slow" are affected. The exploit is now public and may be used. The vendor was contacted early about this disclosure but did not respond in any way.

Exploits (1)

nomisec WORKING POC
by gouldnicholas · poc
https://github.com/gouldnicholas/CVE-2026-7669-PoC

This repository contains a functional exploit PoC for CVE-2026-7669, demonstrating how SGLang silently overrides `trust_remote_code=False` to `True`, leading to arbitrary code execution via a malicious tokenizer. The PoC includes detailed reproduction steps, a Docker environment, and a comprehensive ledger of claims to verify the vulnerability.

Classification
Working Poc 100%
Attack Type
Rce
Complexity
Moderate
Reliability
Reliable
Target: SGLang (versions 0.5.10 through current main)
No auth needed
Prerequisites: Docker environment · Python 3.12.7 · transformers==5.3.0 · SGLang source code
devstral-2 · analyzed May 04, 2026 Full analysis →

References (4)

Core 4
Core References
Vdb Entry, Technical Description vdb-entry technical-description exploit
VDB-360817 | sgl-project SGLang HuggingFace Transformer hf_transformers_utils.py get_tokenizer deserialization
https://vuldb.com/vuln/360817
Signature, Permissions Required signature permissions-required
VDB-360817 | CTI Indicators (IOB, IOC, IOA)
https://vuldb.com/vuln/360817/cti
Third Party Advisory third-party-advisory
Submit #799263 | sgl-project sglang <=0.5.9 Protection Mechanism Failure
https://vuldb.com/submit/799263

Scores

CVSS v3 5.6
EPSS 0.0037
EPSS Percentile 28.7%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L

CISA SSVC

Vulnrichment
Exploitation poc
Automatable no
Technical Impact partial

Details

CWE
CWE-74 CWE-94
Status published
Products (11)
pypi/sglang 0 - 0.5.9PyPI
sgl-project/SGLang 0.5.0
sgl-project/SGLang 0.5.1
sgl-project/SGLang 0.5.2
sgl-project/SGLang 0.5.3
sgl-project/SGLang 0.5.4
sgl-project/SGLang 0.5.5
sgl-project/SGLang 0.5.6
sgl-project/SGLang 0.5.7
sgl-project/SGLang 0.5.8
... and 1 more
Published May 02, 2026
Tracked Since May 03, 2026