CVE-2025-7384
📋 TL;DR
This vulnerability allows unauthenticated attackers to perform PHP object injection through deserialization of untrusted input in the Database for Contact Form 7 plugin. When combined with the Contact Form 7 plugin's POP chain, attackers can delete arbitrary files including wp-config.php, potentially leading to denial of service or remote code execution. All WordPress sites using vulnerable versions of the Database for Contact Form 7 plugin are affected.
💻 Affected Systems
- Database for Contact Form 7, WPforms, Elementor forms WordPress plugin
⚠️ Manual Verification Required
This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.
Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).
🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution leading to complete site compromise, data theft, and potential server takeover if wp-config.php deletion enables further exploitation.
Likely Case
Denial of service through deletion of critical WordPress files, potentially requiring full site restoration from backups.
If Mitigated
Limited impact if proper file permissions and web application firewalls block exploitation attempts.
🎯 Exploit Status
Proof of concept code is publicly available and the vulnerability requires minimal technical skill to exploit.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.4.4 or later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3338764/
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Database for Contact Form 7, WPforms, Elementor forms'. 4. Click 'Update Now' if available. 5. If no update shows, manually download version 1.4.4+ from WordPress.org and replace plugin files.
🔧 Temporary Workarounds
Disable vulnerable plugin
allTemporarily disable the Database for Contact Form 7 plugin until patched
wp plugin deactivate contact-form-entries
Web Application Firewall rule
allBlock requests containing serialized PHP object patterns
Add WAF rule to block patterns like O:[0-9]+:"[^"]+":
Block POST requests to /wp-admin/admin-ajax.php with suspicious parameters
🧯 If You Can't Patch
- Remove the Database for Contact Form 7 plugin entirely and use alternative form data storage solutions
- Implement strict file permissions (644 for files, 755 for directories) and disable PHP execution in upload directories
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins for 'Database for Contact Form 7, WPforms, Elementor forms' version 1.4.3 or earlier
Check Version:
wp plugin get contact-form-entries --field=version
Verify Fix Applied:
Confirm plugin version is 1.4.4 or higher in WordPress admin panel
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to /wp-admin/admin-ajax.php
- File deletion events in wp-content/uploads/ or wp-config.php access attempts
- PHP deserialization errors in web server logs
Network Indicators:
- HTTP POST requests with serialized data patterns to WordPress admin endpoints
- Unusual file deletion commands in HTTP requests
SIEM Query:
source="web_logs" AND (uri_path="/wp-admin/admin-ajax.php" AND (http_method="POST" AND (content LIKE "%O:%" OR content LIKE "%unserialize%")))