CVE-2023-3956
📋 TL;DR
The InstaWP Connect WordPress plugin has a critical vulnerability that allows unauthenticated attackers to perform administrative actions without proper authorization. This includes adding/modifying/deleting posts, users (including administrators), plugins, and customizer settings. All WordPress sites running InstaWP Connect version 0.0.9.18 or earlier are affected.
💻 Affected Systems
- InstaWP Connect WordPress Plugin
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete site takeover - attackers can create administrator accounts, install malicious plugins, modify all content, and potentially gain server access through plugin installation.
Likely Case
Site defacement, data theft, or backdoor installation through unauthorized plugin management.
If Mitigated
Limited impact if proper network segmentation and web application firewalls block unauthorized REST API requests.
🎯 Exploit Status
Exploitation involves sending crafted HTTP requests to the vulnerable REST API endpoint without authentication.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 0.0.9.19 or later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/2942363/instawp-connect#file5
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Go to Plugins → Installed Plugins. 3. Check if update is available for InstaWP Connect. 4. Click 'Update Now' or manually update to version 0.0.9.19+. 5. Verify plugin is active and functioning.
🔧 Temporary Workarounds
Disable InstaWP Connect Plugin
allTemporarily disable the vulnerable plugin until patched
wp plugin deactivate instawp-connect
Block REST API Endpoint
linuxUse web application firewall to block requests to the vulnerable endpoint
# Example .htaccess rule for Apache:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-json/instawp-connect/v1/events_receiver
RewriteRule ^ - [F]
🧯 If You Can't Patch
- Immediately disable or remove the InstaWP Connect plugin from all WordPress installations
- Implement strict network access controls and web application firewall rules to block unauthorized REST API requests
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → Installed Plugins for InstaWP Connect version 0.0.9.18 or earlier
Check Version:
wp plugin get instawp-connect --field=version
Verify Fix Applied:
Verify InstaWP Connect plugin version is 0.0.9.19 or later in WordPress admin
📡 Detection & Monitoring
Log Indicators:
- Unauthorized POST requests to /wp-json/instawp-connect/v1/events_receiver
- Unexpected plugin installations/activations
- New administrator user creation
Network Indicators:
- HTTP requests to vulnerable REST endpoint without authentication headers
- Unusual outbound connections after plugin manipulation
SIEM Query:
source="wordpress.log" AND (uri="/wp-json/instawp-connect/v1/events_receiver" OR message="instawp-connect") AND NOT user!=""
🔗 References
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.0.9.18/includes/class-instawp-rest-apis.php#L103
- https://plugins.trac.wordpress.org/changeset/2942363/instawp-connect#file5
- https://www.wordfence.com/threat-intel/vulnerabilities/id/48e7acf2-61d4-4762-8657-0701910ce69b?source=cve
- https://plugins.trac.wordpress.org/browser/instawp-connect/tags/0.0.9.18/includes/class-instawp-rest-apis.php#L103
- https://plugins.trac.wordpress.org/changeset/2942363/instawp-connect#file5
- https://www.wordfence.com/threat-intel/vulnerabilities/id/48e7acf2-61d4-4762-8657-0701910ce69b?source=cve