Description (CNA)
vLLM is a high-throughput and memory-efficient inference and serving engine for LLMs. Prior to 0.24.0, a frontend-legal multi-request speculative decoding workload can cause the rejection sampler to produce a recovered token equal to the model vocabulary size boundary value, which is then converted to negative one when the engine selects the next live token for a request and is written back into the drafter's input ids; that out-of-vocabulary value is later consumed by the model's embedding and attention path and crashes the engine worker with a GPU device-side assertion. The same triggering request sequence is reachable through the public gRPC Generate and Abort endpoints, so a remote client that can send generation requests can crash the shared engine worker, aborting concurrent requests and causing a service-wide denial of service for other clients of the deployment until the worker is restarted. This issue is fixed in version 0.24.0.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| vllm-project / vllm | affected < 0.24.0 |
CWE
CWE-20, CWE-1284
References
- https://github.com/vllm-project/vllm/security/advisories/GHSA-8wr5-jm2h-8r4f
- https://github.com/vllm-project/vllm/pull/44744
- https://github.com/vllm-project/vllm/commit/8a5cf1ccd65e8ac7635c402c1ec0b08988bc26ca
ADP enrichment
No English description supplied.