IPBUF安全漏洞报告
English
CVE-2026-38432 CVSS 6.1 中危

CVE-2026-38432 ERPNext邮件模板存储型XSS漏洞

披露日期: 2026-05-05

漏洞信息

漏洞编号
CVE-2026-38432
漏洞类型
跨站脚本攻击 (XSS)
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
ERPNext

相关标签

XSSStored XSSERPNextCWE-79Cross Site Scripting

漏洞概述

ERPNext v15.103.1及之前版本的邮件模板引擎中发现存在存储型跨站脚本(XSS)漏洞。由于系统未对邮件模板内容进行严格的过滤与转义,拥有创建或编辑模板权限的攻击者可以注入恶意JavaScript代码。当其他用户访问或应用该受污染的模板时,恶意脚本将在其浏览器上下文中执行。攻击者可利用此漏洞窃取用户会话凭证、执行未授权操作或进行钓鱼攻击。

技术细节

该漏洞属于存储型XSS(Stored XSS)。ERPNext基于Frappe框架,其邮件模板功能允许用户使用HTML格式编辑内容。在受影响版本中,应用对于HTML输入的净化机制不完善,允许攻击者插入如<script>、<img onerror=>等恶意标签。攻击载荷被持久化存储在数据库中,具有高权限或低权限的攻击者一旦完成注入,任何触发该模板渲染的用户(包括管理员)都将受到攻击。根据CVSS向量CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N,攻击复杂度低,且范围可变更(S:C),意味着恶意代码可能脱离当前页面上下文,影响浏览器中的其他组件,增加了攻击的隐蔽性和危害性。

攻击链分析

STEP 1
侦察
攻击者确认目标系统使用的是ERPNext v15.103.1或更早版本,并识别出具有邮件模板编辑权限的账户接口。
STEP 2
注入
攻击者登录系统,导航至“Email Template”模块,创建或编辑一个模板,并在HTML字段中注入恶意JavaScript代码(如窃取Cookie的脚本)。
STEP 3
存储
系统将包含恶意代码的模板数据保存到后端数据库中,此时漏洞载荷已被持久化。
STEP 4
触发
当管理员或普通用户访问包含该模板的页面、预览邮件或系统自动调用该模板发送通知时,后端将恶意HTML返回给客户端。
STEP 5
执行
受害者的浏览器解析响应内容,执行其中的恶意脚本,导致敏感信息泄露或会话被劫持。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2026-38432: Stored XSS in ERPNext Email Template --> <!-- Step 1: Navigate to Email Template List and create new template --> <!-- Step 2: Insert the following payload into the HTML content field --> <div> <h3>Template Content</h3> <!-- Malicious Payload to demonstrate XSS --> <img src=x onerror=alert('CVE-2026-38432: ' + document.cookie)> </div> <!-- Step 3: Save the template --> <!-- Step 4: Preview the template or trigger an email using this template --> <!-- Step 5: Observe the alert box executing JavaScript in the browser -->

影响范围

ERPNext <= v15.103.1

防御指南

临时缓解措施
在未升级补丁前,建议管理员严格限制拥有邮件模板编辑权限的用户数量,仅允许可信的核心管理员访问该功能。同时,建议部署Web应用防火墙(WAF)并配置针对XSS攻击的检测规则,以拦截潜在的可疑脚本提交。用户在查看系统生成的邮件预览时应保持警惕。

参考链接

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