CVE-2025-7340

9.8 CRITICAL

📋 TL;DR

This vulnerability allows unauthenticated attackers to upload arbitrary files to WordPress sites using the HT Contact Form Widget plugin due to missing file type validation. Attackers can potentially achieve remote code execution by uploading malicious files like PHP shells. All WordPress sites with this plugin installed up to version 2.2.1 are affected.

💻 Affected Systems

Products:
  • HT Contact Form Widget For Elementor Page Builder & Gutenberg Blocks & Form Builder
Versions: All versions up to and including 2.2.1
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with the vulnerable plugin installed and activated. No special configuration needed.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete server compromise leading to data theft, ransomware deployment, or use as part of a botnet.

🟠

Likely Case

Website defacement, malware distribution, or credential harvesting through uploaded web shells.

🟢

If Mitigated

File upload attempts logged and blocked by web application firewall or file integrity monitoring.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Simple HTTP POST request with malicious file upload to vulnerable endpoint. No authentication required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.2.2 or later

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

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'HT Contact Form Widget' and click 'Update Now'. 4. Verify version is 2.2.2 or higher.

🔧 Temporary Workarounds

Disable plugin

all

Temporarily deactivate the vulnerable plugin until patched

wp plugin deactivate ht-contactform

Web Application Firewall rule

all

Block file upload requests to the vulnerable endpoint

Block POST requests to /wp-admin/admin-ajax.php with action=temp_file_upload

🧯 If You Can't Patch

  • Disable the HT Contact Form Widget plugin immediately
  • Implement strict file upload restrictions at web server level (e.g., .htaccess rules blocking PHP execution in upload directories)

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Installed Plugins for HT Contact Form Widget version 2.2.1 or lower

Check Version:

wp plugin get ht-contactform --field=version

Verify Fix Applied:

Confirm plugin version is 2.2.2 or higher in WordPress admin panel

📡 Detection & Monitoring

Log Indicators:

  • Multiple POST requests to /wp-admin/admin-ajax.php with action=temp_file_upload
  • Unusual file uploads to wp-content/uploads/ht-contactform/ directory
  • PHP file execution from unexpected locations

Network Indicators:

  • HTTP POST requests with file uploads to WordPress admin-ajax.php endpoint
  • Unusual outbound connections from web server

SIEM Query:

source="web_server_logs" AND (url_path="/wp-admin/admin-ajax.php" AND method="POST" AND params.action="temp_file_upload")

🔗 References

📤 Share & Export