CVE-2025-68927Libredesk是一款自托管的客户支持系统。在0.8.6-beta之前的版本中,存在严重的存储型HTML注入漏洞。该漏洞位于联系笔记功能模块,当用户通过POST /api/v1/contacts/{id}/notes接口添加笔记时,后端会自动将用户输入内容包装在<p>标签中。然而,攻击者可以通过拦截HTTP请求并移除<p>标签的方式,注入任意HTML元素如<form>、<img>等。这些恶意内容会被直接存储到数据库中,并在其他用户访问时未经适当清理直接渲染执行。此漏洞可被利用进行钓鱼攻击、CSRF风格的强制操作、UI伪装攻击等,严重威胁用户数据安全和系统完整性。攻击者无需认证即可利用此漏洞,但需要诱导受害者进行交互操作。
漏洞根源在于Libredesk后端对用户输入的过滤机制存在缺陷。当用户提交笔记内容时,系统默认使用<p>标签包裹输入内容作为安全措施,但这种基于标签白名单的保护机制可通过拦截请求轻易绕过。攻击者使用Burp Suite等代理工具拦截POST请求,将自动生成的<p>标签删除或修改,然后注入包含<script>标签、<form>表单或<iframe>等HTML元素的恶意载荷。由于后端仅依赖前端生成的标签结构而未进行二次输入验证,且前端渲染时缺少严格的HTML净化处理,导致恶意代码被持久化存储并执行。成功利用此漏洞后,攻击者可窃取会话Cookie、伪造登录表单收集凭据、或诱导用户执行非预期的操作。