CVE-2025-9045CVE-2025-9045是WordPress平台上一款名为Easy Elementor Addons的插件中存在的存储型跨站脚本(Stored XSS)漏洞。该插件在Elementor页面构建器的基础上提供了多种增强的小组件(widget),被广泛应用于WordPress网站的快速搭建中。
根据漏洞披露信息,该漏洞影响Easy Elementor Addons插件2.2.9及以下所有版本。漏洞的根本原因在于插件中的多个widget参数缺少充分的输入过滤(sanitization)和输出转义(escaping)机制,导致攻击者可以将恶意JavaScript代码作为widget参数值存储到服务器端。当其他用户访问包含恶意代码的页面时,存储在页面中的恶意脚本将在用户浏览器中自动执行。
该漏洞由WordPress安全公司Wordfence的安全团队([email protected])发现并披露,CVSS 3.1评分为6.4分,属于中危级别。攻击者需要具备Contributor(投稿者)及以上的WordPress用户权限才能利用此漏洞,因此该漏洞的利用门槛相对较低,在多用户协作的WordPress站点中尤其需要引起重视。漏洞影响范围包括Countdown(倒计时)模块和Image Comparison(图片对比)模块中的多个参数。
该存储型XSS漏洞存在于Easy Elementor Addons插件的多个widget中,主要涉及Countdown(倒计时)模块和Image Comparison(图片对比)模块。
从技术层面分析,漏洞产生的原因如下:
1. **输入过滤不足**:插件在处理用户通过Elementor编辑器提交的widget参数时,未对用户输入进行充分的HTML标签过滤和特殊字符转义处理。例如,Countdown模块中的多个参数(位于countdown.php第864、868、871行附近)以及Image Comparison模块中的参数(位于image-comparison.php第376、377行附近)均存在此类问题。
2. **输出转义缺失**:即使部分输入进行了过滤,插件在最终输出widget内容到前端页面时,也未使用WordPress标准函数(如esc_html()、esc_attr()、wp_kses_post()等)进行输出转义,导致恶意脚本能够原样渲染到页面HTML中。
3. **存储型触发机制**:与反射型XSS不同,存储型XSS的恶意载荷会被持久化保存到WordPress数据库中(通常保存在文章或页面的post_meta或post_content中)。每当有用户访问受影响的页面时,恶意脚本都会自动执行,无需用户进行额外的交互操作(UI:N)。
4. **利用条件**:攻击者需要拥有Contributor(投稿者)级别或以上的WordPress账户权限。Contributor级别在WordPress中通常允许用户创建和编辑自己的文章/页面,因此攻击者可以通过正常的文章编辑流程注入恶意widget参数。
5. **影响范围**:由于漏洞范围变更(S:C)的影响,该漏洞可能影响到Elementor编辑过的所有页面,受影响范围较广,可能导致管理员cookie窃取、会话劫持、权限提升、网站内容篡改等多种攻击后果。