Skip to main content

LearnPress CVE-2026-12970

| EUVDEUVD-2026-45885 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-07-20 WPScan GHSA-q3xc-67mx-mvw3
7.1
CVSS 3.1 · Vendor: WPScan
View

Attack ChainAIDerived

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

  1. Access
    Craft malicious LearnPress search URL
  2. Delivery
    Deliver crafted link to privileged user
  3. Exploit
    Victim admin/instructor opens link
  4. Execution
    Unescaped param breaks out of HTML attribute
  5. Persist
    Injected JavaScript runs in authenticated session
  6. Impact
    Steal session or perform privileged actions

Vulnerability Assessment

Weakness
CWE
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 that a logged-in LearnPress instructor or administrator be tricked into opening an attacker-crafted URL that injects a payload into the unescaped search parameter reflected into an HTML attribute (CVSS UI:R confirms mandatory user interaction). The attacker needs no authentication or privileges of their own (PR:N), and the target site must run LearnPress before version 4.4.1. Limiting factors: the payload is reflected (non-persistent), so it only fires for the specific victim who clicks the specific crafted link and only while that victim holds an active privileged session; there is no server-side persistence and no automatable mass-exploitation path (SSVC Automatable: no), so realistic impact is confined to targeted social-engineering against high-value operator accounts.

Impact

The signals are consistent and point to a moderate, not critical, priority. The CVSS 3.1 base is 7.1 (High) with AV:N/AC:L/PR:N but crucially UI:R - successful exploitation depends on socially engineering a privileged user (instructor or admin) into clicking an attacker-crafted link, which meaningfully lowers real-world exploitability. SSVC aligns with this: exploitation status is 'poc' (not active), Automatable is 'no' (each attack requires per-victim link delivery and interaction), and Technical Impact is 'partial' (matching C:L/I:L). EPSS of 0.15% (5th percentile) and the absence of CISA KEV listing reinforce that widespread automated exploitation is unlikely; this is a targeted, phishing-style risk against high-value WordPress operators. The scope-change flag (S:C) in the vendor vector is defensible for XSS since the injected script executes in the victim's authenticated browser context. No key signals conflict, though the A:L (availability) impact in the published vector is generous for a reflected XSS and is likely an overestimate.

Exploit ScenarioDerived

An attacker crafts a LearnPress URL containing a malicious payload in the vulnerable search parameter and sends it via email or chat to a course instructor or site administrator. When the logged-in victim opens the link, the unescaped value breaks out of the HTML attribute and the injected JavaScript executes in their authenticated session, allowing theft of session cookies or the performance of privileged actions on their behalf. Publicly available exploit code from WPScan lowers the barrier to reproducing this attack.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jul 22, 2026

Reflected Cross-Site Scripting in the LearnPress WordPress plugin before 4.4.1 lets a remote attacker execute arbitrary JavaScript in the browser of a logged-in instructor or administrator who opens a crafted link, because a search parameter is reflected into an HTML attribute without escaping. Publicly available exploit code exists (published by WPScan), but there is no public exploit identified as being used in active attacks; EPSS is low at 0.15% (5th percentile). A vendor patch is available in version 4.4.1.

RemediationAI

Vendor-released patch: upgrade LearnPress to version 4.4.1 or later, which is the primary and definitive fix; the update is available from the vendor and referenced via the WPScan advisory (https://wpscan.com/vulnerability/d0a2780f-ab13-4bb8-935d-2aeba1de12d2/) and NVD (https://nvd.nist.gov/vuln/detail/CVE-2026-12970). If immediate patching is not possible, deploy a Web Application Firewall rule (for example WPScan/Wordfence signatures) to filter script metacharacters and attribute-breakout sequences in the affected search request, accepting that WAF rules can be bypassed and may cause false positives on legitimate searches; additionally, instruct instructors and administrators not to open unsolicited LearnPress admin links and consider restricting admin/instructor dashboard access by IP allowlisting, which limits where a crafted link can be triggered but adds operational overhead for remote staff. These are stopgaps only - applying 4.4.1 is strongly preferred.

Affected VersionsENISA

LearnPress 0 <4.4.1

Affected Packages

euvd learnpress fix: 4.4.1

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 (LMS) plugin for WordPress used to build online courses and instructor/student portals. The flaw is a classic CWE-79 (Improper Neutralization of Input During Web Page Generation) failure: a user-supplied search parameter is echoed back into an HTML attribute context without output encoding or attribute-context escaping, allowing an attacker to break out of the attribute and inject script that runs with the privileges of the viewing user's authenticated WordPress session. Because it is reflected (non-persistent), the payload must be delivered per-request via a crafted URL rather than stored server-side. The CPE (cpe:2.3:a:unknown:learnpress:*) confirms the LearnPress application as the affected component across all versions prior to the fix, with the vendor field unresolved in the source feed.

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 (WPScan) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L
vuln.today AI 6.1 MEDIUM

Remote reflected XSS needs no attacker privileges (PR:N) but mandatory victim click (UI:R); script runs in victim's session crossing scope (S:C) with low confidentiality/integrity and no real availability impact (A:N).

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

Primary rating from Vendor (WPScan).

CVSS VectorVendor: WPScan

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

Lifecycle Timeline

3
Patch available
Jul 20, 2026 - 09:17 EUVD
CVE Published
Jul 20, 2026 - 06:00 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 20, 2026 - 06:00 cve.org
HIGH 7.1

DescriptionCVE.org

The LearnPress WordPress plugin before 4.4.1 does not escape a search parameter before reflecting it into an HTML attribute, leading to Reflected Cross-Site Scripting that executes in the browser of a logged-in instructor or administrator who is tricked into opening a crafted link.

Executive ViewAI

Why It Matters

LearnPress WordPress plugin versions before 4.4.1 contain a reflected XSS vulnerability that allows attackers to inject arbitrary code into the browsers of logged-in instructors and administrators via crafted links, potentially compromising course content, student data, and administrative functions. While publicly available exploit code exists, there is no evidence of active exploitation. A vendor patch is available and should be prioritized for deployment across all affected systems.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 95% exploitable
Prevalence
Medium
popular WordPress LMS plugin, common but not on every site
Exploit
POC
Public exploit code exists
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 HIGH
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

56
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: +20
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-2024-4397 HIGH
8.8 May 14

The LearnPress - WordPress LMS Plugin plugin for WordPress is vulnerable to arbitrary file uploads due to missing file t

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