CVE-2026-43887Outline是一款允许协作文档编写的服务。在0.84.0至1.6.1版本中,Outline的评论部分允许用户提及(mention)其他用户,但后端在处理这些提及时,未对关联的`href`属性进行有效的验证或清理。这导致危险的协议(如`javascript:`)未被过滤,引入了客户端代码执行的风险。攻击者可以利用此漏洞在受害者浏览器中执行恶意JavaScript代码,窃取敏感信息或劫持会话。该漏洞已在1.7.0版本中修复。
该漏洞源于Outline后端对于用户生成内容(特别是评论中的“提及”功能)的过滤机制存在缺陷。当用户在评论中提及其他用户时,系统通常会生成一个指向该用户资料的HTML锚点标签(<a>)。在受影响版本中,后端未对`href`属性的值进行严格的安全校验和清洗,直接将用户输入的数据渲染到HTML中。攻击者首先需要拥有Outline平台的普通用户权限(PR:L)。随后,攻击者可以在发布评论时,利用API或前端输入的缺陷,将提及链接的`href`属性修改为`javascript:alert(1)`或其他恶意代码。由于这是一个存储型XSS漏洞,恶意数据会被持久化保存在数据库中。当其他用户(尤其是管理员)浏览包含该恶意评论的文档页面时(UI:R),浏览器会解析HTML标签并执行`javascript:`协议后的脚本。这可能导致Cookie窃取、账户接管或进一步的客户端攻击。CVSS向量表明该漏洞通过网络攻击,攻击复杂度低,且对机密性和完整性影响较高。