Skip to content
Heist/ feed
Back to feed
Medium

vLLM: DoS via unbounded chat_template Jinja2 rendering exhausts the renderer thread pool

Type: advisorySources: Official CVE List

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.

Products
vllm
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-115911
Confirmed fixed CVEs
Not specified
Updated in this feed
30 Oct 2026, 13:52 UTC · Revision 1

Source evidence

vLLM: DoS via unbounded chat_template Jinja2 rendering exhausts the renderer thread pool

core-cve · Original source

Published 26 Oct 2026, 16:47 UTC

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.

cve:CVE-2026-115911

vllm

Fixed versions: Not specified

Complete source record
{
  "id": "bd270f0c4533f63724e26f3c46821c50903c3bb6d66758c4a36bfb3904d4bdd4",
  "url": "https://www.cve.org/CVERecord?id=CVE-2026-115911",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "vLLM: DoS via unbounded chat_template Jinja2 rendering exhausts the renderer thread pool",
    "summary": "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.",
    "evidence": "cve:CVE-2026-115911",
    "products": [
      {
        "name": {
          "value": "vllm",
          "evidence": "/containers/cna/affected/0/product"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": []
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-115911",
      "aliases": [
        "CVE-2026-115911"
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "scope": "UNCHANGED",
            "version": "3.1",
            "baseScore": 6.5,
            "attackVector": "NETWORK",
            "baseSeverity": "MEDIUM",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
            "integrityImpact": "NONE",
            "userInteraction": "NONE",
            "attackComplexity": "LOW",
            "availabilityImpact": "HIGH",
            "privilegesRequired": "LOW",
            "confidentialityImpact": "NONE"
          }
        }
      ],
      "affected": [
        {
          "vendor": "vllm-project",
          "product": "vllm",
          "versions": [
            {
              "status": "affected",
              "version": ">= 0.19.0, < 0.32.0"
            }
          ]
        }
      ],
      "modified": "2026-10-26T16:47:59.377Z",
      "provider": "cve",
      "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"
      ],
      "provider_metadata": {
        "cna": {
          "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
          "shortName": "GitHub_M",
          "dateUpdated": "2026-10-26T16:47:59.377Z"
        }
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-115911",
        "evidence": "/cveMetadata/cveId"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/containers/cna/metrics"
  },
  "source_id": "core-cve",
  "document_id": 320625,
  "published_at": "2026-10-26T16:47:59.377+00:00"
}