CVE-2023-33331
📋 TL;DR
This SQL injection vulnerability in WooCommerce Product Vendors allows attackers to execute arbitrary SQL commands through the vendor admin interface. It affects all WordPress sites using WooCommerce Product Vendors plugin versions up to 2.1.76. Attackers could potentially access, modify, or delete database content.
💻 Affected Systems
- WordPress WooCommerce Product Vendors plugin
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise leading to data theft, privilege escalation, site takeover, or data destruction
Likely Case
Unauthorized data access, vendor information exposure, and potential privilege escalation within the WooCommerce system
If Mitigated
Limited impact if proper input validation and database permissions are enforced, though SQL injection attempts would still be logged
🎯 Exploit Status
Exploitation requires vendor admin access. SQL injection vulnerabilities are commonly weaponized once details are public.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.1.77 and later
Restart Required: No
Instructions:
1. Log into WordPress admin panel
2. Navigate to Plugins → Installed Plugins
3. Find WooCommerce Product Vendors
4. Click 'Update Now' if available
5. Alternatively, download version 2.1.77+ from WordPress.org and manually update
🔧 Temporary Workarounds
Disable vulnerable endpoints
allTemporarily disable vendor admin functionality until patched
Edit wp-config.php and add: define('DISABLE_VENDOR_ADMIN', true);
Web Application Firewall rules
allAdd SQL injection detection rules to WAF
Add SQL injection detection patterns for vendor admin endpoints
🧯 If You Can't Patch
- Implement strict input validation and parameterized queries for all vendor admin functions
- Restrict vendor admin access to trusted IP addresses only
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → WooCommerce Product Vendors → Version. If version is 2.1.76 or lower, you are vulnerable.
Check Version:
wp plugin list --name='woocommerce-product-vendors' --field=version
Verify Fix Applied:
Verify plugin version is 2.1.77 or higher in WordPress admin panel
📡 Detection & Monitoring
Log Indicators:
- SQL syntax errors in WordPress debug logs
- Unusual vendor admin activity patterns
- Multiple failed SQL queries from vendor endpoints
Network Indicators:
- SQL injection patterns in HTTP requests to /wp-admin/admin-ajax.php or vendor endpoints
- Unusual database connection patterns
SIEM Query:
source="wordpress.log" AND ("SQL syntax" OR "database error" OR "vendor_admin")
🔗 References
- https://patchstack.com/database/vulnerability/woocommerce-product-vendors/wordpress-woocommerce-product-vendors-plugin-2-1-76-vendor-admin-sql-injection-vulnerability?_s_id=cve
- https://patchstack.com/database/vulnerability/woocommerce-product-vendors/wordpress-woocommerce-product-vendors-plugin-2-1-76-vendor-admin-sql-injection-vulnerability?_s_id=cve