vLLM: temperature=NaN and temperature=Infinity bypass validation and propagate to GPU kernels
## Summary All temperature validation gates use comparison operators (`<`, `>`), which silently evaluate to `False` for `NaN` and for positive `Infinity` in Python's IEEE 754 float semantics. Both values pass every guard and propagate to GPU sampling kernels, where they produce undefined behavior or CUDA errors that can crash the inference worker. Note: `-Infinity` is correctly caught. ## Root Cause `sampling_params.py:384`: ```python if 0 < self.temperature < _MAX_TEMP: # NaN → False; +Inf → False ``` `sampling_params.py:462`: ```python if self.temperature < 0.0: # NaN → False; +Inf → False raise VLLMValidationError(...) ``` No `math.isnan()` or `math.isinf()` check exists anywhere in `sampling_params.py`. Python semantics (verified): `float('nan') < 0.0` → `False`, `float('inf') < 0.0` → `False`. ## Impact Crash of inference worker on GPU kernel execution with NaN/Inf softmax input, degrading service for all concurrent users. ## Remediation Add `math.isfinite(self.temperature)` check in `_verify_args()`. Reject non-finite float values with a 400 error. ## Fix A fix for this vulnerability was merged here: https://github.com/vllm-project/vllm/pull/45116
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-54235US | medium6.5 | — | ||
vLLM is an inference and serving engine for large language models (LLMs). Prior to 0.23.1rc0, ll temperature validation gates use comparison operators (<, >), which silently evalua… | ||||
references
External citations — patches, advisories, analysis.
- https://github.com/advisories/GHSA-7h4p-rffg-7823ADVISORY
- https://github.com/pypa/advisory-database/tree/main/vulns/vllm/PYSEC-2026-3405.yamlWEB
- https://github.com/vllm-project/vllmPACKAGE
- https://github.com/vllm-project/vllm/commit/d598d239737cfa37bcfcb98886ec3f3557fc7198WEB
- https://github.com/vllm-project/vllm/pull/45116WEB
- https://github.com/vllm-project/vllm/security/advisories/GHSA-7h4p-rffg-7823WEB
- https://nvd.nist.gov/vuln/detail/CVE-2026-54235ADVISORY
- https://pypi.org/project/vllmWEB
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan