CVE-2025-14798CVE-2025-14798是WordPress广受欢迎的学习管理系统(LMS)插件LearnPress中的一个高危安全漏洞。该漏洞存在于插件的REST API接口中,具体位于get_item_permissions_check函数。由于该函数缺少适当的权限验证检查,未经身份验证的远程攻击者可以通过构造特定的API请求来访问敏感的用户信息。漏洞影响范围涵盖LearnPress 4.3.2.4及之前的所有版本。攻击者利用此漏洞可以获取包括用户姓名(名字和姓氏)、社交媒体资料链接、学习课程注册信息等敏感数据。这些泄露的信息可能被用于进一步的社会工程攻击、身份盗窃或其他恶意活动。该漏洞的CVSS评分为5.3,属于中等严重程度,但由于其无需认证即可利用的特性,在实际环境中具有较高的利用价值。LearnPress作为WordPress生态中领先的在线课程创建插件,被全球数百万网站使用,因此该漏洞影响了大量在线教育平台的用户数据安全。
该漏洞的技术根源在于LearnPress插件的JWT REST API实现中存在权限检查缺陷。具体问题出在inc/jwt/rest-api/version1/class-lp-rest-users-v1-controller.php文件中的get_item_permissions_check函数(第134行和第35行)。该函数本应验证当前用户是否有权限访问特定资源,但由于实现不当,它允许任何未认证用户通过REST API端点访问用户数据。攻击者可以通过向/wp-json/lp/v1/users或类似端点发送GET请求,无需提供任何认证令牌或Cookie,即可获取用户列表和详细信息。泄露的数据结构包括:first_name(名)、last_name(姓)、description(个人描述)、social类对象(包含Facebook、Twitter等社交链接)以及可能的enrollment(课程注册)信息。漏洞利用的关键在于WordPress REST API的默认行为允许访问某些端点,而插件开发者未正确覆盖默认的权限检查逻辑。由于WordPress的REST API架构设计,get_item_permissions_check返回值默认为true,导致未认证用户可以绕过权限限制。