PYSEC-2026-2014
vLLM has remote code execution vulnerability in the tool call parser for Qwen3-Coder
At a glance
- Published
- Updated
- CVE
- CVE-2025-9141
- Aliases
- GHSA-79j6-g2m3-jgfw
- CVSS_V3
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Description
### Summary An unsafe deserialization vulnerability allows any authenticated user to execute arbitrary code on the server if they are able to get the model to pass the code as an argument to a tool call. ### Details vLLM's [Qwen3 Coder tool parser](https://github.com/vllm-project/vllm/blob/main/vllm/entrypoints/openai/tool_parsers/qwen3coder_tool_parser.py) contains a code execution path that uses Python's `eval()` function to parse tool call parameters. This occurs during the parameter conversion process when the parser attempts to handle unknown data types. This code path is reached when: 1. Tool calling is enabled (`--enable-auto-tool-choice`) 2. The qwen3_coder parser is specified (`--tool-call-parser qwen3_coder`) 3. The parameter type is not explicitly defined or recognized ### Impact Remote Code Execution via Python's `eval()` function.
Affected packages
| Package | Versions |
|---|---|
| PyPI · vllm | introduced 0.10.0, fixed 0.10.1.1 |
References
- https://github.com/vllm-project/vllm/security/advisories/GHSA-79j6-g2m3-jgfw WEB
- https://github.com/vllm-project/vllm/pull/21396 WEB
- https://github.com/vllm-project/vllm/commit/4594fc3b281713bd3d7634405b4a1393af40d294 WEB
- https://github.com/vllm-project/vllm PACKAGE
- https://pypi.org/project/vllm PACKAGE
- https://github.com/advisories/GHSA-79j6-g2m3-jgfw ADVISORY
- https://nvd.nist.gov/vuln/detail/CVE-2025-9141 ADVISORY
Sources
| Source | Licence |
|---|---|
| OSV.dev | CC-BY 4.0 — PyPA Advisory Database |