CVE-2024-9990

8.8 HIGH

📋 TL;DR

This CSRF vulnerability in the WordPress Crypto plugin allows unauthenticated attackers to log in as any existing user, including administrators, by tricking them into clicking a malicious link. All WordPress sites using Crypto plugin versions up to 2.15 are affected. The vulnerability stems from missing nonce validation in the authentication function.

💻 Affected Systems

Products:
  • WordPress Crypto plugin
Versions: All versions up to and including 2.15
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Any WordPress site with the Crypto plugin installed and activated is vulnerable regardless of configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete site takeover where attackers gain administrative access, install backdoors, steal data, deface the site, or use it for further attacks.

🟠

Likely Case

Attackers gain administrative privileges through phishing campaigns targeting site administrators, leading to data theft, malware installation, or site compromise.

🟢

If Mitigated

With proper CSRF protections and user awareness, exploitation attempts fail, though the vulnerability remains present in the code.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires social engineering to trick administrators into clicking malicious links, but the technical exploit is simple.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.16 or later

Vendor Advisory: https://plugins.trac.wordpress.org/browser/crypto/tags/2.16

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Crypto plugin and click 'Update Now'. 4. Verify plugin version is 2.16 or higher.

🔧 Temporary Workarounds

Disable Crypto plugin

all

Temporarily disable the vulnerable plugin until patching is possible

wp plugin deactivate crypto

Add CSRF protection middleware

all

Implement custom WordPress filter to add nonce validation to affected endpoints

Add custom PHP code to theme functions.php or create a custom plugin

🧯 If You Can't Patch

  • Implement strict access controls and monitor for suspicious admin account activity
  • Use web application firewall rules to block requests to crypto_connect_ajax_process endpoints

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel → Plugins → Installed Plugins → Crypto plugin version. If version is 2.15 or lower, you are vulnerable.

Check Version:

wp plugin get crypto --field=version

Verify Fix Applied:

After updating, verify Crypto plugin version shows 2.16 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual admin login events from unexpected IP addresses
  • Multiple failed login attempts followed by successful admin login
  • Requests to /wp-admin/admin-ajax.php with action=crypto_connect_ajax_process

Network Indicators:

  • POST requests to admin-ajax.php with crypto authentication parameters from unexpected sources
  • Traffic patterns suggesting CSRF attack vectors

SIEM Query:

source="wordpress.log" AND ("crypto_connect_ajax_process" OR "admin-ajax.php") AND (status=200 OR "logged_in")

🔗 References

📤 Share & Export