{"schemaVersion":3,"id":"CVE-2026-105756","aliases":["GHSA-2823-qmq8-rwvj","CGA-537r-767h-m8x2","CGA-684j-4gwh-x66r","CGA-6p54-74jc-qmpq","CGA-8cxv-cw7q-j286","CGA-cqc9-wwvm-8wqw","CGA-mwqj-pp4q-ph48","CGA-mx43-9x7v-3wf9","CGA-qjq5-4g55-2cp9","CGA-wwq4-8gc2-pw9w","PYSEC-2026-4306"],"status":"published","duplicateOf":null,"title":"vLLM: Loose `cache_salt` validation lets a single request kill EngineCore on LMCache-MP deployments — uncaught downstream `ValueError` denial of service","description":"vLLM is an inference and serving engine for large language models. Prior to 0.30.0, OpenAI-compatible request models accept a non-empty cache_salt value without enforcing the character and length restrictions required by the IPCCacheServerKey consumer in LMCache-MP. On deployments using the LMCache-MP connector, a salt that contains a forbidden character or exceeds the permitted length can raise an uncaught ValueError during scheduler cache lookup, causing EngineCore to terminate and denying service to all concurrent users. This issue is fixed in version 0.30.0.","dates":{"published":"2026-10-05T22:49:59.642Z","modified":"2026-10-06T14:42:13.116Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":6.5,"severity":"medium","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Pypi","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":7.2,"impact":6,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Chainguard","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":7.2,"impact":6,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":6.5,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00314,"percentile":0.23045,"severity":"low","asOf":"2026-10-22T00:00:00.000Z","change":{"pp":null,"baselineDate":null,"baselineScore":null},"history":[{"date":"2026-10-06T00:00:00.000Z","score":0.00312,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00312,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.00314,"percentile":0.23045}],"last30":[{"date":"2026-10-06T00:00:00.000Z","score":0.00312,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00312,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00314,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.00314,"percentile":0.23045}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-20","name":"Improper Input Validation","description":"The product receives input or data, but it does\n        not validate or incorrectly validates that the input has the\n        properties that are required to process the data safely and\n        correctly.","type":"weakness","status":"Stable","abstraction":"Class","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/20.html"},{"id":"CWE-248","name":"Uncaught Exception","description":"An exception is thrown from a function, but it is not caught.","type":"weakness","status":"Draft","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/248.html"}],"affected":[{"vendor":"chainguard","product":"kserve-huggingfaceserver-cuda-13.3","name":"kserve-huggingfaceserver-cuda-13.3","label":"kserve-huggingfaceserver-cuda-13.3","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/kserve-huggingfaceserver-cuda-13.3","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":null},{"vendor":"chainguard","product":"lmcache-cuda-12.8","name":"lmcache-cuda-12.8","label":"lmcache-cuda-12.8","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/lmcache-cuda-12.8","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":null},{"vendor":"chainguard","product":"nemo-rl-cuda-13.0-vllm","name":"nemo-rl-cuda-13.0-vllm","label":"nemo-rl-cuda-13.0-vllm","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/nemo-rl-cuda-13.0-vllm","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":null},{"vendor":"chainguard","product":"py3.10-vllm-cuda-12.4","name":"py3.10-vllm-cuda-12.4","label":"py3.10-vllm-cuda-12.4","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/py3.10-vllm-cuda-12.4","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":null},{"vendor":"chainguard","product":"py3.12-vllm-cuda-12.4","name":"py3.12-vllm-cuda-12.4","label":"py3.12-vllm-cuda-12.4","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/py3.12-vllm-cuda-12.4","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null}],"versionsText":"All versions (No fix recorded)","eol":null,"hubHref":null},{"vendor":"chainguard","product":"tritonserver-backend-vllm-cuda-13.0","name":"tritonserver-backend-vllm-cuda-13.0","label":"tritonserver-backend-vllm-cuda-13.0","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/tritonserver-backend-vllm-cuda-13.0","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null},{"text":"< 25.11-r17","noFixRecorded":false,"fixedIn":null}],"versionsText":"All versions (No fix recorded) | < 25.11-r17","eol":null,"hubHref":null},{"vendor":"chainguard","product":"vllm-cuda-13.2","name":"vllm-cuda-13.2","label":"vllm-cuda-13.2","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/vllm-cuda-13.2","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null},{"text":"< 0.32.0-r0","noFixRecorded":false,"fixedIn":null}],"versionsText":"All versions (No fix recorded) | < 0.32.0-r0","eol":null,"hubHref":null},{"vendor":"chainguard","product":"vllm-openai-cuda-13.0","name":"vllm-openai-cuda-13.0","label":"vllm-openai-cuda-13.0","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/vllm-openai-cuda-13.0","purlType":"apk","versions":[{"text":"All versions","noFixRecorded":true,"fixedIn":null},{"text":"< 0.31.0-r0","noFixRecorded":false,"fixedIn":null}],"versionsText":"All versions (No fix recorded) | < 0.31.0-r0","eol":null,"hubHref":null},{"vendor":"PyPI","product":"vllm","name":"vllm","label":"vllm","ecosystem":"PyPI","cpePart":null,"purl":"pkg:pypi/vllm","purlType":"pypi","versions":[{"text":"< 0.30.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.30.0","eol":null,"hubHref":null},{"vendor":"vllm-project","product":"vllm","name":"vllm","label":"vllm","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 0.30.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.30.0","eol":null,"hubHref":"/vendor/vllm-project/vllm"},{"vendor":"vllm","product":"vllm","name":"vllm","label":"vllm","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 0.30.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.30.0","eol":null,"hubHref":"/vendor/vllm/vllm"}],"affectedCount":11,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/vllm-project/vllm/security/advisories/GHSA-2823-qmq8-rwvj","label":"github.com/vllm-project/vllm/security/advisories/GHSA-2823-qmq8-rwvj","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Advisory","Mitigation","Vendor Advisory"]},{"url":"https://github.com/vllm-project/vllm/pull/51444","label":"github.com/vllm-project/vllm/pull/51444","hostname":"github.com","tags":["X Refsource MISC","WEB","FIX","Issue Tracking","Patch"]},{"url":"https://github.com/vllm-project/vllm/commit/e962733e08d10f7ca65dac4df99e116460b8b174","label":"github.com/vllm-project/vllm/commit/e962733e08d10f7ca65dac4df99e116460b8b174","hostname":"github.com","tags":["X Refsource MISC","WEB","FIX","Patch"]},{"url":"https://github.com/vllm-project/vllm/releases/tag/v0.30.0","label":"github.com/vllm-project/vllm/releases/tag/v0.30.0","hostname":"github.com","tags":["X Refsource MISC","WEB","Release Notes"]},{"url":"https://github.com/vllm-project/vllm","label":"github.com/vllm-project/vllm","hostname":"github.com","tags":["PACKAGE"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105756.json","label":"github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105756.json","hostname":"github.com","tags":["Advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-105756","label":"nvd.nist.gov/vuln/detail/CVE-2026-105756","hostname":"nvd.nist.gov","tags":["Advisory"]},{"url":"https://pypi.org/project/vllm","label":"pypi.org/project/vllm","hostname":"pypi.org","tags":["PACKAGE"]},{"url":"https://github.com/advisories/GHSA-2823-qmq8-rwvj","label":"github.com/advisories/GHSA-2823-qmq8-rwvj","hostname":"github.com","tags":["Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-10-05T22:49:59.642Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-10-06T14:42:13.116Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":26,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T18:29:05.805Z","stale":false,"partial":false}}