CVE-2025-62793eLabFTW是一款开源的电子实验室笔记本应用,广泛应用于研究机构和企业实验室环境中。该应用允许用户上传各类文件包括SVG格式图像。然而,由于应用在处理SVG文件时采用内联显示方式,直接在浏览器中渲染SVG内容,而SVG格式本身支持JavaScript等活动内容,这为存储型跨站脚本攻击(Stored XSS)创造了条件。攻击者可以利用此漏洞上传精心构造的恶意SVG文件,当受害者访问该SVG文件URL或任何嵌入该SVG的页面时,嵌入在SVG中的恶意JavaScript代码将在受害者浏览器中执行。由于攻击在应用Origin下执行,攻击者可以窃取受害者的会话Cookie、读取页面敏感数据、模拟用户执行操作,甚至进一步横向移动攻击。由于漏洞存在于文件上传功能,攻击者只需要拥有低权限账户即可利用此漏洞,且需要诱导受害者访问恶意文件或包含该文件的页面。
漏洞存在于eLabFTW的文件上传和展示模块。当用户上传SVG文件后,系统将其存储在服务器端,并在用户访问时通过Content-Type为image/svg+xml的方式内联返回。由于SVG是一种基于XML的矢量图形格式,支持<script>标签、事件处理器(如onload、onerror)以及<foreignObject>元素嵌入任意HTML内容,攻击者可以构造包含JavaScript代码的恶意SVG文件。例如,使用<svg>标签配合<script>或事件属性即可执行任意JavaScript代码。由于响应头中未设置Content-Security-Policy限制,且SVG在应用域下执行,恶意脚本可以访问同源资源。攻击者上传恶意SVG后,获取其URL地址,通过社工手段诱导管理员或研究人员访问,即可窃取session token或执行特权操作。修复方案在版本5.3.0中通过禁止SVG内联显示或对SVG内容进行安全过滤实现。