CVE-2026-46367phpMyFAQ 4.1.2之前的版本中存在严重的存储型跨站脚本(XSS)漏洞。该漏洞源于Utils::parseUrl()组件未能正确净化用户输入,允许经过身份验证的攻击者在评论字段中提交包含恶意JavaScript代码的畸形URL。当管理员或其他用户浏览包含该评论的FAQ页面时,恶意代码将在其浏览器中执行。攻击者利用此漏洞可窃取敏感的会话Cookie,进而劫持管理员账户,实现对应用程序的完全控制。
该漏洞的核心在于phpMyFAQ的Utils::parseUrl()函数对URL解析逻辑存在缺陷。当用户在评论中提交URL时,该函数尝试解析并渲染链接,但未对URL中的特殊字符(特别是单引号和双引号)进行充分的HTML实体编码。这使得攻击者能够利用未转义的引号闭合原本的HTML标签属性,并注入任意的事件处理器(如onerror、onmouseover或onload)。攻击者构造的Payload被存入数据库后,前端页面在渲染时将其解析为可执行脚本。由于这是存储型XSS,恶意脚本持久化存在于服务器端,任何访问该页面的受害者都会触发攻击。攻击者可通过document.cookie窃取凭证,进而接管管理员权限。