CVE-2021-47925CMDBuild 3.3.2版本中存在严重的存储型跨站脚本(XSS)漏洞。经过身份验证的攻击者可利用系统在卡牌创建和文件上传端点的输入验证缺陷,通过精心设计的输入注入任意Web脚本或HTML。攻击者既可以通过Employee卡参数植入恶意代码,也可以上传包含载荷的SVG文件。当管理员或其他用户访问被污染的记录或预览附件时,恶意脚本将在其浏览器上下文中执行,进而窃取敏感信息或劫持用户会话。
该漏洞主要源于CMDBuild 3.3.2在处理用户输入和文件上传时缺乏有效的安全过滤机制。攻击者首先需要获得一个低权限的账户,随后利用系统在创建卡片(如Employee卡片)时的参数注入点,或者在classes端点上传特制的SVG文件。SVG文件作为一种矢量图形格式,支持嵌入XML和JavaScript代码,若服务器未对上传文件内容进行深度检测,攻击者可将恶意载荷封装在SVG中。当这些恶意数据被持久化存储到数据库后,一旦管理员或其他具有高权限的用户浏览受影响的卡片记录或尝试预览上传的附件,服务器会直接将未转义的HTML/JS内容发送给客户端。受害者的浏览器解析响应后,恶意脚本立即在当前用户的会话上下文中运行。由于是存储型XSS,攻击者无需诱骗用户点击特定链接,只需等待受害者访问特定页面即可实施攻击,从而窃取凭证、篡改数据或进行钓鱼操作。