CVE-2026-9341

Academy LMS <= 3.8.0 - Authenticated (Subscriber+) Insecure Direct Object Reference via 'user_id' Parameter

2026-07-13 00:00
sorawautsukushiii

Strategic Overview

Status
Patched in 3.8.1
Affected Plugin
Academy LMS
Affected Version
<= 3.8.0
CVSS
4.3Medium
Weakness type
CWE-639 · Authorization Bypass Through User-Controlled Key
CVE
CVE-2026-9341
View all Academy LMS vulnerabilities

At a glance

CVE-2026-9341 is a medium-severity Authorization Bypass Through User-Controlled Key vulnerability in the Academy LMS WordPress plugin, affecting versions <= 3.8.0. 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 3.8.1; sites on affected versions should update now. Disclosed July 2026, reported by sorawautsukushiii.

Vulnerability Overview

The Academy LMS – WordPress LMS Plugin for Complete eLearning Solution plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 3.8.0 via the 'save_lesson_note', 'get_lesson_note', and 'complete_lesson_video' AJAX handlers due to missing validation on a user controlled key. This makes it possible for authenticated attackers, with Subscriber-level access and above, to read, overwrite, or delete the private lesson notes of any other user (including administrators), and to falsify lesson-completion progress for arbitrary users.

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

Academy LMS <= 3.8.0 carries this weakness at save_lesson_note, 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 Academy LMS the fix is 3.8.1: builds <= 3.8.0 are affected, anything from 3.8.1 onward is not.

Remediation

Update to version 3.8.1, 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: Academy LMS 3.8.1 closes this, and updating the plugin is the step that ends it.

  • Login Security
  • Alerts

External References

Related records

Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C