Database/AI/ML frameworks & serving
vLLM: request-controlled processor code_revision loads arbitrary remote model code, giving RCE
Impact
A client request can choose which revision of the served model repository's dynamic processor code vLLM imports, so attacker-controlled Python executes inside the vLLM API process. On a GPU node that means code running as the serving user with the GPU devices already mapped in: model weights, API keys and any other tenant data held by that server are readable, and the process can be used as a foothold on the node and its network. The /tokenize endpoint is unauthenticated in a default deployment, so no credentials are needed if the endpoint is reachable. Exploitation requires trust_remote_code to be enabled and the attacker to be able to push or control a revision in the served model repository, which narrows it to fleets serving third-party or user-supplied repos.
Who can reach it
Anyone who can reach the vLLM HTTP endpoint - no authentication needed for /tokenize - provided the server was started with trust_remote_code and the attacker controls a revision in the served model repository.
What to do
Upgrade vLLM to 0.31.0 or later and restart each serving process; a rolling restart per replica is enough, no node reboot. Until then, run without trust_remote_code where possible, serve only model repositories you control, and keep the API endpoint off any network a tenant can reach.
References
Related entries
- Crawl4AI: file:// URLs accepted by four endpoints let an unauthenticated caller read any file on the hostCVE-2026-26217 · Crawl4AI Docker API (file:// URL handling in /execute_js, /screenshot, /pdf, /html)Critical
- llama.cpp: use-after-free in the RPC server GRAPH_RECOMPUTE handler gives unauthenticated RCECVE-2026-39909 · llama.cpp RPC server (GRAPH_RECOMPUTE handler)Critical
- llama.cpp llama-server: use-after-free on the vocab pointer during idle sleep gives unauthenticated RCECVE-2026-43631 · llama.cpp llama-server (--sleep-idle-seconds idle transition)Critical
- gitlab-mcp: path traversal in job_id redirects API calls to arbitrary GitLab endpointsCVE-2026-61462 · zereight gitlab-mcp (MCP server, job_id parameter in build/index.js)Critical
- Ray (`/log_proxy`): SSRF from the dashboardCVE-2023-48023 · Ray (`/log_proxy`)Critical
- Qdrant (snapshot recovery): Arbitrary file read and write during snapshot recoveryCVE-2024-3829 · Qdrant (snapshot recovery)Critical
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.