IPBUF安全漏洞报告
English
CVE-2025-45806 CVSS 6.1 中危

CVE-2025-45806: rrweb-snapshot跨站脚本漏洞

披露日期: 2026-04-09

漏洞信息

漏洞编号
CVE-2025-45806
漏洞类型
XSS
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
rrweb-snapshot

相关标签

XSSrrweb-snapshotCVE-2025-45806前端安全DOM XSS

漏洞概述

rrweb-snapshot是rrweb项目的一个组件,用于记录和重放DOM快照。在v2.0.0-alpha.18版本之前,该组件存在一处跨站脚本(XSS)漏洞。攻击者可以通过精心构造的恶意载荷,利用该漏洞在受害者的浏览器中执行任意Web脚本或HTML代码。由于该漏洞无需认证且攻击复杂度低,可能导致用户敏感数据泄露或会话劫持。

技术细节

该漏洞根因在于rrweb-snapshot库在序列化和反序列化DOM节点时,未能严格区分安全数据与可执行代码。具体而言,当快照数据中包含经过特殊构造的HTML元素(例如利用SVG标签的foreignObject特性或特定的DOM属性)时,库在重建DOM的过程中未对其进行转义处理。攻击者首先需要找到能够影响快照数据生成的输入点,或者直接篡改已存储的快照数据。一旦受害者加载了包含恶意载荷的页面,嵌入的脚本将在受害者的浏览器上下文中运行。这允许攻击者窃取Cookie、Session ID等敏感凭据,甚至执行进一步的操作,如钓鱼攻击或利用浏览器的其他API。由于CVSS评分显示需用户交互(UI:R),通常意味着受害者需要点击链接或查看特定的录制回放页面才会触发。

攻击链分析

STEP 1
侦察
攻击者识别目标应用是否使用了rrweb-snapshot库且版本低于v2.0.0-alpha.18。
STEP 2
载荷构造
攻击者构造包含恶意JavaScript代码的HTML载荷,利用SVG或DOM特性绕过基本过滤。
STEP 3
注入
攻击者通过应用接口将恶意载荷注入到快照数据中,或直接篡改存储的快照记录。
STEP 4
触发
受害者访问包含受影响快照的页面,浏览器在重放快照时解析并执行恶意脚本。
STEP 5
利用
恶意脚本执行,窃取受害者的Cookie、Token或执行其他未授权操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- Conceptual PoC for CVE-2025-45806 This payload demonstrates how a malicious script could be injected into a snapshot structure if input validation is missing. --> <script> // Simulating a malicious snapshot node const maliciousSnapshot = { type: 'Element', tagName: 'svg', attributes: { xmlns: 'http://www.w3.org/2000/svg', width: '100', height: '100' }, childNodes: [ { type: 'Element', tagName: 'foreignObject', attributes: { width: '100%', height: '100%' }, childNodes: [ { type: 'Element', tagName: 'div', attributes: {}, childNodes: [ { type: 'Element', tagName: 'script', attributes: {}, childNodes: [ { type: 'Text', textContent: 'alert("CVE-2025-45806 XSS Triggered");' } ] } ] } ] } ] }; // In a vulnerable version of rrweb-snapshot, rebuilding this node // would execute the script inside the foreignObject. console.log('Malicious Payload Generated'); </script>

影响范围

rrweb-snapshot < v2.0.0-alpha.18

防御指南

临时缓解措施
如果无法立即升级,建议对存储的rrweb快照数据进行清洗,移除或转义<script>标签、事件处理器(如onerror, onload)以及SVG中的foreignObject等潜在危险元素。同时,确保快照重放功能在受限的上下文环境中运行,并开启浏览器的安全防护机制。

参考链接

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