Description
vLLM through 0.29.0 contains a memory corruption vulnerability in the Triton _bincount_kernel where prompt token IDs index the penalty prompt-presence bitset without bounds checking against vocabulary size. Attackers can submit multimodal audio requests with tokens equal to vocabulary size, causing out-of-bounds writes that corrupt concurrent requests' sampler state and alter repetition penalty behavior.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| vllm-project | vllm | ≤ 0.29.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | python-vllm | 0.30.0-1.1 | openSUSE-SU-2026:11867-1 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | vllm | < 0.30.0 | 0.30.0 | PYSEC-2026-3999 |
Advisories 2
- WID-SEC-2026-3483 vllm: Mehrere Schwachstellen ermöglichen Manipulation von Daten BSI CERT-Bund (WID) · Sep 27, 2026
- openSUSE-SU-2026:11867-1 python313-vllm-0.30.0-1.1 on GA media SUSE / openSUSE Security Updates · Sep 24, 2026
References
- https://github.com/vllm-project/vllm/pull/49081 patch issue-tracking
- https://github.com/vllm-project/vllm product
- https://github.com/vllm-project/vllm/blob/v0.29.0/vllm/v1/worker/gpu/sample/penalties.py#L241-L255 technical-description
- https://github.com/vllm-project/vllm/blob/v0.29.0/vllm/v1/worker/gpu/sample/penalties.py#L33-L37 technical-description
- VulnCheck Advisory: vLLM through 0.29.0 Adjacent-Request Sampler State Corruption via Unvalidated Prompt Token IDs third-party-advisory