CVE-2026-9243CVE-2026-9243是WordPress插件Plus Addons for Elementor中的一个存储型跨站脚本(XSS)漏洞。该漏洞存在于Carousel Anything小工具的carousel_direction参数处理逻辑中,攻击者可利用此漏洞在受影响的页面中注入恶意JavaScript脚本。由于该漏洞为存储型XSS,恶意代码会被永久保存在服务器端,所有访问包含恶意代码页面的用户都会受到攻击。攻击者只需拥有 contributor 级别的账户权限即可实施攻击,无需管理员权限。漏洞根源在于render()函数中虽然使用了esc_attr()进行输出转义,但由于carousel_direction值被放置在未加引号的HTML属性(dir=)中,导致转义措施失效,攻击者可构造恶意属性值突破当前的安全防护。
漏洞位于Plus Addons for Elementor插件的tp_carousel_anything.php文件中。在render()函数的第1143行和第1187行附近,代码将用户输入的carousel_direction参数值直接拼接到HTML属性中。具体问题在于dir属性的赋值方式,代码使用了类似dir=$carousel_direction的写法而非dir="$carousel_direction"。虽然代码调用了esc_attr()函数,但该函数仅对引号内的内容进行转义,对于未加引号的属性值,攻击者可以通过构造特定payload如1 onload=alert(document.cookie)来突破属性边界,注入额外的HTML属性和JavaScript事件处理器。攻击者只需在Carousel Anything小工具的设置中提交恶意payload,当管理员或普通用户访问包含该小工具的页面时,恶意脚本即会执行,可能导致会话劫持、凭据窃取等严重后果。