CVE-2025-49346CVE-2025-49346是WordPress Simple Archive Generator插件中的一个高危安全漏洞,CVSS评分达到7.1分。该漏洞属于跨站请求伪造(CSRF)与存储型跨站脚本(Stored XSS)的组合漏洞,攻击者可利用此漏洞在受害者的浏览器中执行恶意JavaScript代码,进而窃取会话Cookie、劫持用户账户或进行其他恶意操作。
Simple Archive Generator是一款用于创建和管理WordPress内容存档的流行插件,版本5.2及以下均受影响。由于该插件在处理用户输入时缺乏充分的CSRF令牌验证和输入过滤,攻击者可以构造恶意请求,诱使已登录的管理员访问包含恶意脚本的页面,从而在存档内容中注入并存储XSS payload。一旦存储型XSS被触发,所有访问该存档页面的用户都会遭受攻击,攻击范围广泛且持久。
该漏洞无需特殊权限即可发起攻击,但需要用户交互(如点击恶意链接或访问恶意页面)。攻击成功后,攻击者可以在受害者浏览器中执行任意JavaScript代码,获取敏感信息、修改页面内容或进行进一步的攻击。由于是存储型XSS,恶意脚本会被永久保存在服务器端,对所有访问者持续构成威胁。
该漏洞的根本原因在于Simple Archive Generator插件在处理存档数据时存在两个安全缺陷:
1. **CSRF保护缺失**:插件未实现有效的CSRF令牌验证机制。WordPress插件应使用wp_verify_nonce()函数验证请求的合法性,但该插件在处理存档创建和编辑请求时缺少此验证,使得攻击者可以伪造管理员的请求。
2. **输入过滤不足**:插件在将用户输入存储到数据库前,未对特殊字符进行适当的转义或过滤。虽然某些输入字段可能经过了基础的HTML编码,但攻击者可以通过构造特殊的payload绕过过滤,成功注入<script>标签或事件处理器(如onerror、onload等)。
**利用方式**:
- 攻击者首先构造一个包含恶意JavaScript代码的HTML表单或链接
- 通过社会工程学手段诱使已登录的管理员访问该恶意链接
- 管理员的浏览器会自动向目标WordPress站点发送请求,由于浏览器自动携带Cookie,服务器会认为这是合法的管理员操作
- 恶意payload被存储到数据库的存档内容中
- 当其他用户访问包含恶意内容的存档页面时,XSS payload会在其浏览器中执行
**攻击示例**:攻击者可以注入类似<img src=x onerror=alert(document.cookie)>的payload,当页面加载时,onerror事件会被触发,执行恶意JavaScript代码窃取用户的Cookie信息。