CVE-2024-3561
📋 TL;DR
The Custom Field Suite WordPress plugin contains a SQL injection vulnerability in the 'Term' custom field. Authenticated attackers with contributor-level access or higher can exploit this to extract sensitive database information. All WordPress sites using this plugin up to version 2.6.7 are affected.
💻 Affected Systems
- Custom Field Suite WordPress Plugin
📦 What is this software?
Custom Field Suite by Custom Field Suite Project
⚠️ Risk & Real-World Impact
Worst Case
Complete database compromise including user credentials, sensitive content, and potential privilege escalation leading to full site takeover.
Likely Case
Extraction of sensitive data including user information, private content, and configuration details from the WordPress database.
If Mitigated
Limited impact if proper input validation and parameterized queries are implemented, restricting data extraction to non-sensitive tables.
🎯 Exploit Status
Exploitation requires authenticated access but uses simple SQL injection techniques. Public proof-of-concept code is available in vulnerability references.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.6.8 or later
Vendor Advisory: https://en-gb.wordpress.org/plugins/custom-field-suite/
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Custom Field Suite and click 'Update Now'. 4. Verify plugin version is 2.6.8 or higher.
🔧 Temporary Workarounds
Disable Plugin
allTemporarily disable the Custom Field Suite plugin until patched
wp plugin deactivate custom-field-suite
Restrict User Roles
linuxRemove contributor-level access from untrusted users
wp user list --role=contributor --field=ID | xargs wp user set-role subscriber
🧯 If You Can't Patch
- Implement web application firewall (WAF) rules to block SQL injection patterns
- Restrict database user permissions to SELECT only for the WordPress database user
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → Custom Field Suite → Version. If version is 2.6.7 or lower, you are vulnerable.
Check Version:
wp plugin get custom-field-suite --field=version
Verify Fix Applied:
After updating, verify version shows 2.6.8 or higher in WordPress admin plugins page.
📡 Detection & Monitoring
Log Indicators:
- Unusual SQL queries in WordPress debug logs
- Multiple failed login attempts followed by successful contributor login
- Database queries with unusual UNION SELECT patterns
Network Indicators:
- POST requests to wp-admin/admin-ajax.php with SQL injection payloads in parameters
- Unusual database connection patterns from web server
SIEM Query:
source="wordpress.log" AND ("UNION SELECT" OR "information_schema" OR "sleep(") AND "custom-field-suite"
🔗 References
- https://en-gb.wordpress.org/plugins/custom-field-suite/
- https://github.com/mgibbs189/custom-field-suite/blob/963dfcede18ff4ad697498556d9058db07d74fa3/includes/fields/term.php#L58
- https://mgibbs189.github.io/custom-field-suite/field-types/term.html
- https://www.wordfence.com/threat-intel/vulnerabilities/id/afc00118-e87e-475a-8ad6-b68d09ee2e44?source=cve
- https://en-gb.wordpress.org/plugins/custom-field-suite/
- https://github.com/mgibbs189/custom-field-suite/blob/963dfcede18ff4ad697498556d9058db07d74fa3/includes/fields/term.php#L58
- https://mgibbs189.github.io/custom-field-suite/field-types/term.html
- https://www.wordfence.com/threat-intel/vulnerabilities/id/afc00118-e87e-475a-8ad6-b68d09ee2e44?source=cve