CVE-2024-4371

9.0 CRITICAL

📋 TL;DR

This vulnerability allows unauthenticated attackers to perform PHP object injection via the recently_viewed_products cookie in the CoDesigner WooCommerce Builder for Elementor WordPress plugin. If a POP chain exists through other installed plugins or themes, attackers could delete files, steal data, or execute code. All WordPress sites using vulnerable plugin versions are affected.

💻 Affected Systems

Products:
  • CoDesigner WooCommerce Builder for Elementor WordPress plugin
Versions: All versions up to and including 4.4.1
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce and Elementor. Risk increases if other plugins/themes with POP chains are installed.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete site compromise, data theft, and server takeover if a suitable POP chain exists in the environment.

🟠

Likely Case

Limited impact due to no known POP chain in the vulnerable plugin itself, but potential for data exposure or file deletion if other vulnerable components are present.

🟢

If Mitigated

No impact if plugin is patched or removed, or if no other vulnerable plugins/themes provide POP chains.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires crafting malicious serialized objects and depends on available POP chains in the environment.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.4.2 or later

Vendor Advisory: https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3099922%40woolementor&new=3099922%40woolementor

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'CoDesigner WooCommerce Builder for Elementor'. 4. Click 'Update Now' if available, or download latest version from WordPress repository. 5. Activate updated plugin.

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily deactivate the plugin until patched

wp plugin deactivate woolementor

Block malicious cookies

linux

Block requests with suspicious recently_viewed_products cookie content

SecRule ARGS:recently_viewed_products "@rx (?:O|C):\d+" "id:1001,phase:2,deny,status:403,msg:'PHP Object Injection attempt'"
Add to .htaccess: SetEnvIf Cookie "recently_viewed_products=.*[OoCc]:\d+.*" block_cookie

🧯 If You Can't Patch

  • Remove the plugin entirely if not essential
  • Implement strict WAF rules to block serialized objects in cookies

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin under Plugins > Installed Plugins, or run: wp plugin get woolementor --field=version

Check Version:

wp plugin get woolementor --field=version

Verify Fix Applied:

Confirm plugin version is 4.4.2 or higher, and test that recently_viewed_products cookie handling no longer uses unsafe deserialization

📡 Detection & Monitoring

Log Indicators:

  • Unusual PHP errors related to unserialize()
  • Suspicious cookie values in access logs
  • Failed deserialization attempts

Network Indicators:

  • HTTP requests with unusually long or structured recently_viewed_products cookie values
  • Patterns matching serialized PHP objects in cookie data

SIEM Query:

source="web_access_logs" AND cookie="*recently_viewed_products=*O:*" OR cookie="*recently_viewed_products=*C:*"

🔗 References

📤 Share & Export