CVE-2025-13899TR 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:协议,即可绕过输入过滤并执行任意客户端代码。