LearnPress – WordPress LMS Plugin for Create and Sell Online Courses <= 4.3.5 - Authenticated (Subscriber+) Payment Bypass to Free Course Enrollment via 'quantity' Parameter
Strategic Overview
- Status
- Patched in 4.3.6
- Affected Version
<= 4.3.5- CVSS
- 4.3Medium
- Weakness type
- CWE-639 · Authorization Bypass Through User-Controlled Key
- CVE
CVE-2026-7648
At a glance
CVE-2026-7648 is a medium-severity Authorization Bypass Through User-Controlled Key vulnerability in the LearnPress WordPress plugin, affecting versions <= 4.3.5. It carries a CVSS score of 4.3 (reachable over the network; low attack complexity). Exploitation requires an authenticated account at Subscriber level or above. The issue is fixed in version 4.3.6; sites on affected versions should update now. Disclosed May 2026, reported by winrace.
Vulnerability Overview
The LearnPress – WordPress LMS Plugin for Create and Sell Online Courses plugin for WordPress is vulnerable to payment bypass through user-controlled key in all versions up to, and including, 4.3.5. This is due to improper handling of user-supplied request parameters in the REST API endpoint, which passes the unsanitized parameter array to the add_to_cart() function where array_merge() allows attacker-controlled values to overwrite hardcoded defaults. This makes it possible for authenticated attackers, with subscriber-level access and above, to enroll in any paid course entirely free of charge by supplying a quantity value of zero, which causes the order total to calculate as $0 and bypasses all payment gateway requirements.
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no interaction from a victim user.
CWE-639: Authorization Bypass Through User-Controlled Key
LearnPress <= 4.3.5 carries this weakness at add_to_cart(), and reaching it takes an account at Subscriber level or above. Authorization bypass through a user-controlled key, often called insecure direct object reference, means the application looks up a record by an identifier from the request without checking that the caller owns it.
Changing a number in the request is enough to read or modify other users' records, which on commerce and membership sites means customer data. For LearnPress the fix is 4.3.6: builds <= 4.3.5 are affected, anything from 4.3.6 onward is not.
Remediation
Update to version 4.3.6, or a newer patched version
How does WordSec protect against this?
Because it turns on account access, WordSec's login security is the relevant layer: role-based two-factor, captcha and brute-force limits raise the cost of getting the account this needs. None of that substitutes for the fix: LearnPress 4.3.6 closes this, and updating the plugin is the step that ends it.
- Login Security
- Alerts
External References
Related records
Same weakness class
Other vulnerabilities in LearnPress – WordPress LMS Plugin for Create and Sell Online Courses
- 10.0CVE-2024-8529: LearnPress – WordPress LMS Plugin SQL Injection
CVE-2024-8529 - 10.0CVE-2024-8522: LearnPress – WordPress LMS Plugin SQL Injection
CVE-2024-8522 - 9.8CVE-2024-4434: LearnPress – WordPress LMS Time-Based SQL Injection
CVE-2024-4434 - 9.8CVE-2023-6567: LearnPress <= 4.2.5.7 SQL Injection
CVE-2023-6567 - 9.8CVE-2022-45808: LearnPress <= 4.1.7.3.2 SQL Injection
CVE-2022-45808 - 9.8CVE-2022-47615: LearnPress <= 4.1.7.3.2 Local File Inclusion
CVE-2022-47615 - 9.8CVE-2022-3360: LearnPress <= 4.1.7.1 PHP Object Injection
CVE-2022-3360 - 9.8CVE-2021-24951: LearnPress <= 4.1.3 SQL Injection
CVE-2021-24951
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C