Description
vLLM through 0.29.0 fails to properly validate bad_words token indices against the model's generation output width in SamplingParams.update_from_tokenizer(). Attackers can supply out-of-bounds token indices that corrupt logits memory of concurrent requests, causing different in-flight HTTP requests to return incorrect tokens.
Published: 2026-09-19
Score: 2.3 Low
EPSS: n/a
KEV: No
Impact: Logits Corruption Across Requests
Action: Assess Impact
AI Analysis

Impact

The vulnerability arises when vLLM does not validate the token indices supplied in the bad_words parameter against the model’s output width during sampling parameter updates. If an attacker provides indices that exceed the logits array bounds, the library writes beyond the allocated buffer, corrupting the logits of other in‑flight API calls. This corruption causes concurrent HTTP requests to return incorrect tokens, compromising the integrity of the model’s responses but not enabling arbitrary code execution.

Affected Systems

vLLM versions up to and including 0.29.0, distributed by the vllm‑project, are affected. The issue exists in the sampling_params and bad_words modules of the worker GPU sampling path. No other versions are listed as impacted.

Risk and Exploitability

The CVSS score of 2.3 indicates a low severity. The EPSS is not available, and the vulnerability is not listed in CISA’s KEV catalog, implying a low likelihood of widespread exploitation. Nonetheless, an attacker can craft a request with malformed bad_words indices to corrupt logits for other concurrent requests. The attack requires only the ability to send a request to the vLLM endpoint; no privilege escalation is needed. The primary risk is to service correctness rather than system compromise.

Generated by OpenCVE AI on September 20, 2026 at 00:26 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade vLLM to version 0.30.0 or later, which includes bounding checks for bad_words indices.
  • If an upgrade is not immediately possible, avoid using the bad_words feature or limit any supplied indices to the model’s vocabulary size and the maximum generation length.
  • Integrate code‑level checks in your deployment to verify that any bad_words index passed to SamplingParams.update_from_tokenizer() is within the logits width constraint.

Generated by OpenCVE AI on September 20, 2026 at 00:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 19 Sep 2026 23:00:00 +0000

Type Values Removed Values Added
Description vLLM through 0.29.0 fails to properly validate bad_words token indices against the model's generation output width in SamplingParams.update_from_tokenizer(). Attackers can supply out-of-bounds token indices that corrupt logits memory of concurrent requests, causing different in-flight HTTP requests to return incorrect tokens.
Title vLLM through 0.29.0 Cross-Request Logits Corruption via bad_words
First Time appeared Vllm
Vllm vllm
Weaknesses CWE-129
CPEs cpe:2.3:a:vllm:vllm:*:*:*:*:*:*:*:*
Vendors & Products Vllm
Vllm vllm
References
Metrics cvssV3_1

{'score': 3.1, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N'}

cvssV4_0

{'score': 2.3, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-09-19T22:58:10.572Z

Reserved: 2026-09-19T10:55:49.093Z

Link: CVE-2026-93989

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-19T23:17:10.043

Modified: 2026-09-19T23:17:10.043

Link: CVE-2026-93989

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-20T00:30:16Z

Weaknesses
  • CWE-129

    Improper Validation of Array Index