CVE-2026-46363phpMyFAQ 4.1.2 之前的版本中存在存储型跨站脚本漏洞。该漏洞出现在FAQ创建和更新接口,攻击者可以通过特定的编码-解码循环绕过输入过滤机制。拥有FAQ_ADD权限的攻击者可以在问题或答案字段中注入恶意脚本。当其他用户访问包含该FAQ的页面时,若内容使用raw Twig过滤器渲染,恶意脚本将在受害者浏览器中执行,导致会话劫持或信息泄露。
该漏洞的核心在于应用程序的输入净化逻辑存在缺陷。尽管系统尝试过滤用户输入,但攻击者利用编码-解码循环成功绕过了这些安全检查。具体利用方式是,攻击者向FAQ的“问题”或“答案”参数提交经过特殊编码的恶意HTML标签(如<script>或<img>)。由于过滤机制无法正确处理这种编码转换,恶意代码被存储到数据库中。当后端使用Twig模板引擎渲染FAQ内容时,使用了`raw`过滤器,这导致变量内容不经过自动HTML转义。因此,存储的恶意JavaScript代码被直接发送到客户端并在浏览器中执行,形成存储型XSS攻击。