漏洞概述 漏洞名称: Hardcoded in Model Implementations Bypasses User Security Control in vllm-project/vllm CVE编号: CVE-2025-4944 漏洞类型: CWE-22: Path Traversal 严重程度: High (8.8) 攻击向量: Network 攻击复杂度: Low 特权要求: None 用户交互: Required 范围: Unchanged 机密性: High 完整性: High 可用性: High 注册表: PyPI 受影响版本: 0.6.1 可见性: Public 状态: Awaiting fix 发现者: William Goodfellow 影响范围 远程代码执行: 通过恶意模型在HuggingFace上执行远程代码。 安全控制绕过: 用户的显式 设置被忽略。 相同漏洞类别: 与CVE-2025-66448 (CVSS 7.1) 和 CVE-2026-22807 相同的不完整修复。 影响所有部署: 影响所有加载 NemotronVL 或 Kimik25 模型的部署,除非设置 。 修复方案 修复 NemotronVL 模型 文件: 修复代码: 修复 Kimik25 模型 文件: 修复代码: 漏洞详情 漏洞代码实例 1: NemotronVL 视觉模型 文件: 第430行 漏洞代码: 漏洞代码实例 2: Kimik25 图像处理器 文件: 第177行 漏洞代码: 攻击场景 设置(攻击者) 1. 在HuggingFace上创建一个具有 架构的模型。 2. 使用标准的、合法的 ,该文件不需要主模型的自定义代码。 3. 在 部分的 中设置 以引用自定义模型类。 示例配置: 4. 在仓库中包含 ,其中包含任意恶意代码,在导入时执行。 示例恶意代码: 利用(受害者) 1. 受害者使用安全预防措施启动 vLLM: 2. vLLM 的配置文件加载器尊重 ,适用于主模型配置(CVE-2025-66448 修复有效)。 3. vLLM 识别架构为 并选择内置的 实现。 4. 在模型初始化期间, 调用: 5. HuggingFace 的 看到 并下载 从攻击者的仓库。 6. 恶意代码在导入时执行 — 实现远程代码执行(RCE)。 为什么用户的退出被违反 用户明确说“不要信任远程代码”通过设置 。配置文件加载路径尊重这一点(感谢 CVE-2025-66448 修复)。但模型实现路径忽略它,通过硬编码 。用户的安全意图被静默覆盖。 影响 远程代码执行: 通过恶意模型在HuggingFace上执行远程代码。 安全控制绕过: 用户的显式 设置被忽略。 相同漏洞类别: 与CVE-2025-66448 (CVSS 7.1) 和 CVE-2026-22807 相同的不完整修复。 影响所有部署: 影响所有加载 NemotronVL 或 Kimik25 模型的部署,除非设置 。 修复方案 替换硬编码的 为用户配置的设置: 修复 NemotronVL 模型 文件: 修复代码: 修复 Kimik25 模型 文件: 修复代码: 此外,应对模型实现文件中的其他硬编码 实例进行代码库范围的审计。 与先前 CVE 的关系 两个先前的 CVE 解决了 绕过问题在配置/启动路径中。此发现解决了相同漏洞类别在模型实现文件中 — 一个不同的代码路径,未被任何一个修复覆盖。 发生情况 nemotron_vl.py L430: — 硬编码,忽略用户设置 kimi_k25.py L177: — 硬编码,忽略用户设置 参考 正确模式 — 传递 CVE-2025-66448 — 相同漏洞类别,在配置加载路径中修复,但在模型实现中遗漏