IT SBIT Services
Schneeberger
DEEN
CVE tracker

SGLang: Remote code execution via unsafe pickle deserialization in ZMQ decoder

CVE-2026-93034Critical 9.8

← All vulnerabilities

Summary

SGLang's internal ZeroMQ message decoder passes PickleWrapper payloads to pickle.loads() without a type allowlist or authentication. The flaw persists on the MessagePack path even when SGLANG_USE_PICKLE_IPC is disabled, so turning off pickle transport does not remove it. An unauthenticated attacker who can reach the internal receiver can run arbitrary code with the privileges of the SGLang process, which is remotely exploitable when data-parallel attention is enabled with a non-loopback --dist-init-addr.

Affected

  • SGLang versions 0 to 0.5.20 (per CVE record and CISA SSVC; exact range not confirmed by vendor)
  • Remote exploitation requires data-parallel attention enabled and a non-loopback --dist-init-addr
  • Unknown whether default settings are affected

Fixed in

Unknown. No fixed version or vendor advisory was found at the time of writing.

Workaround

  • Keep the --dist-init-addr bound to loopback
  • Keep ZMQ data-parallel attention sockets off untrusted networks
  • Avoid the MessagePack path; disabling SGLANG_USE_PICKLE_IPC alone does not remove the exposure
  • Restrict network access to SGLang internal ports with firewall rules, allowing only the local host

Exploitation

  • CISA SSVC: exploitation none, automatable yes, total technical impact
  • No known exploitation in the wild found at the time of writing
  • No public proof of concept confirmed; a technical write-up describes code execution in a test setup

Our recommendation

  • Inventory all SGLang deployments and their versions
  • Check whether data-parallel attention is enabled and what --dist-init-addr is bound to
  • Restrict network access to SGLang internal ports immediately
  • Monitor the sgl-project repository and NVD for an advisory and fixed release, then update promptly
  • Treat any exposed deployment as critical given the CVSS score of 9.8

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 30 Oct 2026, 20:25.

Original description (NVD)

SGLang contains an arbitrary code execution vulnerability caused by the ZMQ message decoder unconditionally deserializing PickleWrapper payloads via pickle.loads() in _maybe_unwrap_pickle without type allowlisting or authentication; this vulnerability persists via the msgpack path even when SGLANG_USE_PICKLE_IPC is disabled, and becomes remotely exploitable if data-parallel attention is enabled with a non-loopback --dist-init-addr setting.

NVD references (2)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.