CVE-2026-93840
LOWCVSS 3.7Description
vLLM before 0.29.0 validates allowed_token_ids against tokenizer length instead of model output logits width in SamplingParams._validate_allowed_token_ids(). Attackers can supply token IDs above the output vocabulary that pass validation, causing LogitBiasState to corrupt GPU logits state and allow concurrent requests to sample tokens outside their allowlists.
Timeline
Published:September 18th, 2026 8:17 PM
Last modified:September 28th, 2026 6:36 PM
CVSS Scoring
CVSS v3: 3.7 (LOW)
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
Affected Software
From NVD CPE configuration data
Vendors
vllm
Products
vllm
Weaknesses (CWE)
References & Reports
Advisories, patches, and third-party reports
- https://github.com/vllm-project/vllmProduct
- https://github.com/vllm-project/vllm/blob/v0.28.0/vllm/sampling_params.py#L881-L903Product
- https://github.com/vllm-project/vllm/blob/v0.28.0/vllm/v1/worker/gpu/sample/logit_bias.py#L179-L191Product
- https://github.com/vllm-project/vllm/commit/5b0e5b69ac1a3884a6479c9537789c95263cc804Patch
- https://github.com/vllm-project/vllm/pull/49080Issue Tracking
- https://www.vulncheck.com/advisories/vllm-before-0.29.0-cross-request-logits-corruption-via-allowed-token-idsThird Party Advisory
Source: NIST NVD · Data may lag official sources by up to one minute