CVE-2025-14298FiboSearch – Ajax Search for WooCommerce是WordPress平台上一款广受欢迎的WooCommerce搜索增强插件。该插件在1.32.0及以下所有版本中存在一处严重的存储型跨站脚本漏洞。漏洞源于插件的thegem_te_search短代码功能对用户输入的属性值缺乏充分的输入过滤和输出转义处理。攻击者只需拥有WordPress网站的Contributor级别权限(及以上),即可利用此漏洞在受影响的页面中注入任意JavaScript脚本。由于是存储型XSS,恶意脚本会被永久保存在数据库中,当其他用户访问包含恶意代码的页面时,脚本将自动执行,可能导致会话劫持、敏感信息窃取、管理后台被接管等严重后果。此漏洞的利用条件较为特殊,需要网站同时安装TheGem高级主题并启用其Header Builder模式,同时FiboSearch插件的"Replace search bars"选项需开启以启用TheGem集成功能。
该漏洞的核心问题在于短代码属性处理过程中缺少适当的输入验证和输出编码。FiboSearch插件的thegem_te_search短代码在处理用户提供的属性参数时,直接将未经过滤的数据传递给前端渲染逻辑。具体而言,问题代码位于插件partials/themes/thegem-elementor.php文件的第94行和第104行附近。攻击者可以通过构造带有恶意JavaScript代码的属性值(如在短代码参数中注入onerror、onload等事件处理器或script标签)来实现XSS攻击。由于插件使用echo或直接输出HTML的方式渲染内容,而没有对属性值进行htmlspecialchars()或esc_html()等转义处理,导致恶意脚本被浏览器解析执行。攻击者利用Contributor权限创建或编辑文章/页面,在其中嵌入包含恶意短代码的内容,即可实现持久化攻击。访问该页面的任何用户都会触发恶意脚本,包括管理员和其他高权限用户。