CVE-2025-7652CVE-2025-7652是WordPress Easy Plugin Stats插件中存在的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞由Wordfence安全团队的安全研究员发现并报告,披露日期为2025年10月11日。
Easy Plugin Stats是一款用于WordPress网站的统计插件,允许站点管理员展示各类统计数据。该插件通过注册一个名为'eps'的短代码(shortcode)来实现其功能,允许用户在文章和页面中嵌入统计信息展示。
漏洞的根本原因在于该插件在处理短代码属性时,未对用户输入进行充分的输入清理(input sanitization)和输出转义(output escaping)。这意味着攻击者可以在短代码的属性中注入恶意的JavaScript代码,这些代码会被存储在WordPress数据库中,每当有用户访问包含该恶意短代码的页面时,注入的脚本就会在受害者浏览器中执行。
由于该漏洞需要贡献者(contributor)级别或以上的认证权限才能利用,因此攻击者需要先获取一个具有贡献者权限的账户,或者通过社会工程学等手段诱使具有相应权限的用户执行恶意操作。一旦成功利用,攻击者可以窃取用户会话、劫持账户、植入恶意重定向、窃取敏感信息或对网站进行进一步的攻击。该漏洞的CVSS评分为6.4,属于中危级别,其作用域(Scope)发生了变化,表明漏洞的影响超出了直接受影响的组件。
该漏洞存在于Easy Plugin Stats插件的短代码处理逻辑中。当插件解析'eps'短代码及其属性时,未对属性值进行适当的清理和转义处理。
技术原理:
1. WordPress短代码机制允许插件注册自定义短代码,如[eps attribute="value"]。插件通过shortcode_atts()或类似函数解析短代码属性。
2. 在Easy Plugin Stats插件的实现中,'eps'短代码的属性被直接传递到输出渲染函数,而没有调用WordPress提供的安全函数如esc_attr()、esc_html()或wp_kses()进行转义。
3. 攻击者可以在短代码属性中注入HTML和JavaScript代码,例如:[eps title="<script>alert(document.cookie)</script>" ]。
4. 由于该漏洞是存储型XSS,恶意代码会被持久化存储在WordPress的posts表中。
5. 每当任何用户(包括管理员)访问包含恶意短代码的页面时,注入的脚本将在用户的浏览器上下文中执行。
利用条件:
- 攻击者需要拥有贡献者(Contributor)级别或以上的WordPress账户权限
- 攻击者需要创建或编辑包含恶意短代码的文章/页面
- 受害者需要访问包含恶意短代码的页面
利用影响:
- 窃取用户Cookie和会话令牌
- 劫持管理员账户
- 植入恶意重定向或钓鱼内容
- 在受害者浏览器中执行任意JavaScript代码
- 修改页面内容或执行未授权操作