CVE-2023-53876CVE-2023-53876是Academy LMS 6.1版本中的一个安全漏洞,属于文件上传与存储型跨站脚本(XSS)的组合漏洞。该漏洞允许已认证用户在个人资料设置中通过修改文件扩展名上传包含恶意JavaScript代码的SVG文件。由于SVG文件被存储在服务器上且可被其他用户访问,嵌入其中的恶意脚本会在受害者查看个人资料时自动执行,从而实现存储型XSS攻击。攻击者利用此漏洞可窃取用户会话cookie、劫持用户账户、执行任意客户端操作或进行钓鱼攻击。此漏洞需要低权限认证用户即可实施,且CVSS评分5.4表明其具有中等严重性,需要用户交互才能完成攻击。
漏洞根源在于Academy LMS 6.1的文件上传验证机制存在缺陷。系统在处理用户头像上传时,仅检查文件扩展名而非验证文件内容,允许攻击者将包含恶意JavaScript代码的SVG文件伪装成正常图片上传。SVG格式支持内联JavaScript脚本,当其他用户访问攻击者的个人资料页面时,浏览器会解析并执行SVG中嵌入的脚本代码。攻击者可通过修改文件扩展名(如将.php改为.jpg或.svg)绕过基础过滤,服务器端未进行MIME类型或文件内容深度检查。攻击流程:首先以低权限用户登录系统,然后构造包含<script>标签或SVG-onload事件的恶意SVG文件,通过个人设置中的头像上传功能提交,服务器错误地将恶意文件存储为静态资源,最后当管理员或其他用户查看攻击者资料时触发XSS执行。