CVE-2022-1057

9.8 CRITICAL

📋 TL;DR

This vulnerability allows unauthenticated attackers to execute arbitrary SQL commands on WooCommerce websites using the Pricing Deals plugin. Attackers can potentially access, modify, or delete database content including sensitive customer data. All WordPress sites with the vulnerable plugin versions are affected.

💻 Affected Systems

Products:
  • Pricing Deals for WooCommerce WordPress plugin
Versions: through 2.0.2.02
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WooCommerce to be installed. Vulnerability exists in default configuration.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, website defacement, or full system takeover via SQL injection to RCE chaining.

🟠

Likely Case

Data exfiltration of customer information, order details, and potentially admin credentials stored in the database.

🟢

If Mitigated

Limited impact if proper WAF rules block SQL injection patterns and database permissions are restricted.

🌐 Internet-Facing: HIGH
🏢 Internal Only: LOW

🎯 Exploit Status

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

SQL injection via AJAX endpoint requires no authentication. Public exploit code exists in security advisories.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.0.2.03 or later

Vendor Advisory: https://wpscan.com/vulnerability/7c33ffc3-84a1-4a0f-a837-794cdc3ad243

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Pricing Deals for WooCommerce'. 4. Click 'Update Now' if available. 5. Alternatively, download latest version from WordPress repository and manually update.

🔧 Temporary Workarounds

Disable vulnerable AJAX endpoint

linux

Block access to the vulnerable AJAX action via .htaccess or web server configuration

# Add to .htaccess:
RewriteCond %{QUERY_STRING} action=pricing_deals_ajax [NC]
RewriteRule ^ - [F]

Temporary plugin deactivation

all

Disable the Pricing Deals plugin until patched

wp plugin deactivate pricing-deals-for-woocommerce

🧯 If You Can't Patch

  • Implement web application firewall (WAF) rules to block SQL injection patterns
  • Restrict database user permissions to SELECT only where possible

🔍 How to Verify

Check if Vulnerable:

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

Check Version:

wp plugin get pricing-deals-for-woocommerce --field=version

Verify Fix Applied:

Verify plugin version is 2.0.2.03 or later. Test AJAX endpoint with SQL injection payloads to confirm they are blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL errors in WordPress debug logs
  • Multiple requests to /wp-admin/admin-ajax.php with 'pricing_deals_ajax' parameter
  • Database query errors containing SQL injection patterns

Network Indicators:

  • POST requests to admin-ajax.php with SQL payloads in parameters
  • Unusual database connection patterns from web server

SIEM Query:

source="wordpress.log" AND "admin-ajax.php" AND "pricing_deals_ajax" AND ("UNION" OR "SELECT" OR "INSERT" OR "DELETE")

🔗 References

📤 Share & Export