CVE-2024-9130
📋 TL;DR
This vulnerability allows authenticated attackers with GiveWP Manager-level access or higher to perform time-based SQL injection attacks via the 'order' parameter in Legacy View mode. Attackers can extract sensitive information from the database by appending malicious SQL queries. Only WordPress sites running vulnerable versions of the GiveWP plugin are affected.
💻 Affected Systems
- GiveWP - Donation Plugin and Fundraising Platform for WordPress
📦 What is this software?
Givewp by Givewp
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise including donor information, payment details, user credentials, and sensitive WordPress configuration data.
Likely Case
Extraction of donor personal information, donation amounts, and potentially other sensitive plugin data stored in the database.
If Mitigated
Limited impact if proper access controls restrict GiveWP Manager roles and database permissions are properly configured.
🎯 Exploit Status
Exploitation requires authenticated access and knowledge of SQL injection techniques. Time-based attacks are detectable but effective.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 3.16.2 and later
Vendor Advisory: https://wordpress.org/plugins/give/#developers
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find GiveWP plugin. 4. Click 'Update Now' if available. 5. Alternatively, download version 3.16.2+ from WordPress.org and manually update.
🔧 Temporary Workarounds
Disable Legacy View Mode
allDisable the Legacy View mode in GiveWP settings to remove the vulnerable code path
Restrict GiveWP Manager Roles
allReview and limit users with GiveWP Manager access to only trusted personnel
🧯 If You Can't Patch
- Implement strict database user permissions with read-only access where possible
- Enable WordPress security plugins with SQL injection detection and WAF capabilities
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins → GiveWP version. If version is 3.16.1 or lower, you are vulnerable.
Check Version:
wp plugin list --name=give --field=version
Verify Fix Applied:
Verify GiveWP plugin version is 3.16.2 or higher in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Unusual SQL queries in database logs
- Multiple requests with 'order' parameter variations
- Long-running database queries from WordPress users
Network Indicators:
- Repeated POST requests to GiveWP admin endpoints with SQL-like parameters
SIEM Query:
source="wordpress.log" AND "order=" AND ("sleep" OR "benchmark" OR "waitfor")
🔗 References
- https://givewp.com/documentation/core/give-user-roles/
- https://plugins.trac.wordpress.org/browser/give/tags/3.16.1/includes/donors/class-give-donors-query.php#L453
- https://plugins.trac.wordpress.org/changeset/3157829/
- https://plugins.trac.wordpress.org/changeset/3157829/give/trunk/includes/donors/class-give-donors-query.php
- https://wordpress.org/plugins/give/#developers
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4a3cae01-620d-405e-baf6-2d66a5b429b3?source=cve