CVE-2025-12976CVE-2025-12976是WordPress平台下Events Manager插件的一个高危安全漏洞。该插件是一款功能强大的事件管理工具,支持日历展示、活动预订、票务管理等功能,被广泛应用于各类WordPress网站中。漏洞存在于插件的events_list_grouped短代码功能中,由于对用户提供的属性参数缺乏充分的输入清理和输出转义处理,导致攻击者可以在特定页面注入恶意JavaScript代码。攻击成功后,当其他用户访问被注入的页面时,恶意脚本将在其浏览器上下文中执行,从而实现会话劫持、敏感信息窃取、钓鱼攻击等恶意操作。鉴于该漏洞属于存储型XSS,恶意代码会被永久保存在服务器端,影响范围更广,危害程度更高。所有使用该插件且版本在7.2.2.1及以下的WordPress网站均受此漏洞影响。
漏洞根源在于Events Manager插件的em-shortcode.php文件中events_list_grouped短代码的实现逻辑。该短代码允许用户通过属性参数自定义事件列表的展示方式,然而插件在处理这些用户输入的属性值时,未进行严格的输入验证和适当的输出编码。具体来说,当用户在短代码中传入包含恶意JavaScript脚本的属性值时,这些未经过滤的输入被直接嵌入到生成的HTML页面中。由于浏览器会将这些脚本内容作为合法代码执行,攻击者即可利用此漏洞实现跨站脚本攻击。攻击者只需拥有WordPress网站的contributor角色或更高权限,即可利用此漏洞在任意页面注入恶意代码。由于短代码可能被添加到文章、页面或Widget中,受影响的页面范围可能覆盖整个网站。修复此漏洞需要在输出时对所有用户可控的属性值进行HTML实体编码转义,并在输入阶段实施严格的输入验证机制。