Frappe Framework v16.10.0 存储型 DOM XSS 漏洞总结 漏洞概述 漏洞名称:Frappe Framework v16.10.0 - Stored DOM XSS in Multiple Field Formatters CVE ID:CVE-2026-3837 CVSS 评分:4.6 (Medium) 漏洞类型:存储型 DOM XSS (Stored DOM XSS) 发现者:Oscar Uribe (Fluid Attacks AI SAST Scanner) 漏洞描述:经过身份验证的攻击者可以在多种字段类型中持久化构造的值,并在其他用户打开受影响的文档时触发客户端脚本执行。易受攻击的格式化程序实现将存储的值插入到原始 HTML 属性和元素内容中,且未进行转义。 影响范围 受影响软件:Frappe Framework 受影响版本:v16.10.0 受影响组件: Color (颜色) 格式化程序 Icon (图标) 格式化程序 利用条件:需要用户拥有登录权限(Authenticated attacker)。 修复方案 当前状态:目前尚无针对此漏洞的补丁可用 (There is currently no patch available for this vulnerability)。 建议:等待官方发布修复补丁。 POC 代码与利用细节 1. 漏洞路径分析 Source: 攻击者控制的字段值通过正常的 Web 流提交并在传输中被篡改。 Persistence: 后端存储了这些值,因为这些字段类型没有经过严格的服务器端验证,且 HTML 清理器未对包含 或 的负载触发。 Sink builders: 渲染器: 渲染器: 函数: DOM insertion: 格式化后的 HTML 被插入到 Desk 的显示模式中,导致属性注入成为可能。 2. 相关代码文件 (Lines 397-409) (Lines 1424-1452) 3. 具体利用代码 (PoC) Color formatter (颜色格式化程序) 1. 以经过身份验证的用户身份登录到 Desk。 2. 打开包含 Color 字段的文档。 3. 使用 Burp Suite 拦截保存请求,并将 Color 字段值替换为: 4. 转发请求以存储篡改后的值。 5. 访问受影响的记录。 Icon formatter (图标格式化程序) 1. 以经过身份验证的用户身份登录到 Desk。 2. 打开包含 Icon 字段的文档。 3. 使用 Burp Suite 拦截保存请求,并将 Icon 字段值替换为: 4. 转发请求以存储篡改后的值。 5. 访问受影响的记录。