CVE-2023-53903CVE-2023-53903是WebsiteBaker 2.13.3版本中存在的一个存储型跨站脚本(XSS)安全漏洞。该漏洞允许已认证的低权限用户上传包含恶意JavaScript代码的SVG文件。当其他用户访问或查看这些被上传的SVG文件时,嵌入其中的恶意脚本会在受害者浏览器中执行,从而实现持久性的跨站脚本攻击。攻击者可以利用此漏洞窃取受害者的会话Cookie、劫持用户账户、进行钓鱼攻击或在受害者权限范围内执行操作。由于SVG文件格式支持内嵌脚本标签,攻击者可以构造看似正常的图片文件实际上包含可执行的JavaScript代码。此漏洞的危险性在于攻击一旦成功,恶意代码将持久存在于服务器上,所有访问该文件的用户都会受到影响,形成大范围的攻击面。
该漏洞源于WebsiteBaker对上传SVG文件的安全验证不足。SVG(Scalable Vector Graphics)是一种基于XML的矢量图形格式,支持在文件内部嵌入JavaScript脚本。当用户上传SVG文件时,系统未对文件内容进行充分的HTML/Script标签过滤和内容安全策略(CSP)检查。攻击流程如下:1) 攻击者以低权限账户登录WebsiteBaker系统;2) 利用文件上传功能上传精心构造的SVG文件,该文件包含<script>标签或SVG特有的事件处理属性(如onload);3) SVG文件被存储在服务器可访问的目录下;4) 当其他用户访问该SVG文件URL时,浏览器会解析SVG内容并执行其中的JavaScript代码;5) 恶意脚本以受害者的会话上下文执行,可窃取敏感信息或执行未授权操作。防御要点:应对所有用户上传的文件内容进行严格过滤,特别是对SVG、HTML等可能包含脚本的文件类型实施内容类型白名单控制和内容安全扫描。