Seraphinite Accelerator 插件严重漏洞警示:订阅者权限即可窃取站点数据
安全研究人员发布了一项关于 WordPress 插件 Seraphinite Accelerator 的安全公告,该插件安装在超过 60,000 个网站 上。漏洞可被任何具有最低订阅者(Subscriber)级别访问权限的登录用户利用。 Seraphinite Accelerator 插件的漏洞允许经过身份验证的攻击者检索网站的内部运营数据并进行未经授权的更改。该问题影响该插件 2.28.14 及以下的所有版本,开发者已在 2.28.15 版本 中修复了此漏洞。
插件功能概述
Seraphinite Accelerator 是一款性能优化插件,用于加速 WordPress 站点运行。其主要功能包括:
- 页面缓存:创建页面的缓存版本,避免每次访问时服务器都需重新生成
- 多格式压缩支持:包括 GZip、Deflate 和 Brotli
- 浏览器缓存启用:减少重复资源加载
- 多设备缓存分离:为不同设备和环境分离缓存数据,降低服务器负载
漏洞利用条件
该漏洞需要身份验证才能利用,但仅需订阅者级别的低权限账户。这意味着:
- 攻击者无需管理员权限
- 在网站上注册的普通用户账户即可触发漏洞函数
- 订阅者权限通常分配给在网站上注册的用户,获取门槛较低
漏洞技术细节
漏洞存在的原因是插件未验证用户是否有权限访问特定的 API 函数。插件暴露了一个名为 seraphaccelapi 的 AJAX 端点,其中可调用的函数之一是 GetData,该函数由内部的 OnAdminApi_GetData() 函数处理。 根据 Wordfence 发布的 安全公告:
Seraphinite Accelerator 插件在所有版本(包括 2.28.14)中,通过
seraphaccelapiAJAX 操作(fn=GetData)存在敏感信息暴露漏洞。原因是OnAdminApi_GetData()函数未执行任何权限检查。
这使得具有订阅者级别及以上访问权限的经过身份验证的攻击者能够检索敏感的运营数据,包括:
- 缓存状态信息
- 计划任务信息
- 外部数据库状态
另一份 安全公告 指出攻击者还可进行以下操作:
由于
seraphaccelapiAJAX 操作(fn=LogClear)缺少权限检查,攻击者可以清除插件的调试/运营日志。
在 WordPress 中,权限检查用于确认用户是否有权限执行管理操作。插件通常要求 manage_options 权限才能访问暴露内部系统数据的函数。由于缺少此检查,任何登录用户都可以调用 API 函数并检索本应仅限管理员访问的信息。 受影响的插件部分包括:
- Admin API 控制器/调度器(方法命名为
OnAdminApi_*) - 特定端点/函数:
GetData - 另一端点/函数:
LogClear(来自更新日志)
攻击者可获取的数据
漏洞函数返回有关插件和站点环境的运营信息。攻击者可检索:
| 数据类型 | 风险说明 |
|---|---|
| 缓存状态信息 | 暴露插件在服务器上的运行方式 |
| 计划任务信息 | 揭示某些进程的计划安排 |
| 外部数据库状态 | 暴露内部系统细节 |
虽然这些信息不会直接让攻击者控制网站,但会暴露通常仅限管理员访问的内部系统细节。
修复方案
开发者在 2.28.15 版本 中通过限制对受影响 API 函数的访问修复了此漏洞。 插件更新日志说明,LogClear 和 GetData API 函数可被没有 manage_options 权限的用户调用。修复方案恢复了所需的权限检查,确保只有授权管理员才能访问这些函数。
站点所有者应对措施
使用 Seraphinite Accelerator 插件的站点所有者应采取以下措施:
- 立即升级:更新到 2.28.15 或更高版本
- 验证更新:确认插件版本已正确升级
- 审查用户权限:检查站点上订阅者级别账户的必要性
- 监控日志:检查是否有可疑的 API 调用记录
更新插件将移除暴露的 API 访问权限,防止订阅者级别用户检索运营数据。








