MEDIUM 6.5

CVE-2026-11988: LearnPress IDOR Vulnerability in WordPress LMS Plugin

A flaw in the LearnPress WordPress LMS plugin (versions up to 4.3.9.1) allows authenticated users with basic subscriber access or higher to view course enrollment progress and completion data of instructor and administrator accounts. An attacker with a regular user account can directly request information about any teacher or admin's course activities without proper authorization. This does not affect access to other regular subscriber accounts, which remain protected. The vulnerability requires the attacker to already have login credentials.

Source data · NVD / CISA · public domain

CVSS
3.1 · 6.5 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Weaknesses (CWE)
CWE-639
Affected products
0 configuration(s)
Published / Modified
2026-07-01 / 2026-07-01

NVD description (verbatim)

The LearnPress – WordPress LMS Plugin for Create and Sell Online Courses plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 4.3.9.1 via the 'userId' parameter due to missing validation on a user controlled key. This makes it possible for authenticated attackers, with subscriber-level access and above, to view the course enrollment progress and completion data belonging to any instructor or administrator account on the site. This IDOR does not apply when the target user is a regular subscriber, as the guard correctly blocks cross-subscriber access; exploitation is limited to cases where the victim user holds the LP_TEACHER_ROLE or administrator role.

8 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-11988 is an Insecure Direct Object Reference (IDOR) vulnerability in LearnPress affecting all versions through 4.3.9.1. The 'userId' parameter lacks validation when processing enrollment and completion data requests, allowing authenticated users to enumerate and access sensitive course progress records. The authorization logic fails to enforce role-based restrictions on cross-user data access for accounts holding LP_TEACHER_ROLE or administrator privileges. The vulnerability is rooted in CWE-639 (Authorization through User-Controlled Key) and is network-accessible with low attack complexity, requiring only valid user credentials.

Business impact

Organizations running WordPress LMS platforms using LearnPress may face confidentiality breaches exposing instructor and administrator course progress metrics. This could reveal sensitive learning patterns, performance trends, or completion rates of staff accounts. While the attack surface is limited to authenticated users, a compromised low-privilege account (via phishing, credential reuse, or brute force) becomes a pivot point to surveil educational leadership activity and course performance data. The lack of CISA KEV tracking suggests this has not yet been observed in active exploitation campaigns.

Affected systems

The LearnPress plugin for WordPress is affected in all versions up to and including 4.3.9.1. Vulnerable installations are those running LearnPress without a patched release. Sites using this plugin with multiple user roles (instructors and administrators) face the highest risk. Exposure is limited to WordPress multisite and single-site deployments where the plugin is active and users have subscriber-level or higher permissions.

Exploitability

Exploitation requires valid WordPress user credentials (subscriber level minimum) and knowledge of target user IDs. The attack is straightforward: an authenticated attacker simply modifies the 'userId' parameter in requests to enumerate instructor and administrator course data. No user interaction or social engineering is needed beyond initial account compromise. The CVSS score of 6.5 (Medium) reflects the authentication requirement and confidentiality-only impact, though the practical risk is elevated in environments with weak password policies or credential compromise vectors.

Remediation

Update the LearnPress plugin to a patched version released after 4.3.9.1. Verify against the official LearnPress vendor advisory for the exact patch version number. No configuration changes mitigate this vulnerability; code-level fixes are required. Administrators should enforce strong password policies to reduce the likelihood of authenticated account compromise and consider role-based access restrictions at the application level pending patching.

Patch guidance

Consult the official LearnPress plugin repository and vendor security advisories to identify the minimum patched version addressing CVE-2026-11988. Update through the WordPress plugin dashboard or via command-line tools. Prior to patching, audit user account creation and access logs to identify any potential unauthorized data access. Test patches in a non-production environment first to ensure compatibility with custom course configurations and student enrollment workflows.

Detection guidance

Monitor WordPress access logs for repeated or suspicious requests to user profile, course enrollment, or course completion endpoints with varying 'userId' parameter values from the same source IP or user account. Review web application firewall (WAF) logs for parameter tampering patterns. Check LearnPress database logs (if available) for cross-user data queries initiated by low-privilege accounts. Implement logging on the 'userId' parameter handling to track unauthorized access attempts. Query WordPress user meta and course progress tables for evidence of unauthorized access by comparing access timestamps against user login records.

Why prioritize this

This vulnerability merits urgent attention for any organization using LearnPress with instructor or administrator accounts. The barrier to exploitation—valid login credentials—is lower than exploits requiring zero-day access, and credential compromise is common in WordPress environments. The confidentiality breach of instructor performance data could have compliance implications under privacy regulations. However, the Medium severity and lack of current KEV tracking indicate this is not yet an actively exploited threat in the wild. Prioritize patching based on the sensitivity of course data and the privilege distribution on your site.

Risk score, explained

The CVSS 3.1 score of 6.5 (Medium) is driven by four factors: (1) Network-accessible attack vector requiring no special network capabilities, (2) Low attack complexity with no special conditions needed, (3) Low privilege requirement (subscriber level), (4) High confidentiality impact via exposure of course progress and enrollment data, and (5) No integrity or availability impact. The score is not elevated to High due to the authentication prerequisite. Real-world risk is context-dependent: organizations with weak account security or high-value course data should treat this as high-priority despite the Medium CVSS rating.

Frequently asked questions

Can an attacker exploit this without a valid WordPress account?

No. The vulnerability requires authenticated access—an attacker must have a valid username and password, typically a subscriber-level account or higher. This does not require admin privileges, but does require prior credential compromise or account creation on the target site.

Which user roles are affected as victims?

Only instructor and administrator accounts (those holding LP_TEACHER_ROLE or administrator role) are vulnerable to data exposure. Regular subscriber accounts are protected by working access controls and cannot be targeted via this IDOR. Staff-level accounts are at risk.

Does this vulnerability allow modification or deletion of course data?

No. This IDOR permits only unauthorized reading of enrollment and completion information. It does not grant the ability to modify, delete, or enroll users in courses. The impact is strictly confidentiality-related.

What should I do if I cannot patch immediately?

Audit user accounts and revoke unnecessary subscriber-level access. Implement network-level access controls to restrict LearnPress administration interfaces to trusted IP ranges. Monitor logs for suspicious cross-user data requests and consider temporarily disabling the plugin if exposure is high and patching is delayed.

This analysis is based on published vulnerability data current as of the analysis date. Vendor patch versions and availability were not provided in the source data; verify exact remediation guidance against official LearnPress and WordPress plugin repository advisories. CVSS scores are as published and may be updated by NIST or the vendor. This document is for informational purposes and does not constitute legal advice or a substitute for professional security consultation. Always test patches in non-production environments and maintain current backups before applying updates. Source: NVD (public-domain), retrieved 2026-08-09. Analysis generated by SEC.co (claude-haiku-4-5).