{"id":"CVE-2026-93838","aliases":[],"url":"https://o3.security/vulnerability/CVE-2026-93838","summary":"SGLang versions through 0.5.20 contain an unbounded memory allocation vulnerability in handle_staging_req() that fails to validate chunk_idx from ZMQ STAGING_REQ frames in prefill/decode…","details":"SGLang versions through 0.5.20 contain an unbounded memory allocation vulnerability in handle_staging_req() that fails to validate chunk_idx from ZMQ STAGING_REQ frames in prefill/decode disaggregation deployments. Attackers with access to the decode engine's internal ZMQ rank port can send a frame with an extremely large chunk_idx value, causing the scheduler to allocate memory until the system runs out and terminates the process.","published":"2026-09-18T20:17:33.900","modified":"2026-09-18T20:17:33.900","cvss":{"score":5.9,"severity":"MEDIUM","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H"},"epss":null,"cisaKev":null,"exploitsKnown":null,"affectedPackages":[],"fix":null,"references":[{"type":"WEB","url":"https://github.com/sgl-project/sglang"},{"type":"WEB","url":"https://github.com/sgl-project/sglang/blob/v0.5.20/python/sglang/srt/disaggregation/common/conn.py#L1636-L1640"},{"type":"WEB","url":"https://github.com/sgl-project/sglang/blob/v0.5.20/python/sglang/srt/disaggregation/common/staging_handler.py#L781"},{"type":"WEB","url":"https://github.com/sgl-project/sglang/blob/v0.5.20/python/sglang/srt/disaggregation/common/staging_handler.py#L848-L860"},{"type":"WEB","url":"https://github.com/sgl-project/sglang/issues/39764"},{"type":"WEB","url":"https://www.vulncheck.com/advisories/sglang-through-0.5.20-unbounded-memory-allocation-via-staging-req-chunk-idx"}],"provenance":{"sources":["OSV.dev","NVD","FIRST.org (EPSS)"],"lastVerified":"2026-09-18T20:17:33.900"}}