{"id":"CVE-2026-115911","state":"PUBLISHED","title":"vLLM: DoS via unbounded chat_template Jinja2 rendering exhausts the renderer thread pool","description":"vLLM is an inference and serving engine for large language models. From 0.19.0 until 0.32.0, authenticated callers can supply a request chat template when no server-side --chat-template is configured, or a malicious model repository can provide a template that is compiled and rendered by tokenizer.apply_chat_template() without a wall-clock timeout, output-size limit, or iteration bound. Rendering runs in a ThreadPoolExecutor with one worker by default, so a nonterminating render can block /v1/responses and other chat-template users after the request ends, while an output-expanding render can exhaust server memory. Harmony models are not affected because they do not use this Jinja path. This issue is fixed in version 0.32.0.","publishedAt":"2026-10-26T16:47:59.377Z","updatedAt":"2026-10-30T14:20:51.484Z","severity":{"score":6.5,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","source":"GitHub_M"},"assigner":"GitHub_M","products":["vllm-project vllm"],"affected":[{"vendor":"vllm-project","product":"vllm","versions":[{"version":">= 0.19.0, < 0.32.0","status":"affected"}]}],"references":["https://github.com/vllm-project/vllm/security/advisories/GHSA-542m-9234-8gvf","https://github.com/vllm-project/vllm/pull/50300","https://github.com/vllm-project/vllm/commit/cff08b461e086523cee8bba5bd3c66d302625134","https://github.com/vllm-project/vllm/releases/tag/v0.32.0"],"weaknesses":["CWE-400","CWE-770","CWE-834"],"ingestedAt":"2026-10-30T14:28:06.795Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/115xxx/CVE-2026-115911.json","commit":"03ee80f5da31e6cc15e39ca4963953877c90d569","baselineCommit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-115911","state":"PUBLISHED","datePublished":"2026-10-26T16:47:59.377Z","dateUpdated":"2026-10-30T14:20:51.484Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-10-23T20:21:45.107Z"},"containers":{"cna":{"title":"vLLM: DoS via unbounded chat_template Jinja2 rendering exhausts the renderer thread pool","descriptions":[{"lang":"en","value":"vLLM is an inference and serving engine for large language models. From 0.19.0 until 0.32.0, authenticated callers can supply a request chat template when no server-side --chat-template is configured, or a malicious model repository can provide a template that is compiled and rendered by tokenizer.apply_chat_template() without a wall-clock timeout, output-size limit, or iteration bound. Rendering runs in a ThreadPoolExecutor with one worker by default, so a nonterminating render can block /v1/responses and other chat-template users after the request ends, while an output-expanding render can exhaust server memory. Harmony models are not affected because they do not use this Jinja path. This issue is fixed in version 0.32.0."}],"affected":[{"vendor":"vllm-project","product":"vllm","versions":[{"version":">= 0.19.0, < 0.32.0","status":"affected"}]}],"references":[{"url":"https://github.com/vllm-project/vllm/security/advisories/GHSA-542m-9234-8gvf","name":"https://github.com/vllm-project/vllm/security/advisories/GHSA-542m-9234-8gvf","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/vllm-project/vllm/pull/50300","name":"https://github.com/vllm-project/vllm/pull/50300","tags":["x_refsource_MISC"]},{"url":"https://github.com/vllm-project/vllm/commit/cff08b461e086523cee8bba5bd3c66d302625134","name":"https://github.com/vllm-project/vllm/commit/cff08b461e086523cee8bba5bd3c66d302625134","tags":["x_refsource_MISC"]},{"url":"https://github.com/vllm-project/vllm/releases/tag/v0.32.0","name":"https://github.com/vllm-project/vllm/releases/tag/v0.32.0","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":6.5,"baseSeverity":"MEDIUM","confidentialityImpact":"NONE","integrityImpact":"NONE","privilegesRequired":"LOW","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-400","lang":"en","description":"CWE-400: Uncontrolled Resource Consumption","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-770","lang":"en","description":"CWE-770: Allocation of Resources Without Limits or Throttling","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-834","lang":"en","description":"CWE-834: Excessive Iteration","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-10-26T16:47:59.377Z"},"source":{"advisory":"GHSA-542m-9234-8gvf","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-10-30T14:20:35.704686Z","id":"CVE-2026-115911","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-30T14:20:51.484Z"}}]}}}