Skip to main content

Academy LMS EUVDEUVD-2026-41250

| CVE-2026-5348 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-07-02 security@wordfence.com GHSA-p8p5-g7rx-q44c
5.3
CVSS 3.1 · Vendor: wordfence
Share

Severity by source

Vendor (wordfence) PRIMARY
5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
vuln.today AI
5.3 MEDIUM

Network-reachable REST endpoint requires no authentication or interaction; impact is solely low confidentiality disclosure of course structure with no integrity or availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (wordfence).

CVSS VectorVendor: wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

2
Analysis Generated
Jul 02, 2026 - 06:34 vuln.today
CVE Published
Jul 02, 2026 - 06:16 nvd
MEDIUM 5.3

DescriptionCVE.org

The Academy LMS - WordPress LMS Plugin for Complete eLearning Solution plugin for WordPress is vulnerable to Insecure Direct Object Reference in versions up to, and including, 3.8.1. This is due to the '/topics' REST API endpoint being registered with a permission callback set to '__return_true', allowing unauthenticated access to course curriculum data without verifying the course's post status or user enrollment. This makes it possible for unauthenticated attackers to access detailed curriculum information for private, draft, scheduled, or password-protected courses by enumerating course IDs.

AnalysisAI

Unauthenticated curriculum exposure in the Academy LMS WordPress plugin (versions ≤ 3.8.1) allows any internet user to retrieve detailed topic and lesson structures from courses explicitly protected by private, draft, scheduled, or password-protected post statuses. The root cause is the plugin's '/topics' REST API endpoint registering with '__return_true' as its permission callback, entirely bypassing WordPress's built-in post visibility and enrollment enforcement. No exploit code has been publicly identified and the vulnerability is not listed in CISA KEV, but the zero-complexity network vector makes automated course ID enumeration trivially scriptable with standard HTTP tools.

Technical ContextAI

The Academy LMS plugin implements a custom WordPress REST API route at '/topics' within 'includes/api/course.php' (lines 50 and 77). WordPress REST API routes accept a 'permission_callback' parameter to enforce access control; the plugin assigns '__return_true' - a WordPress core function that unconditionally returns boolean true - which causes WordPress to skip all authorization checks for that route. The curriculum retrieval logic in 'includes/traits/courses.php' (line 1514) then processes the caller-supplied course ID without verifying the course's post status (private, draft, scheduled, password-protected) or whether the requesting user is enrolled. This is a textbook CWE-639 (Authorization Bypass Through User-Controlled Key) pattern: the attacker supplies a user-controlled object reference (course ID integer), and the server resolves it to a protected resource without confirming entitlement. The affected CPE is the 'academy' plugin for WordPress up to version 3.8.1 as documented in the WordPress plugin trac repository.

RemediationAI

Update the Academy LMS plugin to the first release above version 3.8.1 that incorporates changeset 3592849 from the WordPress plugin trac repository - verify the exact version number in the plugin's changelog before updating, as the precise released patch version is not confirmed in the available data. As a compensating control while awaiting a confirmed patched release, deploy a web application firewall rule (Wordfence or equivalent) to block unauthenticated GET requests matching the '/wp-json/*/topics' path pattern; note this may interfere with legitimate unauthenticated course browsing if the endpoint is used by the plugin's frontend for enrolled users, so test in staging first. A more aggressive but broader mitigation is adding a 'rest_authentication_errors' filter to require authentication for all WordPress REST API requests, though this will break any other plugin relying on public REST endpoints and should be evaluated carefully. The Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/b84ae3e0-de4f-41d6-8944-fadaf6fdcf79 should be monitored for confirmation of the patched release version.

CVE-2016-10033 CRITICAL POC
9.8 Dec 30

The mailSend function in the isMail transport in PHPMailer before 5.2.18 might allow remote attackers to pass extra para

CVE-2016-10045 CRITICAL POC
9.8 Dec 30

The isMail transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the mail comman

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

CVE-2024-5084 CRITICAL POC
9.8 May 23

The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil

CVE-2024-44000 CRITICAL POC
9.8 Oct 20

Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote

CVE-2024-8353 CRITICAL POC
9.8 Sep 28

The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all

CVE-2020-36847 CRITICAL POC
9.8 Jul 12

The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner

CVE-2025-11749 CRITICAL POC
9.8 Nov 05

The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint

CVE-2025-27007 CRITICAL POC
9.8 May 01

The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut

CVE-2016-1209 CRITICAL POC
9.8 May 14

The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via

CVE-2024-4443 CRITICAL POC
9.8 May 22

The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based

CVE-2026-63030 CRITICAL POC
9.8 Jul 17

Remote code execution in WordPress 6.9.x (before 6.9.5) and 7.0.x (before 7.0.2) arises from a REST API batch endpoint r

Share

EUVD-2026-41250 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy