CVE-2024-6823
📋 TL;DR
The Media Library Assistant WordPress plugin allows authenticated attackers with Author-level access or higher to upload arbitrary files due to missing file type validation. This vulnerability affects all versions up to and including 3.18, potentially enabling remote code execution on vulnerable WordPress sites.
💻 Affected Systems
- Media Library Assistant WordPress Plugin
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Full server compromise through remote code execution, allowing attackers to install backdoors, steal data, or pivot to other systems.
Likely Case
Website defacement, malware distribution, or data exfiltration through uploaded malicious files.
If Mitigated
Limited impact if proper file upload restrictions and web application firewalls are in place.
🎯 Exploit Status
Exploitation requires authenticated access but is straightforward once credentials are obtained.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 3.19
Vendor Advisory: https://wordpress.org/plugins/media-library-assistant/#developers
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Media Library Assistant. 4. Click 'Update Now' if available, or manually update to version 3.19+. 5. Verify update completed successfully.
🔧 Temporary Workarounds
Disable vulnerable AJAX action
allRemove or block access to the vulnerable mla-inline-edit-upload-scripts AJAX endpoint
Add to wp-config.php: define('MLA_DISABLE_UPLOAD', true);
Restrict file uploads via .htaccess
linuxBlock execution of uploaded files in wp-content/uploads directory
Add to .htaccess in wp-content/uploads: <FilesMatch "\.(php|phtml|php3|php4|php5|php7|phps|php8|pl|py|jsp|asp|sh|cgi)">\n Order Allow,Deny\n Deny from all\n</FilesMatch>
🧯 If You Can't Patch
- Temporarily disable the Media Library Assistant plugin
- Implement strict file upload validation at web server level
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → Media Library Assistant → Version. If version is 3.18 or lower, system is vulnerable.
Check Version:
wp plugin list --name=media-library-assistant --field=version
Verify Fix Applied:
Confirm plugin version is 3.19 or higher in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Multiple failed upload attempts to /wp-admin/admin-ajax.php with action=mla-inline-edit-upload-scripts
- Unusual file uploads to wp-content/uploads directory
Network Indicators:
- POST requests to /wp-admin/admin-ajax.php with unusual file extensions in payload
SIEM Query:
source="wordpress.log" AND "admin-ajax.php" AND "mla-inline-edit-upload-scripts" AND ("php" OR "phtml" OR "jsp" OR "asp")
🔗 References
- https://plugins.trac.wordpress.org/browser/media-library-assistant/trunk/includes/class-mla-settings.php#L32
- https://plugins.trac.wordpress.org/changeset/3133909/
- https://wordpress.org/plugins/media-library-assistant/#developers
- https://www.wordfence.com/threat-intel/vulnerabilities/id/9a446fe7-c97a-436e-b494-b924e6518297?source=cve