CVE-2024-10586

9.8 CRITICAL

📋 TL;DR

The Debug Tool plugin for WordPress has a critical vulnerability that allows unauthenticated attackers to create arbitrary files, including PHP files, on affected websites. This can lead to remote code execution, giving attackers full control over the WordPress installation. All WordPress sites using Debug Tool version 2.2 or earlier are affected.

💻 Affected Systems

Products:
  • WordPress Debug Tool plugin
Versions: All versions up to and including 2.2
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Any WordPress site with the Debug Tool plugin installed and activated is vulnerable. The vulnerability requires the plugin to be active.

⚠️ 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.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete compromise of the WordPress site with attacker gaining full administrative access, data theft, defacement, and potential lateral movement to other systems.

🟠

Likely Case

Attackers upload web shells to gain persistent access, install malware, steal sensitive data, or use the site for phishing campaigns.

🟢

If Mitigated

Attack attempts are logged and blocked by web application firewalls, with no successful exploitation.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

The vulnerability is trivial to exploit with publicly available proof-of-concept code. No authentication is required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.2.1

Vendor Advisory: https://plugins.trac.wordpress.org/browser/debug-tool/trunk/tools/image-puller.php#L120

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Debug Tool and update to version 2.2.1 or later. 4. If update is not available, deactivate and delete the plugin immediately.

🔧 Temporary Workarounds

Disable Debug Tool Plugin

all

Deactivate the vulnerable plugin to prevent exploitation

wp plugin deactivate debug-tool

Web Application Firewall Rule

all

Block requests to the vulnerable dbt_pull_image() function

Add WAF rule to block POST requests containing 'dbt_pull_image' in URL or parameters

🧯 If You Can't Patch

  • Immediately deactivate and remove the Debug Tool plugin from all WordPress installations
  • Implement strict file upload restrictions and monitor for suspicious file creation in WordPress upload directories

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for Debug Tool version 2.2 or earlier

Check Version:

wp plugin get debug-tool --field=version

Verify Fix Applied:

Verify Debug Tool plugin is updated to version 2.2.1 or later, or confirm plugin is removed

📡 Detection & Monitoring

Log Indicators:

  • POST requests to /wp-admin/admin-ajax.php with action=dbt_pull_image
  • Unexpected file creation in wp-content/uploads/ directory
  • PHP file creation by non-admin users

Network Indicators:

  • HTTP POST requests containing 'dbt_pull_image' parameter
  • Unusual file upload patterns to WordPress admin endpoints

SIEM Query:

source="web_logs" AND (url="*admin-ajax.php*" AND parameters="*dbt_pull_image*")

🔗 References

📤 Share & Export