CVE-2025-10302CVE-2025-10302是WordPress平台上Ultimate Viral Quiz插件存在的一个跨站请求伪造(Cross-Site Request Forgery, CSRF)漏洞。该插件是一款用于创建病毒式传播测验的WordPress插件,允许网站管理员创建互动式问答内容。该漏洞由Wordfence安全团队的安全研究员发现,并于2025年10月3日正式披露。
根据CVSS 3.1评分体系,该漏洞的基础评分为4.3分,属于中危级别。漏洞的CVSS向量为CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N,表明该漏洞可通过网络远程利用,无需特殊权限,但需要用户交互(如点击链接)才能触发攻击。攻击对机密性无影响,对完整性有低影响,对可用性无影响。
该漏洞影响Ultimate Viral Quiz插件的所有版本,包括1.0及以下版本。由于插件中的save_options()函数缺少或未正确实现nonce验证机制,攻击者可以构造恶意的跨站请求,诱骗已登录的管理员点击链接,从而在管理员不知情的情况下修改插件的配置设置。虽然该漏洞本身不会直接导致代码执行或数据泄露,但攻击者可以利用修改后的设置进行进一步的攻击活动,例如注入恶意内容、修改重定向规则或植入恶意JavaScript代码等。
此漏洞的发现者[email protected]是Wordfence安全团队的专业漏洞研究人员,Wordfence是WordPress生态系统中知名的安全防护提供商。该漏洞已被收录在Wordfence的威胁情报数据库中,并提供了详细的漏洞信息和修复建议。
该漏洞的核心问题在于Ultimate Viral Quiz插件中的save_options()函数缺少适当的CSRF防护机制。在WordPress开发中,CSRF防护通常通过nonce(Number used once)机制实现,nonce是一个一次性使用的令牌,用于验证请求确实来自合法的用户操作而非跨站伪造请求。
具体而言,当管理员在WordPress后台修改Ultimate Viral Quiz插件的设置时,插件的save_options()函数负责处理设置保存请求。正常的处理流程应该是:
1. 生成唯一的nonce令牌并嵌入到表单中
2. 提交时验证该nonce令牌的有效性
3. 验证通过后执行设置保存操作
然而,在存在漏洞的代码中(位于bestbugcore/classes/options.class.php第28行),save_options()函数缺少了nonce验证步骤或验证逻辑不正确。这意味着任何包含有效参数设置的POST请求都会被直接处理,而无需验证请求的来源。
攻击者利用此漏洞的方式如下:
1. 攻击者首先访问目标网站,分析Ultimate Viral Quiz插件的设置保存接口
2. 构造一个包含恶意设置的HTML表单或自动提交脚本
3. 将该表单托管在攻击者控制的网站上,或通过社会工程学手段发送给目标管理员
4. 当目标管理员在已登录WordPress后台的状态下访问包含恶意表单的页面时,浏览器会自动提交请求到目标网站的save_options接口
5. 由于浏览器会自动携带目标站点的Cookie,服务器会将该请求视为合法管理员的操作
6. 插件设置被修改,攻击者的恶意配置生效
由于该漏洞需要用户交互(UI:R),攻击者需要通过钓鱼邮件、即时消息或其他方式诱骗管理员点击恶意链接。但一旦成功,攻击者可以在管理员完全不知情的情况下修改插件配置,为后续攻击创造条件。