CVE-2026-9134CVE-2026-9134是WordPress FooGallery插件中的一个存储型跨站脚本(XSS)漏洞。该漏洞存在于插件的短代码处理功能中,攻击者可以通过'custom_attribute_key'参数注入恶意JavaScript代码。由于插件的foogallery_sanitize_javascript()函数存在不完整的黑名单过滤机制,仅阻止了部分HTML事件属性(如onmouseover、onmouseout、onclick等),而遗漏了'onmouseenter'等事件,导致攻击者可以绕过安全检查。此外,foogallery_build_container_attributes_safe()函数在构建HTML时未正确转义属性键值,使得注入的恶意脚本能够被存储并在用户访问时被执行。成功利用此漏洞需要攻击者具有贡献者级别或更高的WordPress账户权限。
该漏洞的技术根源在于两个安全缺陷的组合。首先,foogallery_sanitize_javascript()函数采用黑名单方式过滤JavaScript事件处理器,但黑名单不完整——仅包含onmouseover、onmouseout、onpointerenter、onclick、onload、onchange、onerror等事件,而遗漏了onmouseenter等事件。这使得攻击者可以使用被遗漏的事件属性来注入恶意代码。其次,在foogallery_build_container_attributes_safe()函数中构建画廊容器HTML属性时,未对属性键进行适当的HTML转义。当custom_attribute_key参数被设置为包含恶意事件处理器(如onmouseenter)的形式时,该属性会被直接添加到HTML中而不经过转义处理,从而形成存储型XSS。攻击者通过在页面或文章的短代码中注入恶意属性,当其他用户访问包含该短代码的页面时,恶意JavaScript代码会自动执行,可能导致会话劫持、敏感信息窃取等安全问题。