Skip to main content

LearnPress CVE-2026-113353

| EUVDEUVD-2026-104924 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-10-20 VulnCheck GHSA-6wwj-xhh6-qcg8
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as instructor
  2. Delivery
    Obtain own valid editor nonce
  3. Exploit
    Craft lp-ajax request with victim object id
  4. Execution
    Bypass missing ownership check
  5. Impact
    Alter or trash other instructor's content

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Requires an authenticated WordPress account holding the LearnPress instructor role on the target site (PR:L); anonymous visitors cannot exploit it. The vulnerable legacy editor AJAX actions (admin_course_editor, admin_quiz_editor, admin_question_editor) must be registered and reachable, which is the default on LearnPress installations before 4.4.10. The attacker reuses their own legitimately-issued generic editor nonce and simply supplies another object's id parameter, because the handlers verify the nonce but omit a per-object ownership/capability check. Meaningful impact is limited to sites with more than one instructor whose content can be targeted; a single-instructor site gains little. No victim user interaction is required (UI:N).

Impact

This is a medium-severity authorization flaw (CVSS 4.0 base 5.3) whose real-world priority is moderate, not urgent. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) confirms network-reachable, low-complexity exploitation but requires authenticated privileges (PR:L) - specifically an instructor account - and impact is limited to integrity and availability of content (VI:L/VA:L) with no confidentiality loss (VC:N) and no scope change. CWE-639 (IDOR / missing authorization) is consistent with the description. No EPSS score, CISA KEV listing, or public POC is present in the provided data, so there is no public exploit identified at time of analysis and no evidence of active exploitation; all three widely-used exploitation signals are absent rather than conflicting. The main factor raising practical risk is that a vendor patch exists and the root cause is publicly visible in the GitHub commit diff, which lowers the effort to reverse-engineer the issue. Net assessment: a real but contained bug - relevant chiefly to multi-instructor LearnPress deployments - that warrants timely patching but is not a high-urgency, mass-exploitation threat. EPSS is missing, so widespread-exploitation probability cannot be quantified from the input.

Exploit ScenarioDerived

On a LearnPress site with multiple instructors, a logged-in instructor opens their own course editor to obtain a valid generic editor nonce, then replays that nonce in an lp-ajax request (admin_course_editor/admin_quiz_editor/admin_question_editor) while substituting another instructor's course, quiz, or question id. Because the handlers validate the nonce but never verify object ownership, the attacker can edit the victim's courses, alter quiz answer keys, or trash questions. No public exploit code is identified at time of analysis, though the fix commit publicly reveals the vulnerable handlers.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 20, 2026

LearnPress before 4.4.10 permits authenticated instructors to tamper with other instructors' courses, quizzes, and questions through legacy lp-ajax editor actions. The handlers verify a generic editor nonce but do not perform a per-object ownership or capability check, so an instructor can reuse their own nonce with another object's id to change content, alter quiz answers, or trash questions; confidentiality is not exposed per the assessed vector. The vendor has released version 4.4.10, no public exploit identified at time of analysis, and practical risk is limited to multi-instructor sites where another instructor's content is available to target.

RemediationAI

Vendor-released patch: update LearnPress to 4.4.10 or later; the referenced commit disables the legacy editor AJAX handlers. The updated plugin is available from the WordPress.org plugin repository and the vendor changelog. If upgrading immediately is not possible, disable or block the admin_course_editor, admin_quiz_editor, and admin_question_editor lp-ajax actions, and restrict instructor-role assignments to trusted accounts while auditing courses, quizzes, and questions for unauthorized changes; blocking these actions may break legacy editor functionality and restricting instructors reduces site flexibility, and neither workaround fixes the missing ownership check. See https://github.com/LearnPress/learnpress/commit/77087dcdc0e974e8d0844453b4071189fc2c70d2 and https://www.vulncheck.com/advisories/learnpress-before-4.4.10-missing-authorization-via-legacy-editor-ajax-handlers.

Affected VersionsENISA

LearnPress 0 <4.4.10

Affected Packages

euvd learnpress fix: 4.4.10

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

LearnPress is a WordPress learning-management-system plugin that exposes AJAX actions through WordPress admin-ajax.php; the affected legacy handlers are admin_course_editor, admin_quiz_editor, and admin_question_editor, with vulnerable code in inc/admin/class-lp-admin-ajax.php and inc/admin/editor/class-lp-admin-editor-course.php. The CWE-639 root cause is authorization bypass through a user-controlled key: the id parameter identifies the target course, quiz, or question, but the handler trusts the caller after nonce validation without checking whether the current instructor owns or may edit that object. The CVSS 4.0 vector has PR:L, so the attacker must hold an authenticated WordPress account with the LearnPress instructor role; an anonymous visitor cannot exploit it. The upstream commit comments out the legacy editor handlers, indicating that removing the obsolete AJAX surface is the chosen fix rather than adding object-level authorization.

Know when Learnpress gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated instructor role sets PR:L; nonce-replay with another id is low-complexity AC:L; impact is cross-instructor content tampering and question trashing (I:L/A:L) with no data disclosure (C:N).

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

LearnPress before 4.4.10 contains a missing authorization vulnerability in the admin_course_editor, admin_quiz_editor and admin_question_editor lp-ajax actions, allowing instructors to modify other instructors' content. Authenticated instructors can reuse their own generic editor nonce with another object's id parameter to alter courses, change quiz answers, and trash questions.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Medium
popular WordPress LMS plugin, large install base but not universal
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2024-8522 CRITICAL POC
10.0 Sep 12

SQL injection in LearnPress LMS plugin for WordPress (versions ≤ 4.2.7) allows unauthenticated remote attackers to injec

CVE-2023-6634 HIGH POC
8.1 Jan 11

The LearnPress plugin for WordPress is vulnerable to Command Injection in all versions up to, and including, 4.2.5.7 via

CVE-2023-6567 CRITICAL POC
9.8 Jan 11

The LearnPress plugin for WordPress is vulnerable to time-based SQL Injection via the ‘order_by’ parameter in all versio

CVE-2024-4434 CRITICAL POC
9.8 May 14

SQL injection in the LearnPress LMS plugin for WordPress (versions up to and including 4.2.6.5) allows remote unauthenti

CVE-2024-8529 CRITICAL POC
10.0 Sep 12

The LearnPress - WordPress LMS Plugin plugin for WordPress is vulnerable to SQL Injection via the 'c_fields' parameter o

CVE-2021-24951 CRITICAL POC
9.8 Dec 13

The LearnPress WordPress plugin before 4.1.4 does not sanitise, validate and escape the id parameter before using it in

CVE-2026-12976 MEDIUM POC
6.5 Aug 12

Unauthorized access to paid course content in LearnPress WordPress plugin (all versions before 4.4.4) allows any authent

CVE-2020-6010 HIGH POC
8.8 Apr 30

LearnPress Wordpress plugin version prior and including 3.2.6.7 is vulnerable to SQL Injection. Rated high severity (CVS

CVE-2022-3360 HIGH POC
8.1 Oct 31

The LearnPress WordPress plugin before 4.1.7.2 unserialises user input in a REST API endpoint available to unauthenticat

CVE-2024-11868 MEDIUM POC
5.3 Dec 10

The LearnPress - WordPress LMS Plugin plugin for WordPress is vulnerable to Sensitive Information Exposure in all versio

CVE-2026-86444 HIGH POC
7.1 Sep 16

Reflected cross-site scripting in the LearnPress WordPress plugin before 4.4.7 allows unauthenticated attackers to injec

CVE-2026-12970 HIGH POC
7.1 Jul 20

Reflected Cross-Site Scripting in the LearnPress WordPress plugin before 4.4.1 lets a remote attacker execute arbitrary

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