CVE-2026-21451CVE-2026-21451是Bagisto开源Laravel电商平台中存在的一个高危存储型跨站脚本(XSS)漏洞。该漏洞位于CMS页面编辑器功能中,影响2.3.10之前的所有版本。攻击者可以通过操纵原始HTTP POST请求来绕过平台的<script>标签过滤机制,从而在CMS内容中注入任意JavaScript代码。由于是存储型XSS,恶意脚本会被永久保存在数据库中,当管理员或其他用户查看或编辑受感染的CMS页面时,恶意代码会自动执行。此漏洞具有极高的危害性,攻击成功可能导致管理员账户完全被接管、后台系统被劫持、敏感数据泄露以及进一步的横向移动攻击。Bagisto官方已在2.3.10版本中修复此安全问题,建议所有用户立即升级。
该漏洞的根本原因在于Bagisto的CMS页面编辑器对用户输入的过滤机制存在缺陷。平台虽然实现了基本的<script>标签过滤功能,但攻击者可以通过以下方式绕过:1) 使用大小写混合的脚本标签如<ScRiPt>;2) 利用HTML实体编码如<script>;3) 在标签属性中注入事件处理器如<img src=x onerror=alert(1)>;4) 操纵HTTP POST请求的原始数据,添加额外的编码层或分块传输来绕过前端验证。由于CMS内容会被存储到数据库中且在页面渲染时直接输出而缺乏足够的输出编码,恶意脚本得以执行。攻击者利用此漏洞可窃取管理员会话Cookie、劫持后台管理权限、修改CMS内容植入钓鱼页面或恶意链接,甚至通过XSS平台进一步探测内网环境。