{"id":"CVE-2026-94627","state":"PUBLISHED","title":"vLLM through 0.29.0 GPU KV Cache Leak via Mooncake Transfer ID Collision","description":"vLLM Mooncake connector through 0.29.0 fails to properly manage GPU KV cache block ownership when concurrent child requests share a single transfer ID in prefill/decode disaggregated deployments. Attackers can trigger GPU memory exhaustion by submitting completion requests with multiple prompts, causing orphaned KV cache blocks to accumulate until process restart and eventually preventing legitimate requests from executing.","publishedAt":"2026-09-21T22:04:16.559Z","updatedAt":"2026-09-22T12:51:23.062Z","severity":{"score":8.7,"label":"High","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","source":"VulnCheck"},"assigner":"VulnCheck","products":["vllm-project vllm"],"affected":[{"vendor":"vllm-project","product":"vllm","packageURL":"pkg:pypi/vllm","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThanOrEqual":"0.29.0","versionType":"semver"}]}],"references":["https://github.com/vllm-project/vllm/pull/49796","https://github.com/vllm-project/vllm/blob/v0.29.0/vllm/distributed/kv_transfer/kv_connector/v1/mooncake/mooncake_connector.py#L1978-L1989","https://github.com/vllm-project/vllm","https://www.vulncheck.com/advisories/vllm-through-0.29.0-gpu-kv-cache-leak-via-mooncake-transfer-id-collision"],"weaknesses":["CWE-401"],"ingestedAt":"2026-10-29T20:13:34.582Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/94xxx/CVE-2026-94627.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-94627","state":"PUBLISHED","datePublished":"2026-09-21T22:04:16.559Z","dateUpdated":"2026-09-22T12:51:23.062Z","assignerShortName":"VulnCheck","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateReserved":"2026-09-21T21:42:30.080Z"},"containers":{"cna":{"title":"vLLM through 0.29.0 GPU KV Cache Leak via Mooncake Transfer ID Collision","descriptions":[{"lang":"en","value":"vLLM Mooncake connector through 0.29.0 fails to properly manage GPU KV cache block ownership when concurrent child requests share a single transfer ID in prefill/decode disaggregated deployments. Attackers can trigger GPU memory exhaustion by submitting completion requests with multiple prompts, causing orphaned KV cache blocks to accumulate until process restart and eventually preventing legitimate requests from executing."}],"affected":[{"vendor":"vllm-project","product":"vllm","packageURL":"pkg:pypi/vllm","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThanOrEqual":"0.29.0","versionType":"semver"}]}],"references":[{"url":"https://github.com/vllm-project/vllm/pull/49796","tags":["issue-tracking","patch"],"name":"Pull Request #49796"},{"url":"https://github.com/vllm-project/vllm/blob/v0.29.0/vllm/distributed/kv_transfer/kv_connector/v1/mooncake/mooncake_connector.py#L1978-L1989","tags":["technical-description"]},{"url":"https://github.com/vllm-project/vllm","tags":["product"]},{"url":"https://www.vulncheck.com/advisories/vllm-through-0.29.0-gpu-kv-cache-leak-via-mooncake-transfer-id-collision","name":"VulnCheck Advisory: vLLM through 0.29.0 GPU KV Cache Leak via Mooncake Transfer ID Collision","tags":["third-party-advisory"]}],"metrics":[{"format":"CVSS","cvssV4_0":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"HIGH","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":8.7,"baseSeverity":"HIGH"}},{"format":"CVSS","cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"NONE","availabilityImpact":"HIGH","baseScore":7.5,"baseSeverity":"HIGH"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-401","lang":"en","description":"Missing Release of Memory after Effective Lifetime","type":"CWE"}]}],"providerMetadata":{"shortName":"VulnCheck","orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateUpdated":"2026-09-21T22:04:16.559Z"},"datePublic":"2026-07-25T00:00:00.000Z","cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:vllm:vllm:*:*:*:*:*:*:*:*","versionEndIncluding":"0.29.0"}]}]}],"credits":[{"lang":"en","value":"Mingkai Yu","type":"finder"},{"lang":"en","value":"Jiapeng Li","type":"finder"},{"lang":"en","value":"Jiajia Liu","type":"finder"}],"x_generator":{"engine":"vulncheck-endgame"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-09-22T12:50:58.697049Z","id":"CVE-2026-94627","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-22T12:51:23.062Z"}}]}}}