CVE-2026-0766
| CVE ID | CVE-2026-0766 |
| 厂商处理 | 已拒绝 — 不是漏洞 |
| 发布时间 | 2026-01-23 |
| 发布 CNA | Zero Day Initiative(ZDI-26-032) |
| 声称严重性 | 高(CVSS 8.8 — CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) |
| CWE | CWE-94(代码注入) |
CVE 声称内容
backend/open_webui/utils/plugin.py 中的函数 load_tool_module_by_id 声称允许低特权认证的远程攻击者通过提交包含任意 Python 的工具来执行任意 Python 代码,然后函数将其传递给 exec()。
为什么这不是漏洞
load_tool_module_by_id 是 Open WebUI 加载用户撰写的工具的核心机制。工具是用户撰写并由服务器执行的 Python 模块 — 这是显式功能设计。该函数从数据库读取工具源、解析其 frontmatter 并对源调用 exec() 来实例化模块。没有"验证"可被添加;输入是用户已提交要执行的 Python 模块。
这镜像每个其他代码扩展系统的设计:Jupyter 执行笔记本单元,n8n 执行代码节点,Home Assistant 执行 python_script 文件。对提 交的代码调用 exec() 是功能,而不是缺陷。
访问控制
调用 load_tool_module_by_id 的路由由 user.role == 'admin' 或 workspace.tools 权限进行门禁,它为非管理员用户默认禁用的。授予 workspace.tools 在文档中被记录为等同于给用户服务器的 shell 访问权限。没有渠道允许非特权用户到达此函数。
CVSS 准确性
发布的 CVSS 将特权要求评为 PR:L(低)。这在方法上是不正确的 — 该函数仅可被管理员(PR:H)或被明确授予根等效权限的用户到达。
适用的安全政策规则
- 规则 10: 工具功能被设计为在服务器上执行用户提供的 Python 代码。涉及工具或函数的报告作为预期行为关闭。
- 规则 9: "将不受信任的代码粘贴到函数/工具中"被明确引用为超出范围。
- 规则 1: 预期协议行为不是漏 洞。
对用户的影响
无需行动。 本 CVE 描述了设计中的预期行为。工具按设计在服务器上执行 Python 代码。如果您已授予 workspace.tools 给不受信任的用户,请审查插件安全文档。