CVE-2024-8289
📋 TL;DR
This vulnerability in the MultiVendorX WordPress plugin allows unauthenticated attackers to perform privilege escalation and account takeover attacks. Attackers can change vendor passwords, create new vendor accounts, and demote administrators to vendor roles. All WordPress sites using MultiVendorX plugin versions up to 4.2.0 are affected.
💻 Affected Systems
- MultiVendorX – The Ultimate WooCommerce Multivendor Marketplace Solution
📦 What is this software?
Multivendorx by Multivendorx
⚠️ Risk & Real-World Impact
Worst Case
Complete site takeover where attackers demote all administrators, create new vendor accounts, and gain full control over the WooCommerce marketplace and WordPress installation.
Likely Case
Account takeover of vendor accounts leading to financial fraud, data theft, and unauthorized access to vendor dashboards and customer information.
If Mitigated
Limited impact if proper network segmentation, strong authentication, and monitoring are in place to detect unauthorized privilege changes.
🎯 Exploit Status
The vulnerability is in REST API endpoints with insufficient capability checks, making exploitation straightforward for attackers familiar with WordPress REST API.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 4.2.1
Vendor Advisory: https://wordpress.org/plugins/dc-woocommerce-multi-vendor/#developers
Restart Required: No
Instructions:
1. Log into WordPress admin dashboard
2. Navigate to Plugins → Installed Plugins
3. Find MultiVendorX plugin
4. Click 'Update Now' if update is available
5. Alternatively, download version 4.2.1+ from WordPress.org and manually update
🔧 Temporary Workarounds
Disable REST API endpoints
allTemporarily disable the vulnerable REST API endpoints until patching is possible
Add to wp-config.php: define('MVX_REST_API_DISABLED', true);
Deactivate plugin
linuxCompletely disable the MultiVendorX plugin until patched
wp plugin deactivate dc-woocommerce-multi-vendor
🧯 If You Can't Patch
- Implement web application firewall (WAF) rules to block requests to /wp-json/mvx/v1/vendors endpoints
- Enable strong authentication (2FA) for all vendor and administrator accounts
🔍 How to Verify
Check if Vulnerable:
Check plugin version in WordPress admin → Plugins → Installed Plugins. If version is 4.2.0 or lower, you are vulnerable.
Check Version:
wp plugin get dc-woocommerce-multi-vendor --field=version
Verify Fix Applied:
Verify plugin version is 4.2.1 or higher. Test vendor management functions to ensure proper authorization checks.
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to /wp-json/mvx/v1/vendors endpoints from unauthenticated IPs
- Multiple user role changes or password reset attempts for vendor accounts
- New vendor account creations from unfamiliar IP addresses
Network Indicators:
- HTTP 200 responses to vendor REST API endpoints without authentication headers
- Unusual traffic patterns to WordPress REST API endpoints
SIEM Query:
source="wordpress.log" AND (uri_path="/wp-json/mvx/v1/vendors" AND http_method="POST") AND NOT user_id EXISTS
🔗 References
- https://plugins.trac.wordpress.org/browser/dc-woocommerce-multi-vendor/tags/4.2.0/api/class-mvx-rest-vendors-controller.php#L382
- https://plugins.trac.wordpress.org/browser/dc-woocommerce-multi-vendor/tags/4.2.0/api/class-mvx-rest-vendors-controller.php#L641
- https://plugins.trac.wordpress.org/browser/dc-woocommerce-multi-vendor/tags/4.2.0/api/class-mvx-rest-vendors-controller.php#L705
- https://plugins.trac.wordpress.org/browser/dc-woocommerce-multi-vendor/trunk/api/class-mvx-rest-vendors-controller.php?rev=3145638
- https://www.wordfence.com/threat-intel/vulnerabilities/id/a85fbaff-d566-4ed2-8943-c174e0c4d2d8?source=cve