CVE-2024-13487

7.3 HIGH

📋 TL;DR

The CURCY WooCommerce plugin allows unauthenticated attackers to execute arbitrary WordPress shortcodes via the get_products_price() function. This vulnerability affects all WordPress sites using the plugin version 2.2.5 or earlier. Attackers can potentially execute malicious code or access sensitive functionality through shortcode injection.

💻 Affected Systems

Products:
  • CURCY – Multi Currency for WooCommerce WordPress plugin
Versions: All versions up to and including 2.2.5
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce and the CURCY plugin installed and activated.

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

Remote code execution leading to complete site compromise, data theft, or malware installation via malicious shortcodes that execute PHP code.

🟠

Likely Case

Unauthorized content injection, privilege escalation, or sensitive information disclosure through WordPress shortcodes that expose data or functionality.

🟢

If Mitigated

Limited impact if shortcode execution is restricted by WordPress security settings or if vulnerable function isn't publicly accessible.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

Attack requires no authentication and leverages WordPress's do_shortcode function without proper validation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version 2.2.6 or later

Vendor Advisory: https://wordpress.org/plugins/woo-multi-currency/#developers

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'CURCY – Multi Currency for WooCommerce'. 4. Click 'Update Now' if available, or manually update via FTP/SSH. 5. Verify version is 2.2.6 or higher.

🔧 Temporary Workarounds

Disable vulnerable function

WordPress

Remove or disable the get_products_price() function if not essential

Edit frontend/cache.php line 60 to add input validation or remove do_shortcode call

Restrict plugin access

all

Use web application firewall to block requests to vulnerable endpoints

🧯 If You Can't Patch

  • Temporarily deactivate the CURCY plugin until patched
  • Implement strict WAF rules to block suspicious shortcode patterns in requests

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for CURCY version. If version ≤2.2.5, system is vulnerable.

Check Version:

wp plugin list --name='woo-multi-currency' --field=version (WP-CLI) or check plugin details in WordPress admin

Verify Fix Applied:

Confirm plugin version is 2.2.6 or higher in WordPress admin panel.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST/GET requests containing shortcode patterns to WooCommerce endpoints
  • WordPress debug logs showing do_shortcode errors

Network Indicators:

  • HTTP requests with shortcode parameters to /wp-content/plugins/woo-multi-currency/ paths

SIEM Query:

source="wordpress.log" AND ("do_shortcode" OR "[shortcode" OR "woo-multi-currency")

🔗 References

📤 Share & Export