Skip to content
Laskyr

Plugins · academy · data as of 2026-11-04

Is Academy LMS safe? Known vulnerabilities and latest version

Academy LMS is closed on wordpress.org

Closed on 2026-10-11. Closed plugins get no updates through WordPress, so new security holes will not be fixed for you.

Status
Closed 2026-10-11
Known issues on record
21
Unpatched in latest
0

What to do

  1. Replace it. A closed plugin gets no updates through WordPress, so any hole found from now on stays open.
  2. Deactivate and delete it once you have a replacement (Plugins → Deactivate → Delete). Deleting removes its files; deactivating alone leaves them on the server.
  3. If you ran a vulnerable version and something looks off (spam pages, strange admins, redirects), run the free scan, or have us clean it: Emergency Cleanup, $499.

With WP-CLI, once you have a replacement: wp plugin deactivate academy && wp plugin delete academy

Check your version

Known vulnerabilities

21 on record, newest first. “Affected” is the version range the source gives; “fixed in” is the version the source names, or (marked *) the first wordpress.org release after the last affected version. 21 record(s) do not state which versions are affected.

medium 4.3 CVE-2026-120544 · published 2026-11-03

Path traversal / file read in Academy LMS (4.0.1 and older)

Affected
4.0.1 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The Academy LMS – AI Course Builder, Quizzes, Certificates & eLearning plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 4.0.1 via the 'id' parameter. This makes it possible for authenticated attackers, with contributor-level access and above, to read the contents of arbitrary .html files on the server. The plugin appends a '.html' extension to the attacker-supplied path before reading it, so files with any other extension — including wp-config.php — are out of reach. The file's contents are returned in full in the REST JSON response's content field.

NVD CVE-2026-120544Wordfence advisoryCode change (fix)Plugin source

medium 6.5 CVE-2026-104915 · published 2026-10-10

Missing authorization check in Academy LMS (4.0.3 and older)

Affected
4.0.3 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The Academy LMS – AI Course Builder, Quizzes, Certificates & eLearning plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 4.0.3. This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for authenticated attackers, with custom-level access and above, to permanently delete arbitrary Academy lesson comments and their replies authored by any user, including administrators, across courses they do not instruct. This is exploitable by any user registered as an Academy instructor for at least one course, as they can supply their own course_id to pass the instructor check while targeting comments belonging to entirely different courses.

NVD CVE-2026-104915Wordfence advisoryCode change (fix)Plugin source

medium 5.4 CVE-2026-104022 · published 2026-10-10

Privilege escalation in Academy LMS (4.0.3 and older)

Affected
4.0.3 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The Academy LMS – AI Course Builder, Quizzes, Certificates & eLearning plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 4.0.3. This is due to the `add_child()` function calling `add_role('academy_student')` on any existing account resolved from the attacker-supplied `email` parameter before `Store::link()` validates the guardian-ward relationship, and failing to roll back that role write when `Store::link()` returns a `WP_Error`. This makes it possible for authenticated attackers with the `academy_guardian` role or higher to elevate any existing WordPress account — including their own — to the `academy_student` role, gaining `edit_posts` (Contributor-equivalent) capabilities and, when the student file-upload setting is enabled, `upload_files` (Author-equivalent) capabilities not granted to the guardian role. When a guardian supplies their own email address, `email_exists()` resolves to their own user ID, causing `Store::link()` to reject the self-link, but because the `add_role()` call has already executed and is never reversed, the academy_student role grant on their own account persists permanently.

NVD CVE-2026-104022Wordfence advisoryCode change (fix)Plugin source

medium 4.3 CVE-2026-104049 · published 2026-10-07

Missing authorization check in Academy LMS (older than 4.0.0)

Affected
older than 4.0.0
Fixed in
4.0.0
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The Academy LMS WordPress plugin before 4.0.0 does not verify course enrollment or object ownership when returning a lesson's content through one of its REST API routes, allowing users with a self-registerable student account to read the full content of arbitrary lessons, including lessons of paid or private courses they are not enrolled in.

NVD CVE-2026-104049WPScan advisory

medium 4.3 CVE-2026-104050 · published 2026-10-07

Missing authorization check in Academy LMS (older than 4.0.0)

Affected
older than 4.0.0
Fixed in
4.0.0
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The Academy LMS WordPress plugin before 4.0.0 does not verify that a quiz question belongs to the course the requesting user is authorized to access before returning that question's answer options, allowing any authenticated user with access to a single course, such as an enrolled student, to read the quiz answer options of questions belonging to other courses they are not enrolled in.

NVD CVE-2026-104050WPScan advisory

medium 6.5 CVE-2026-16563 · published 2026-08-03

Missing authorization check in Academy LMS (older than 3.8.3)

Affected
older than 3.8.3
Fixed in
3.8.3
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The Academy LMS WordPress plugin before 3.8.3 does not verify course enrollment or lesson publication status when returning a single lesson through its REST API, allowing users with a self-service student (Subscriber-level) account to disclose the content of arbitrary lessons, including lessons of paid courses they are not enrolled in and unpublished (draft, pending, private) lessons.

NVD CVE-2026-16563WPScan advisory

medium 4.3 CVE-2026-12376 · published 2026-07-31

Missing authorization check in Academy LMS (3.8.2 and older)

Affected
3.8.2 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The Academy LMS WordPress plugin through 3.8.2 does not restrict access to quiz attempt records to their owner, allowing any authenticated user with subscriber-level access and above (enrolled in any single course) to read every user's quiz attempts across the whole site, including personal data such as IP addresses, names, registration dates and quiz results.

NVD CVE-2026-12376WPScan advisory

medium 5.4 CVE-2026-14184 · published 2026-07-21

Missing authorization check in Academy LMS (older than 3.8.1)

Affected
older than 3.8.1
Fixed in
3.8.1
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The Academy LMS WordPress plugin before 3.8.1 does not verify ownership of a user-supplied user identifier in several of its lesson AJAX handlers, allowing authenticated users with subscriber-level access to read and modify other users' lesson notes and mark other users' lesson content as completed.

NVD CVE-2026-14184WPScan advisory

medium 4.3 CVE-2026-9341 · published 2026-07-14

Missing authorization check in Academy LMS (3.8.0 and older)

Affected
3.8.0 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

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.

NVD CVE-2026-9341Wordfence advisoryCode change (fix)Plugin source

medium 5.3 CVE-2026-5348 · published 2026-07-02

Missing authorization check in Academy LMS (3.8.1 and older)

Affected
3.8.1 and older
Fixed in
unknown
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

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.

NVD CVE-2026-5348Wordfence advisoryCode change (fix)Plugin source

medium 6.5 CVE-2026-25372 · published 2026-02-19

Missing authorization check in Academy LMS (3.5.3 and older)

Affected
3.5.3 and older
Fixed in
3.5.4
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Missing Authorization vulnerability in Kodezen LLC Academy LMS academy allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects Academy LMS: from n/a through <= 3.5.3.

NVD CVE-2026-25372Patchstack advisory

critical 9.8 CVE-2025-15521 · published 2026-01-21

Privilege escalation in Academy LMS (3.5.0 and older)

Affected
3.5.0 and older
Fixed in
unknown
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The Academy LMS – WordPress LMS Plugin for Complete eLearning Solution plugin for WordPress is vulnerable to privilege escalation via account takeover in all versions up to, and including, 3.5.0. This is due to the plugin not properly validating a user's identity prior to updating their password and relying solely on a publicly-exposed nonce for authorization. This makes it possible for unauthenticated attackers to change arbitrary user's password, including administrators, and gain access to their account.

NVD CVE-2025-15521Wordfence advisoryPlugin source

medium 6.5 CVE-2025-68527 · published 2025-12-24

Stored cross-site scripting (XSS) in Academy LMS (3.4.0 and older)

Affected
3.4.0 and older
Fixed in
3.4.1
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber); someone on the site has to click a link or open a page
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in Kodezen LLC Academy LMS academy allows Stored XSS.This issue affects Academy LMS: from n/a through <= 3.4.0.

NVD CVE-2025-68527Patchstack advisory

high 7.2 CVE-2025-12099 · published 2025-11-08

PHP object injection in Academy LMS (3.3.8 and older)

Affected
3.3.8 and older
Fixed in
unknown
Access needed (per CVSS)
Needs an admin-level account
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The Academy LMS – WordPress LMS Plugin for Complete eLearning Solution plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 3.3.8 via deserialization of untrusted input in the 'import_all_courses' function. This makes it possible for authenticated attackers, with Administrator-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present.

NVD CVE-2025-12099Wordfence advisoryCode change (fix)Plugin source

medium 5.5 CVE-2025-59562 · published 2025-09-22

Missing authorization check in Academy LMS (3.3.4 and older)

Affected
3.3.4 and older
Fixed in
3.3.5
Access needed (per CVSS)
Needs an admin-level account
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Authorization Bypass Through User-Controlled Key vulnerability in Kodezen LLC Academy LMS academy allows Exploiting Incorrectly Configured Access Control Security Levels.This issue affects Academy LMS: from n/a through <= 3.3.4.

NVD CVE-2025-59562Patchstack advisory

high 8.8 CVE-2024-38701 · published 2024-07-22

Missing authorization check in Academy LMS (2.0.4 and older)

Affected
2.0.4 and older
Fixed in
2.0.5
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

Authorization Bypass Through User-Controlled Key vulnerability in Academy LMS.This issue affects Academy LMS: from n/a through 2.0.4.

NVD CVE-2024-38701Patchstack advisory

low 3.5 CVE-2024-37234 · published 2024-07-06

Open redirect in Academy LMS (2.0.4 and older)

Affected
2.0.4 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber); someone on the site has to click a link or open a page
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

URL Redirection to Untrusted Site ('Open Redirect') vulnerability in Kodezen Limited Academy LMS.This issue affects Academy LMS: from n/a through 2.0.4.

NVD CVE-2024-37234Patchstack advisory

high 8.8 CVE-2024-32714 · published 2024-06-09

Missing authorization check in Academy LMS (1.9.16 and older)

Affected
1.9.16 and older
Fixed in
1.9.17
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

Missing Authorization vulnerability in Academy LMS academy.This issue affects Academy LMS: from n/a through 1.9.16.

NVD CVE-2024-32714Patchstack advisory

medium 5.3 CVE-2024-35171 · published 2024-05-14

Information disclosure in Academy LMS (1.9.25 and older)

Affected
1.9.25 and older
Fixed in
1.9.26
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

Exposure of Sensitive Information to an Unauthorized Actor vulnerability in Academy LMS academy.This issue affects Academy LMS: from n/a through 1.9.25.

NVD CVE-2024-35171Patchstack advisory

high 8.8 CVE-2024-33912 · published 2024-05-06

Missing authorization check in Academy LMS (1.9.16 and older)

Affected
1.9.16 and older
Fixed in
1.9.17
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

Missing Authorization vulnerability in Academy LMS.This issue affects Academy LMS: from n/a through 1.9.16.

NVD CVE-2024-33912Patchstack advisory

high 8.8 CVE-2024-1505 · published 2024-03-13

Privilege escalation in Academy LMS (1.9.19 and older)

Affected
1.9.19 and older
Fixed in
unknown
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The Academy LMS – eLearning and online course solution for WordPress plugin for WordPress is vulnerable to privilege escalation in all versions up to, and including, 1.9.19. This is due to plugin allowing arbitrary user meta updates through the saved_user_info() function. This makes it possible for authenticated attackers, with minimal permissions such as students, to elevate their user role to that of an administrator.

NVD CVE-2024-1505Wordfence advisoryCode change (fix)

Recent activity

Browse vulnerabilities

Where this data comes from

Badge for your site or docs (states facts with a date, not a verdict):
Academy LMS vulnerability status badge
<a href="https://laskyr.com/plugins/academy"><img src="https://laskyr.com/plugins/academy/badge.svg" alt="Academy LMS vulnerability status"></a>

← Check another plugin · Free hacked-site scan

First hour checklist

If the site was just hacked, read the emergency kit before you delete files. The page is free. Email is optional.

Read the emergency kit