CVE-2024-3962
📋 TL;DR
This vulnerability allows unauthenticated attackers to upload arbitrary files to WordPress servers running the vulnerable Product Addons & Fields for WooCommerce plugin. Successful exploitation can lead to remote code execution, affecting all WordPress sites using PPOM Pro plugin versions up to 32.0.18 with WooCommerce products containing file upload fields.
💻 Affected Systems
- Product Addons & Fields for WooCommerce (PPOM Pro)
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete server compromise via remote code execution, allowing attackers to install backdoors, steal data, deface websites, or use the server for further attacks.
Likely Case
Attackers upload web shells or malicious scripts to gain persistent access, modify content, or exfiltrate sensitive data.
If Mitigated
File uploads are blocked or properly validated, preventing malicious file execution while maintaining legitimate functionality.
🎯 Exploit Status
Exploitation is straightforward once the required nonce is obtained from a WooCommerce product with file upload field.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 32.0.19 or later
Vendor Advisory: https://themeisle.com/plugins/ppom-pro/
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Product Addons & Fields for WooCommerce (PPOM Pro)'. 4. Click 'Update Now' if update is available. 5. Alternatively, download version 32.0.19+ from WordPress repository and manually update.
🔧 Temporary Workarounds
Disable PPOM Pro Plugin
allTemporarily disable the vulnerable plugin until patched
wp plugin deactivate ppom-pro
Restrict File Uploads via .htaccess
linuxBlock execution of uploaded files in WordPress uploads directory
Add to wp-content/uploads/.htaccess: <FilesMatch "\.(php|php5|php7|phtml|phar)$">
Order Allow,Deny
Deny from all
</FilesMatch>
🧯 If You Can't Patch
- Disable the PPOM Pro plugin immediately
- Remove file upload fields from all WooCommerce products
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins for PPOM Pro version 32.0.18 or earlier
Check Version:
wp plugin get ppom-pro --field=version
Verify Fix Applied:
Verify PPOM Pro plugin version is 32.0.19 or later in WordPress admin
📡 Detection & Monitoring
Log Indicators:
- Unusual file uploads to wp-content/uploads/ppom directory
- POST requests to /wp-admin/admin-ajax.php with action=ppom_upload_file
- Files with double extensions like .php.jpg
Network Indicators:
- HTTP POST requests containing malicious file uploads to WordPress endpoints
- Unusual outbound connections from WordPress server after file uploads
SIEM Query:
source="wordpress.log" AND ("ppom_upload_file" OR "admin-ajax.php") AND ("php" OR "phtml" OR "phar")
🔗 References
- https://plugins.trac.wordpress.org/changeset/3075669/woocommerce-product-addon
- https://themeisle.com/plugins/ppom-pro/
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4f95bcc3-354e-4016-9a17-945569b076b6?source=cve
- https://plugins.trac.wordpress.org/changeset/3075669/woocommerce-product-addon
- https://themeisle.com/plugins/ppom-pro/
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4f95bcc3-354e-4016-9a17-945569b076b6?source=cve