---
id: CVE-2026-111392
title: SGLang through 0.5.21 KV Cache Poisoning via mm_hashes in /generate
summary: >-
  SGLang through 0.5.21 trusts caller-supplied mm_hashes values as the
  multimodal prefix-cache key, allowing remote attackers to poison cached KV
  entries across requests. Attackers can send a different image under a known or
  predicted hash…
severity: medium
cvss: 4.8
cvssVector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N'
cvssSource: cna
cwe:
  - CWE-345
vendor: sgl-project
product: sglang
affected:
  - sglang >= 0.5.13 <= 0.5.21
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-16T19:24:20.694655Z'
exploitAvailable: true
published: '2026-10-16'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T19:24:54.109Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-111392'
references:
  - url: 'https://github.com/sgl-project/sglang/issues/44641'
  - url: >-
      https://github.com/sgl-project/sglang/blob/v0.5.21/python/sglang/srt/managers/tokenizer_manager.py#L1183-L1215
  - url: >-
      https://github.com/sgl-project/sglang/blob/v0.5.21/python/sglang/srt/managers/io_struct.py#L205-L215
  - url: 'https://github.com/sgl-project/sglang/pull/44653'
  - url: >-
      https://www.vulncheck.com/advisories/sglang-through-0.5.21-kv-cache-poisoning-via-mm-hashes-in-generate
    label: >-
      VulnCheck Advisory: SGLang through 0.5.21 KV Cache Poisoning via mm_hashes
      in /generate
tags:
  - cve.org
  - exploit-available
ingestedAt: '2026-10-16T18:43:08.700Z'
---

## Overview

SGLang through 0.5.21 trusts caller-supplied mm_hashes values as the multimodal prefix-cache key, allowing remote attackers to poison cached KV entries across requests. Attackers can send a different image under a known or predicted hash via /generate to disclose another request's image content or corrupt victims' responses.

## Affected

- `sglang >= 0.5.13 <= 0.5.21`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
