CVE-2026-115911
vLLM: DoS via unbounded chat_template Jinja2 rendering exhausts the renderer thread pool
Impact
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 packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | vllm | >= 0.19.0, < 0.32.0 | 0.32.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Vllm | Vllm | from 0.19.0 before 0.32.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-542m-9234-8gvf
- https://github.com/vllm-project/vllm/security/advisories/GHSA-542m-9234-8gvf
- https://nvd.nist.gov/vuln/detail/CVE-2026-115911
- 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