跳到主要内容

CVE-2026-0765

CVE IDCVE-2026-0765
厂商处理已拒绝 — 不是漏洞
发布时间2026-01-23
发布 CNAZero Day Initiative(ZDI-26-031)
声称严重性高(CVSS 8.8 — CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWECWE-78(操作系统命令注入)

CVE 声称内容

backend/open_webui/utils/plugin.py 中的函数 install_frontmatter_requirements 声称允许低特权认证的远程攻击者通过将恶意包名称注入工具或函数 YAML frontmatter 的 requirements 字段来执行任意代码,然后函数通过 subprocess.check_call 将其传递给 pip install


为什么这不是漏洞

install_frontmatter_requirements 是 Open WebUI 用户撰写的工具和函数 YAML frontmatter 中声明的 Python 包依赖项安装的有文档的机制。工具和函数是用户撰写的 Python 模块,服务器加载、执行并保存在内存中。作者通过 frontmatter 声明 pip 依赖项,服务器首次加载时解决它们。这镜像可比扩展系统的依赖声明模型(带有 %pip install 的 Jupyter 笔记本、n8n 代码节点、Home Assistant python_script)。

到固定管道中没有"注入"。 用户不是将命令注入他人的操作 — 他们正在提交包括声明依赖项列表的 Python 源代码,服务器安装这些依赖项并执行代码——这是设计意图。该情景中的"攻击者"是一个用户行使他们被明确授予的代码执行权利。

访问控制

该函数仅通过管理员门禁的路由可到达(POST /api/v1/tools/createPOST /api/v1/tools/id/{id}/update 以及类似函数端点)。这些路由需要 user.role == 'admin'workspace.tools 权限,它是为非管理员用户默认禁用的。授予 workspace.tools 在文档中被记录为等同于给用户服务器的 shell 访问权限。没有渠道允许非特权用户到达此函数。

CVSS 准确性

发布的 CVSS 将特权要求评为 PR:L(低)。这在方法上是不正确的 — 该函数仅可被管理员(PR:H)或被明确授予根等效权限的用户到达。

适用的安全政策规则

  • 规则 10 涉及工具或函数的报告 — 包括代码执行和基于 frontmatter 的 pip 安装 — 作为预期行为关闭。
  • 规则 9 "将不受信任的代码粘贴到函数/工具中"被明确引用为超出范围。
  • 规则 1 预期协议行为不是漏洞。

对用户的影响

无需行动。 本 CVE 描述了设计中的预期行为。如果您已授予 workspace.tools 给不受信任的用户,请审查插件安全文档 — 但这是配置决定,而不是漏洞。


参考

本内容仅供参考,不构成任何保证、担保或合同承诺。Open WebUI 按“现状”提供。请参阅您的许可协议 以了解适用条款。