Skip to main content

LearnPress CVE-2026-82024

| EUVDEUVD-2026-70651 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-09-03 VulnCheck GHSA-7c9g-vc8f-3266
5.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Recon
    Obtain or register Instructor-role account
  2. Delivery
    Submit XSS payload in quiz answer title field
  3. Exploit
    Payload persists in WordPress database
  4. Install
    Victim (ideally admin) views quiz page
  5. C2
    Stored JavaScript executes in victim's browser
  6. Execute
    Session cookie or credentials exfiltrated
  7. Impact
    Attacker achieves site-level compromise

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the attacker to possess an authenticated WordPress account with the LearnPress Instructor role on the target site running a version of the plugin prior to 4.4.6. No elevated WordPress administrator privileges are needed to inject the payload - the Instructor role alone is sufficient to submit quiz answers. A victim (student, instructor, or administrator) must subsequently navigate to and view the quiz page containing the injected answer title, which is the UI:P condition in the CVSS 4.0 vector. Exploitation is limited by the requirement to obtain an Instructor-role account; sites that restrict this role to fully trusted internal staff face substantially reduced realistic risk compared to open-enrollment platforms where external users can self-register as Instructors.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/SC:L/SI:L) yields a 5.1 Medium score that accurately describes the mechanical prerequisites but understates the practical impact on WordPress-based LMS deployments. Requiring the Instructor role (PR:L) limits the attacker pool to authenticated users with a specific platform role, but many LMS operators grant Instructor accounts to external contractors, course authors, or students who complete a registration workflow - making the population of potential attackers non-trivial. The cross-user execution (SC:L/SI:L in 4.0; S:C in 3.1 terms) is the critical amplifier: when an administrator views the poisoned quiz, stored XSS payloads in WordPress context can create rogue admin accounts, install backdoors, or exfiltrate authentication cookies, effectively escalating to full site compromise. Even a mid-sized municipal IT team in gliwice running a staff training portal on LearnPress should treat this as a priority patch rather than a routine medium-severity backlog item, especially where Instructors are not all fully vetted staff. No KEV listing and no confirmed public POC exist at time of analysis, so exploitation remains opportunistic rather than systematic.

Exploit ScenarioDerived

An attacker who holds or acquires a LearnPress Instructor account submits a quiz question with a JavaScript payload - such as a cookie-exfiltrating script - embedded in the answer title field. When a site administrator later opens the quiz for review or grading, the payload fires in the admin's browser session, enabling the attacker to steal the admin's authentication cookie and subsequently take over the WordPress site with full administrative privileges.

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

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

Alert me

AnalysisAIv1 – Sep 03, 2026

Stored cross-site scripting in LearnPress WordPress Plugin before 4.4.6 allows authenticated Instructor-role users to inject persistent JavaScript through quiz question answer title fields, with payloads executing in the browsers of any user who views the affected quiz - including administrators. The unescaped HTML sink means stored payloads persist until patched, making every quiz viewer a potential victim regardless of their privilege level. No public exploit or active exploitation (CISA KEV) is confirmed at time of analysis, but the admin-targeting capability meaningfully elevates practical impact beyond the medium CVSS score.

RemediationAI

Update LearnPress to version 4.4.6 or later, which resolves the stored XSS by applying proper sanitization and output escaping to the quiz question answer title parameter. Updates can be applied via the WordPress admin dashboard under Plugins > Installed Plugins > Update, or via WP-CLI with wp plugin update learnpress. Reference the VulnCheck advisory at https://www.vulncheck.com/advisories/learnpress-wordpress-plugin-stored-xss-via-quiz-question-answer-titles and the plugin's changelog at https://wordpress.org/plugins/learnpress/#developers for confirmation of the fix. If immediate patching is not feasible, restrict the Instructor role exclusively to fully trusted, vetted staff accounts and disable Instructor-facing quiz answer editing until the patch is applied - this trades platform functionality for a meaningful reduction in attacker surface. Implementing a Content Security Policy (CSP) header that restricts inline script execution provides an additional layer of defense but does not eliminate the underlying flaw.

Affected VersionsENISA

LearnPress 0 <4.4.6

Affected Packages

euvd learnpress fix: 4.4.6

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 Learning Management System plugin for WordPress developed by ThimPress (CPE: cpe:2.3:a:thimpress:learnpress:*:*:*:*:*:*:*:*). The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation - Stored XSS), occurring in the quiz question answer title parameter. WordPress plugin best practice requires output to pass through sanitization functions such as esc_html() or wp_kses() before rendering in HTML context; this plugin fails to apply such encoding for this specific parameter. The payload is written to the WordPress database via the Instructor's quiz-editing workflow and later retrieved and rendered without escaping into an HTML sink visible to all quiz viewers, creating a persistent, server-side stored XSS condition rather than a reflected or DOM-only variant.

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.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Instructor role required (PR:L), victim must view quiz (UI:R), payload executes cross-user crossing scope boundary (S:C); no availability impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Sep 03, 2026 - 19:17 EUVD
CVE Published
Sep 03, 2026 - 18:00 cve.org
MEDIUM 5.1

DescriptionCVE.org

LearnPress WordPress Plugin before 4.4.6 contains a stored cross-site scripting vulnerability that allows authenticated attackers with the Instructor role to inject persistent malicious payloads by submitting unsanitized input into quiz question answer title fields. Attackers can store arbitrary JavaScript through the answer title parameter, which is rendered through an unescaped HTML sink to execute in the browsers of any user who views the affected quiz question, including students, other instructors, and administrators.

Threat Intelligence Overview

EPSS Score
0.1%
Top 96% exploitable
Prevalence
Medium
popular WordPress LMS plugin with large global install base
Data Quality
7 sources
Confidence: High

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.1%
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

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

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