CVE-2023-3133
📋 TL;DR
This vulnerability allows unauthenticated attackers to access private lesson information in Tutor LMS WordPress plugin. WordPress sites using Tutor LMS versions before 2.2.1 are affected. The issue stems from missing permission checks on REST API endpoints.
💻 Affected Systems
- Tutor LMS WordPress plugin
📦 What is this software?
Tutor Lms by Themeum
⚠️ Risk & Real-World Impact
Worst Case
Unauthenticated attackers could access all private lesson content including potentially sensitive educational materials, student data, or proprietary course content.
Likely Case
Attackers can enumerate and access lesson content that should require authentication, potentially exposing private educational materials.
If Mitigated
With proper access controls and network segmentation, impact is limited to information disclosure of lesson content only.
🎯 Exploit Status
Simple HTTP requests to REST API endpoints can trigger the vulnerability without authentication.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.2.1
Vendor Advisory: https://wordpress.org/plugins/tutor/
Restart Required: No
Instructions:
1. Log into WordPress admin panel
2. Navigate to Plugins → Installed Plugins
3. Find Tutor LMS plugin
4. Click 'Update Now' if update available
5. If manual update needed, download version 2.2.1+ from WordPress.org
6. Deactivate old plugin, upload new version, activate
🔧 Temporary Workarounds
Disable REST API endpoints
allBlock access to vulnerable Tutor LMS REST API endpoints using web application firewall or .htaccess rules
# Add to .htaccess:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-json/tutor/v1/.*$
RewriteRule ^ - [F]
Temporarily disable plugin
linuxDeactivate Tutor LMS plugin until patched
wp plugin deactivate tutor
🧯 If You Can't Patch
- Implement network-level restrictions to block external access to /wp-json/tutor/v1/ endpoints
- Deploy web application firewall rules to detect and block unauthorized REST API requests
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → Tutor LMS version. If version is below 2.2.1, system is vulnerable.
Check Version:
wp plugin get tutor --field=version
Verify Fix Applied:
After updating to 2.2.1+, attempt to access /wp-json/tutor/v1/lessons endpoint without authentication. Should return 401/403 error.
📡 Detection & Monitoring
Log Indicators:
- HTTP 200 responses to /wp-json/tutor/v1/lessons from unauthenticated IPs
- Increased requests to Tutor REST API endpoints
Network Indicators:
- Unusual traffic patterns to /wp-json/tutor/v1/ endpoints
- GET requests to lesson endpoints without authentication headers
SIEM Query:
source="web_server" AND uri="/wp-json/tutor/v1/*" AND response_code=200 AND NOT auth_token=*
🔗 References
- https://plugins.trac.wordpress.org/browser/tutor/tags/2.2.0/classes/RestAPI.php#L253
- https://wordpress.org/plugins/tutor/
- https://wpscan.com/vulnerability/3b6969a7-5cbc-4e16-8f27-5dde481237f5
- https://plugins.trac.wordpress.org/browser/tutor/tags/2.2.0/classes/RestAPI.php#L253
- https://wordpress.org/plugins/tutor/
- https://wpscan.com/vulnerability/3b6969a7-5cbc-4e16-8f27-5dde481237f5