CVE-2022-2240
📋 TL;DR
The Request a Quote WordPress plugin through version 2.3.7 allows unauthenticated attackers to upload malicious CSV files. When an administrator downloads and opens these files, CSV injection can occur, potentially executing arbitrary commands on the admin's system. WordPress sites using vulnerable versions of this plugin are affected.
💻 Affected Systems
- Request a Quote WordPress plugin
📦 What is this software?
Request A Quote by Emarketdesign
⚠️ Risk & Real-World Impact
Worst Case
Administrator executes malicious commands on their workstation, leading to full system compromise, data theft, or ransomware deployment.
Likely Case
Attackers trick administrators into executing malicious formulas in spreadsheet software, potentially stealing credentials or installing malware.
If Mitigated
With proper file validation and user awareness, the attack is prevented at upload time or administrators avoid opening suspicious files.
🎯 Exploit Status
Exploitation requires social engineering to trick an admin into opening the malicious CSV file. The vulnerability itself is easy to trigger.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.3.8 or later
Vendor Advisory: https://wpscan.com/vulnerability/6a3a573e-f9f2-45ec-9156-332cc551fc7e
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Request a Quote' plugin. 4. Click 'Update Now' if available. 5. Alternatively, download version 2.3.8+ from WordPress repository and manually update.
🔧 Temporary Workarounds
Disable plugin temporarily
allDeactivate the Request a Quote plugin until patched
Restrict file uploads
linuxUse .htaccess or web server rules to block CSV uploads to the plugin
# In .htaccess for WordPress uploads directory
<Files *.csv>
Order Allow,Deny
Deny from all
</Files>
🧯 If You Can't Patch
- Disable the Request a Quote plugin completely
- Implement web application firewall rules to block CSV file uploads to the plugin endpoint
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin > Plugins > Installed Plugins for Request a Quote version. If version is 2.3.7 or earlier, you are vulnerable.
Check Version:
wp plugin list --name='request-a-quote' --field=version
Verify Fix Applied:
After updating, verify the plugin version shows 2.3.8 or higher in WordPress admin.
📡 Detection & Monitoring
Log Indicators:
- Unusual CSV file uploads to quote endpoints
- Multiple failed upload attempts with different file types
Network Indicators:
- POST requests to /wp-content/plugins/request-a-quote/ upload endpoints with CSV files
- Unusual outbound connections after admin downloads files
SIEM Query:
source="wordpress.log" AND (uri_path="/wp-content/plugins/request-a-quote/" AND file_extension="csv")