Case · DiggingBeagle record

vLLM Responses endpoint accepted chat-template kwargs despite a disabled trust flag

vLLM applied trust-request-chat-template validation to Chat endpoints but failed to apply the same rejection to nested template kwargs arriving through its Responses API. A client could get a forbidden template evaluated and potentially combine the bypass with the separate Jinja CPU exhaustion mechanism.

Scope

The affected service must expose the OpenAI-compatible Responses route and pass caller-controlled chat_template_kwargs while request templates are disabled in configuration. Authentication was not bypassed; this is a route-policy mismatch, not a distinct demonstrated arbitrary code execution.

Assessment profile

Assessment method
Setting
research demonstration
Exploitation
demonstrated
Evidence
Grade B
Remediation
patch available
AI role
AGAINST AI
Basis and provenance

The cited primary technical report or advisory supports the stated mechanism within its reported scope. The assessment does not infer a production breach, a victim count or a comparable impact score from a laboratory result. A maintainer or advisory names a patched release; that does not prove every deployed instance has updated. Boundary: The policy mismatch is between two OpenAI-compatible request routes.

Assessed Oct 29, 2026 using diggingbeagle.assessment/1.

At a glance

Mechanism and trust boundary

  1. 01

    Step

  2. 02

    Step

  3. 03

    Step

Claims & evidence

CLM-ENRICH-20261029-39The vLLM Responses API advisory reports that nested chat_template_kwargs escaped the same trust_request_chat_template restriction enforced by other chat routes, allowing forbidden request templates to reach rendering.supported

Basis: reported finding

Link to claim
CLM-CP23-VLLM-RESPONSES-TEMPLATE-1vLLM applied trust-request-chat-template validation to Chat endpoints but failed to apply the same rejection to nested template kwargs arriving through its Responses API. The affected service must expose the OpenAI-compatible Responses route and pass caller-controlled chat_template_kwargs while request templates are disabled in configuration. A client could get a forbidden template evaluated and potentially combine the bypass with the separate Jinja CPU exhaustion mechanism.supported

Basis: reported finding

Link to claim

Implications

A client could get a forbidden template evaluated and potentially combine the bypass with the separate Jinja CPU exhaustion mechanism.

Controls and mitigations

  • Upgrade vLLM to 0.32.0 and enforce the same template trust decision at a shared request-normalization boundary for every endpoint.

Unknowns and contradictions

  • Authentication was not bypassed; this is a route-policy mismatch, not a distinct demonstrated arbitrary code execution.

Sources and citation

Material revision history

  1. Oct 29, 2026 · Canonical change recorded · new in release · revision 202