CVE-2024-13367

6.5 MEDIUM

📋 TL;DR

The Sandbox WordPress plugin allows authenticated attackers with Subscriber-level access or higher to download entire sandbox environments containing sensitive files like wp-config.php. This vulnerability exists due to missing capability checks on the export_download action. All WordPress sites using Sandbox plugin versions up to 0.4 are affected.

💻 Affected Systems

Products:
  • WordPress Sandbox plugin
Versions: All versions up to and including 0.4
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with Sandbox plugin enabled and at least one authenticated user account (Subscriber role or higher).

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

Attackers obtain database credentials, encryption keys, and other sensitive configuration data, leading to complete site compromise, data theft, and potential lateral movement to other systems.

🟠

Likely Case

Attackers download wp-config.php containing database credentials, allowing them to access and exfiltrate database contents including user data, posts, and potentially administrative credentials.

🟢

If Mitigated

With proper access controls and monitoring, unauthorized downloads would be detected and blocked before sensitive data exfiltration occurs.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access but only at Subscriber level, which is the lowest WordPress user role. The vulnerability is simple to exploit via crafted HTTP requests.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.5 or later

Vendor Advisory: https://plugins.trac.wordpress.org/browser/sandbox/trunk/sandbox-ajax.php#L21

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Sandbox plugin and click 'Update Now' if available. 4. If no update is available, deactivate and delete the plugin, then install version 0.5+ from WordPress repository.

🔧 Temporary Workarounds

Disable Sandbox Plugin

all

Temporarily deactivate the vulnerable plugin until patched version is available

wp plugin deactivate sandbox

Restrict User Registration

all

Prevent new user registrations to limit potential attacker accounts

In WordPress Settings → General, uncheck 'Anyone can register'

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block requests to /wp-admin/admin-ajax.php with action=export_download
  • Monitor and audit user accounts with Subscriber role, review for suspicious activity, and implement least privilege access controls

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel → Plugins → Installed Plugins for Sandbox plugin version. If version is 0.4 or lower, the site is vulnerable.

Check Version:

wp plugin get sandbox --field=version

Verify Fix Applied:

After updating, verify Sandbox plugin version is 0.5 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • HTTP POST requests to /wp-admin/admin-ajax.php with 'action=export_download' parameter from non-admin users
  • Large file downloads from sandbox export functionality

Network Indicators:

  • Unusual outbound traffic patterns from WordPress server following sandbox export requests

SIEM Query:

source="wordpress_logs" AND uri="/wp-admin/admin-ajax.php" AND post_data CONTAINS "action=export_download" AND user_role!="administrator"

🔗 References

📤 Share & Export