漏洞概述 CVE编号: CVE-2024-11868 漏洞类型: 敏感信息泄露 (Sensitive Information Exposure) 严重程度: 中等 (CVSS 3.1: 5.3) 描述: 该漏洞允许未授权的攻击者访问敏感的课程材料,从而绕过付费要求。攻击者只需知道课程ID或材料ID,即可通过REST API获取受保护的内容。 影响范围 插件名称: LearnPress – WordPress LMS Plugin 受影响版本: ≤ 4.2.7.3 代码分析与利用原理 (POC) 文章指出了两个未认证的REST端点,其 被设置为 ,导致权限检查失效。 1. 关键代码片段 (LP_REST_Material_Controller) 2. 关键代码片段 (LP_Material_Files_DB) 修复方案 需要在 类的 和 方法中添加严格的权限检查。 1. 修改 : 不要使用 ,而是创建一个自定义函数来验证用户权限。 2. 添加业务逻辑检查: 在 和 方法内部,验证当前登录用户是否拥有对应的 (课程ID) 或 (材料ID) 的访问权限(例如检查用户是否已购买该课程)。 修复示例逻辑: