Free AI Safety Workshop — in collaboration with explainx.aiSave your seat
AgentbeamBeta
AI agent vulnerability · vLLM

CVE-2026-22807: vLLM affected by RCE via auto_map dynamic module loading during model initialization

highCVSS 3.1 8.8GHSA-2pc9-4j83-qjmr

Summary vLLM loads Hugging Face automap dynamic modules during model resolution without gating on trustremotecode, allowing attacker-controlled Python code in a model repo/path to execute at server startup. --- Impact An attacker who can influence the model repo/path (local directory or remote Hugging Face repo) can achieve arbitrary code execution on the vLLM host during model load.

Published Jan 21, 2026 · Updated Jul 21, 2026

Affected packages

vllm

Ecosystem
PyPI
Affected
>= 0.10.1, < 0.14.0
Fixed in
0.14.0
Check
pip show vllm

Advisory details

From the GitHub Advisory Database (CC BY 4.0).

Summary

vLLM loads Hugging Face auto_map dynamic modules during model resolution without gating on `trust_remote_code`, allowing attacker-controlled Python code in a model repo/path to execute at server startup.

---

Impact

An attacker who can influence the model repo/path (local directory or remote Hugging Face repo) can achieve arbitrary code execution on the vLLM host during model load. This happens before any request handling and does not require API access.

---

Affected Versions

All versions where vllm/model_executor/models/registry.py resolves auto_map entries with try_get_class_from_dynamic_module without checking `trust_remote_code` (at least current main).

---

Details

During model resolution, vLLM unconditionally iterates auto_map entries from the model config and calls try_get_class_from_dynamic_module, which delegates to Transformers’ get_class_from_dynamic_module and executes the module code.

This occurs even when trust_remote_code is false, allowing a malicious model repo to embed code in a referenced module and have it executed during initialization.

Relevant code

  • vllm/model_executor/models/registry.py:856 — auto_map resolution
  • vllm/transformers_utils/dynamic_module.py:13 — delegates to get_class_from_dynamic_module, which executes code

---

Fixes

  • https://github.com/vllm-project/vllm/pull/32194

Credits

Reported by bugbunny.ai

Credited to zaddy6, arthurgervais, DarkLight1337, russellb.

References

How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology

More vLLM vulnerabilities

All vLLM entries