WordPress Plugin Vulnerabilities

LearnPress < 4.4.9 - Insecure Direct Object Reference to Unauthenticated Sensitive Information Disclosure via 'item_id' Parameter

Description

The LearnPress – WordPress LMS Plugin for Create and Sell Online Courses plugin for WordPress is vulnerable to Insecure Direct Object Reference in versions up to, and including, 4.4.8 via the CourseMaterialTemplate::render_material_items() callback exposed on the public lp-ajax-handle (load_content_via_ajax) endpoint. The endpoint is explicitly listed in the AbstractAjax no-nonce allowlist and performs no capability check, and the render_material_items() handler decides authorization against one attacker-supplied identifier (course_id) while fetching the returned material rows via a second, independently attacker-supplied identifier (item_id) with no check that the lesson belongs to the authorized course. This makes it possible for unauthenticated attackers to read and download course-material files (uploaded and external file paths/URLs) belonging to lessons in paid or enrollment-required courses, provided any single course on the site has 'No Required Enroll' enabled and owns at least one material file.

Affects Plugins

Fixed in 4.4.9

References

Classification

Type
IDOR
CWE
CVSS

Miscellaneous

Original Researcher
Khoa Dang
Verified
No

Timeline

Publicly Published
2026-09-30 (about 16 days ago)
Added
2026-09-30 (about 16 days ago)
Last Updated
2026-10-01 (about 15 days ago)

Other