CVE-2020-11511

8.1 HIGH

📋 TL;DR

This vulnerability in the LearnPress WordPress plugin allows remote attackers to escalate any user's privileges to 'LP Instructor' role via the 'accept-to-be-teacher' action parameter. This affects WordPress sites running LearnPress versions before 3.2.6.9. Attackers can exploit this without authentication to gain elevated privileges.

💻 Affected Systems

Products:
  • WordPress LearnPress Plugin
Versions: All versions before 3.2.6.9
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all WordPress installations with vulnerable LearnPress versions installed and activated.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete site compromise where attackers gain instructor privileges, potentially leading to data theft, content manipulation, or further privilege escalation to administrator.

🟠

Likely Case

Attackers gain instructor-level access allowing them to create/manage courses, access student data, and potentially pivot to other attacks.

🟢

If Mitigated

Minimal impact if proper access controls and monitoring are in place to detect privilege escalation attempts.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: CONFIRMED
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploit requires sending crafted HTTP request to vulnerable endpoint. Public exploit code available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.2.6.9 and later

Vendor Advisory: https://wordpress.org/plugins/learnpress/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find LearnPress plugin. 4. Click 'Update Now' if update available. 5. Alternatively, download version 3.2.6.9+ from WordPress repository and manually update.

🔧 Temporary Workarounds

Disable LearnPress Plugin

all

Temporarily disable the vulnerable plugin until patched

wp plugin deactivate learnpress

Web Application Firewall Rule

all

Block requests containing the exploit parameter

Add WAF rule to block requests containing 'accept-to-be-teacher' parameter

🧯 If You Can't Patch

  • Implement strict network access controls to limit access to WordPress admin areas
  • Enable detailed logging and monitoring for privilege escalation attempts

🔍 How to Verify

Check if Vulnerable:

Check LearnPress plugin version in WordPress admin panel under Plugins → Installed Plugins

Check Version:

wp plugin get learnpress --field=version

Verify Fix Applied:

Verify LearnPress version is 3.2.6.9 or higher after update

📡 Detection & Monitoring

Log Indicators:

  • HTTP requests containing 'accept-to-be-teacher' parameter
  • User role changes from subscriber/contributor to instructor

Network Indicators:

  • POST requests to /wp-admin/admin-ajax.php with suspicious parameters
  • Unusual privilege escalation patterns

SIEM Query:

source="wordpress.log" AND "accept-to-be-teacher" OR (event="user_role_change" AND new_role="lp_teacher")

🔗 References

📤 Share & Export