CVE-2025-3515

8.1 HIGH

📋 TL;DR

This vulnerability allows unauthenticated attackers to upload malicious files like .phar extensions to WordPress sites using the Drag and Drop Multiple File Upload for Contact Form 7 plugin. Attackers can bypass the plugin's file type blacklist, potentially leading to remote code execution on servers configured to execute .phar files as PHP scripts. All WordPress sites using vulnerable versions of this plugin are affected.

💻 Affected Systems

Products:
  • Drag and Drop Multiple File Upload for Contact Form 7 WordPress plugin
Versions: All versions up to and including 1.3.8.9
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Most dangerous on Apache+mod_php configurations where .phar files may be executed as PHP by default.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete server compromise, data theft, malware deployment, or site defacement.

🟠

Likely Case

Unauthenticated file upload allowing attackers to place malicious files on the server, potentially leading to backdoor installation or limited code execution.

🟢

If Mitigated

File upload attempts blocked or isolated in restricted directories with no execution capability.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Simple file upload bypass with known vulnerable endpoint makes exploitation straightforward.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.3.9.0 or later

Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3310153/

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Drag and Drop Multiple File Upload for Contact Form 7'. 4. Click 'Update Now' if available, or manually update to version 1.3.9.0+. 5. Verify plugin is active and functioning.

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily disable the plugin until patched

wp plugin deactivate drag-and-drop-multiple-file-upload-contact-form-7

Web server file extension blocking

linux

Block .phar file execution at web server level

# Apache: Add to .htaccess: <FilesMatch "\.phar$">
    Order Allow,Deny
    Deny from all
</FilesMatch>
# Nginx: Add to server block: location ~ \.phar$ { deny all; }

🧯 If You Can't Patch

  • Disable the plugin completely
  • Implement WAF rules to block .phar file uploads and execution

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Installed Plugins for 'Drag and Drop Multiple File Upload for Contact Form 7' version 1.3.8.9 or lower

Check Version:

wp plugin list --name='drag-and-drop-multiple-file-upload-contact-form-7' --field=version

Verify Fix Applied:

Verify plugin version is 1.3.9.0 or higher in WordPress admin

📡 Detection & Monitoring

Log Indicators:

  • POST requests to /wp-content/plugins/drag-and-drop-multiple-file-upload-contact-form-7/inc/dnd-upload-cf7.php with .phar file uploads
  • File creation events for .phar files in upload directories

Network Indicators:

  • HTTP POST requests with .phar file uploads to WordPress endpoints

SIEM Query:

source="web_logs" AND uri="*dnd-upload-cf7.php*" AND (file_extension="phar" OR filename="*.phar")

🔗 References

📤 Share & Export