CVE-2026-35460Papra是一个极简主义的文档管理和归档平台。在26.4.0版本之前,其事务性邮件模板在处理用户显示名称时存在安全缺陷。系统直接将用户名插入到HTML邮件模板中,未进行任何转义或清理处理。攻击者可以注册一个包含恶意HTML标签的显示名称,这些标签随后会被注入到账户验证或密码重置邮件的正文中。由于这些邮件来自合法的官方域名,攻击者利用此漏洞可以伪造极具欺骗性的钓鱼攻击,诱导用户点击恶意链接或窃取凭证。该漏洞在26.4.0版本中已得到修复。
该漏洞的根本原因在于Papra平台在构建事务性邮件(如注册验证邮件、密码重置邮件)时,使用了不安全的模板渲染机制。具体而言,后端代码直接将用户数据库中的`user.name`字段值通过字符串插值的方式嵌入到HTML邮件模板中,而没有使用上下文感知的转义函数(如HTML实体编码)。攻击者利用此漏洞的流程如下:首先,攻击者在Papra平台上注册一个新账户,并将显示名称设置为包含恶意HTML代码的字符串(例如`<a href='http://evil.com'>点击重置密码</a>`)。当系统触发向该用户发送邮件的逻辑时,模板引擎会将原始的用户名直接渲染到邮件正文中。由于邮件的发件人地址是官方域名,收件人很难辨别真伪。虽然现代邮件客户端通常会阻止JavaScript执行以防止XSS,但注入伪造的链接足以实施高效的钓鱼攻击,破坏了系统的完整性。