CVE-2026-114054: vLLM: cache aliasing leaks cross-request media/KV state
MEDIUMvLLM before 0.31.0 lets an authenticated user collide shared cache keys by supplying caller-controlled values such as a UUID EXIF ImageID or a cache_salt that matches a LoRA name. This can cause one tenant's request to receive another request's cached processed media, or to reuse first-block KV state. The scored impact is availability (CVSS 6.5, medium), but the practical risk in multi-tenant inference is cross-tenant integrity and confidentiality exposure, which makes it relevant to shared LLM gateways. There is no KEV listing, no public exploit and no Nuclei template, and EPSS is not yet available, so near-term mass exploitation looks unlikely; attacks need only low privileges, though, and the technique is simple. Upgrade to vLLM 0.31.0 or later, and until then avoid sharing a vLLM instance across trust boundaries and do not pass untrusted cache_salt or image metadata through to the engine.
What is the risk?
Medium overall. Exploitation is network-reachable, low complexity, needs low privileges and no user interaction. NVD scores the impact as availability only, but the mechanism (shared cache key collisions) can also corrupt integrity and expose another request's cached data in multi-tenant deployments. No known exploitation, no public exploit and no KEV listing. Exposure is highest for shared inference endpoints that serve multiple customers or teams and accept multimodal inputs or per-request cache_salt values. Single-tenant, internally authenticated deployments carry low risk.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| vLLM | pip | — | No patch |
Do you use vLLM? You're affected.
How severe is it?
What is the attack surface?
What should I do?
1 step1) Upgrade vLLM to 0.31.0 or later. 2) Until patched, do not co-host mutually untrusted tenants on one vLLM instance; use separate instances or deployments per trust boundary. 3) Strip or rewrite client-supplied cache_salt values at the gateway and generate them server-side per tenant with high-entropy values. 4) Sanitize or strip EXIF metadata, including ImageID, from uploaded images before they reach the engine. 5) Where feasible, disable prefix caching and the multimodal processor cache for multi-tenant workloads. 6) Detection: log and alert on requests with UUID-formatted EXIF ImageIDs, cache_salt values that equal known LoRA adapter names, and unusual cache hit patterns or anomalous responses for a single tenant. 7) Review the GitHub advisory GHSA-rh6f-3x46-j33q and the VulnCheck advisory for details.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-114054?
vLLM before 0.31.0 lets an authenticated user collide shared cache keys by supplying caller-controlled values such as a UUID EXIF ImageID or a cache_salt that matches a LoRA name. This can cause one tenant's request to receive another request's cached processed media, or to reuse first-block KV state. The scored impact is availability (CVSS 6.5, medium), but the practical risk in multi-tenant inference is cross-tenant integrity and confidentiality exposure, which makes it relevant to shared LLM gateways. There is no KEV listing, no public exploit and no Nuclei template, and EPSS is not yet available, so near-term mass exploitation looks unlikely; attacks need only low privileges, though, and the technique is simple. Upgrade to vLLM 0.31.0 or later, and until then avoid sharing a vLLM instance across trust boundaries and do not pass untrusted cache_salt or image metadata through to the engine.
Is CVE-2026-114054 actively exploited?
No confirmed active exploitation of CVE-2026-114054 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-114054?
1) Upgrade vLLM to 0.31.0 or later. 2) Until patched, do not co-host mutually untrusted tenants on one vLLM instance; use separate instances or deployments per trust boundary. 3) Strip or rewrite client-supplied cache_salt values at the gateway and generate them server-side per tenant with high-entropy values. 4) Sanitize or strip EXIF metadata, including ImageID, from uploaded images before they reach the engine. 5) Where feasible, disable prefix caching and the multimodal processor cache for multi-tenant workloads. 6) Detection: log and alert on requests with UUID-formatted EXIF ImageIDs, cache_salt values that equal known LoRA adapter names, and unusual cache hit patterns or anomalous responses for a single tenant. 7) Review the GitHub advisory GHSA-rh6f-3x46-j33q and the VulnCheck advisory for details.
What systems are affected by CVE-2026-114054?
This vulnerability affects the following AI/ML architecture patterns: model serving, LLM inference, multimodal pipelines, multi-tenant inference gateways, LoRA adapter serving.
What is the CVSS score for CVE-2026-114054?
CVE-2026-114054 has a CVSS v3.1 base score of 6.5 (MEDIUM). The EPSS exploitation probability is 0.27%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0040AI Model Inference API AccessAML.T0049Exploit Public-Facing ApplicationAML.T0057LLM Data LeakageCompliance Controls Affected
What are the technical details?
Original Advisory
vLLM before 0.31.0 contains a cache aliasing vulnerability that allows authenticated attackers to collide shared cache keys by supplying caller-controlled values such as EXIF ImageID or cache_salt. Attackers can set a UUID EXIF ImageID to receive another request's cached processed media, or match cache_salt to a LoRA name to reuse first-block KV state.
Exploitation Scenario
An attacker with a low-privilege API key on a shared vLLM-based inference service learns or guesses the UUID that identifies another tenant's image, for example from metadata in a shared document workflow. They upload an image whose EXIF ImageID is set to that UUID, and the engine returns the other request's cached processed media instead of processing the attacker's input, so responses are built on content the attacker does not own. In a second variant, the attacker sets cache_salt to the name of a LoRA adapter so their prompt collides with first-block KV state from other requests, reusing cached state across the isolation boundary and degrading or influencing outputs.
Weaknesses (CWE)
CWE-284 — Improper Access Control: The product does not restrict or incorrectly restricts access to a resource from an unauthorized actor.
- [Architecture and Design, Operation] Very carefully manage the setting, management, and handling of privileges. Explicitly manage trust zones in the software.
- [Architecture and Design] Compartmentalize the system to have "safe" areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HReferences
Timeline
Related Vulnerabilities
CVE-2026-6173210.0Decepticon: ChatML token injection yields sandbox RCE
Same package: vllmCVE-2024-110419.8vllm: RCE via unsafe pickle deserialization in MessageQueue
Same package: vllmCVE-2025-472779.8vLLM: RCE via exposed TCPStore in distributed inference
Same package: vllmCVE-2026-259609.8vllm: SSRF allows internal network access
Same package: vllmCVE-2024-90539.8vllm: RCE via unsafe pickle deserialization in RPC server
Same package: vllm