LearnPress allows unauthenticated listing of unpublished courses
LearnPress from 4.2.7.1 up to but not including 4.4.7: A public REST route applies a caller-supplied post-status filter without checking capabilities. An unauthenticated requester can list draft, pending, private, scheduled and trashed courses. The export does not disclose the route, filter parameter or exact response fields, so full course-body disclosure is not established.
- Component
- LearnPress
- Plugin slug
learnpress- Affected
- 4.2.7.1 to < 4.4.7
- Safe version
4.4.7- Published
- Sep 16, 2026
This CVE was published Sep 16, 2026 and is one of 81 known issues for this plugin.
Update, patch or deactivate.
Update LearnPress to 4.4.7 or later. Constrain public queries to published, publicly visible courses and authorize requests for every other status before running the query. Do not rely only on hiding courses in the interface.
A safe version is available, so updating to that version or later is the preferred remediation. If an immediate update is not practical, consider a targeted application patch or temporarily restricting the affected functionality.
Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.
Technical description
The LearnPress WordPress plugin before 4.4.7 does not check the user's capabilities before applying a user supplied post status filter in one of its REST routes, allowing unauthenticated attackers to list courses that are not published, including draft, pending, private, scheduled and trashed ones.
CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N