CVE-2024-13775

5.4 MEDIUM

📋 TL;DR

The WooCommerce Support Ticket System plugin for WordPress has missing capability checks on three AJAX functions, allowing authenticated attackers with Subscriber-level access or higher to delete arbitrary posts and read sensitive user information including names, emails, and capabilities. This affects all WordPress sites using this plugin up to version 17.8.

💻 Affected Systems

Products:
  • WooCommerce Support Ticket System WordPress Plugin
Versions: All versions up to and including 17.8
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce and the vulnerable plugin installed. Any authenticated user (Subscriber role or higher) can exploit this.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete website compromise through mass post deletion and user data exfiltration, potentially leading to business disruption and data breach compliance violations.

🟠

Likely Case

Selective post deletion and harvesting of user email addresses for phishing campaigns or credential stuffing attacks.

🟢

If Mitigated

Limited impact if proper access controls and monitoring are in place, with only minor data exposure.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access but is straightforward via crafted AJAX requests to vulnerable endpoints.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 17.9 or later

Vendor Advisory: https://codecanyon.net/item/woocommerce-support-ticket-system/17930050#item-description__change-log

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'WooCommerce Support Ticket System'. 4. Click 'Update Now' if update is available. 5. If no update appears, manually download version 17.9+ from CodeCanyon and replace plugin files.

🔧 Temporary Workarounds

Temporary Plugin Deactivation

all

Disable the vulnerable plugin until patched

wp plugin deactivate woocommerce-support-ticket-system

Restrict AJAX Endpoints

linux

Block access to vulnerable AJAX endpoints via web application firewall or .htaccess

# Add to .htaccess:
RewriteCond %{REQUEST_URI} ^/wp-admin/admin-ajax\.php$
RewriteCond %{QUERY_STRING} action=(ajax_delete_message|ajax_get_customers_partial_list|ajax_get_admins_list)
RewriteRule ^ - [F]

🧯 If You Can't Patch

  • Implement strict role-based access control and limit Subscriber permissions
  • Enable comprehensive logging and monitoring of AJAX requests to vulnerable endpoints

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin under Plugins > Installed Plugins. If version is 17.8 or lower, you are vulnerable.

Check Version:

wp plugin get woocommerce-support-ticket-system --field=version

Verify Fix Applied:

Verify plugin version is 17.9 or higher after update. Test AJAX endpoints with Subscriber account to confirm proper authorization checks.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to /wp-admin/admin-ajax.php with action parameters: ajax_delete_message, ajax_get_customers_partial_list, ajax_get_admins_list from Subscriber-level users
  • Multiple post deletions from non-admin users
  • User enumeration requests from low-privilege accounts

Network Indicators:

  • Spike in AJAX requests to admin-ajax.php from authenticated users
  • Unusual data exfiltration patterns

SIEM Query:

source="wordpress.log" AND (uri="/wp-admin/admin-ajax.php" AND (action="ajax_delete_message" OR action="ajax_get_customers_partial_list" OR action="ajax_get_admins_list")) AND user_role="subscriber"

🔗 References

📤 Share & Export