CVE-2025-12660CVE-2025-12660是WordPress平台Padlet Shortcode插件(也称为wallwisher-shortcode)中的一个存储型跨站脚本(Stored XSS)安全漏洞。该漏洞存在于1.3及以下所有版本中,攻击者可以通过利用'wallwisher'短代码的'key'参数来注入恶意JavaScript代码。由于插件在处理用户提供的属性时缺乏足够的输入清理和输出转义,恶意脚本会被永久存储在数据库中。当其他用户访问包含恶意代码的页面时,注入的脚本会在其浏览器上下文中执行,可能导致会话劫持、凭据窃取、恶意重定向或其他客户端攻击。漏洞需要攻击者具备至少contributor级别权限,这降低了攻击门槛但仍对多用户WordPress站点构成严重威胁。
该漏洞的根本原因在于WordPress短代码处理机制中对用户输入的验证和转义不足。具体而言,wallwisher.php文件第22行附近的代码在处理'key'参数时,直接将用户提供的值插入到HTML输出中,而没有进行适当的HTML实体转义或输入验证。攻击者可以通过在短代码中插入恶意JavaScript代码,如<img src=x onerror=alert(document.cookie)>,来实现XSS攻击。由于存储型XSS的特性,恶意代码会永久保存在数据库中,所有访问该页面的用户都会执行注入的脚本。CVSS 3.1评分6.4(AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N)表明该漏洞可通过网络利用,复杂度低,需要低权限用户交互,Confidentiality和Integrity影响为低。修复需要在输出点使用esc_html()或esc_attr()函数对用户输入进行转义。