CVE-2025-10144

6.5 MEDIUM

📋 TL;DR

This SQL injection vulnerability in the Perfect Brands for WooCommerce WordPress plugin allows authenticated attackers with Contributor-level access or higher to extract sensitive database information. Attackers can inject malicious SQL queries through the 'brands' attribute in product shortcodes, potentially accessing customer data, order information, or other sensitive content. All WordPress sites using this plugin up to version 3.6.2 are affected.

💻 Affected Systems

Products:
  • Perfect Brands for WooCommerce WordPress plugin
Versions: All versions up to and including 3.6.2
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress with WooCommerce installed and the vulnerable plugin activated. Contributor-level authentication or higher is required for exploitation.

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

Complete database compromise including customer PII, payment information, admin credentials, and site takeover through privilege escalation.

🟠

Likely Case

Extraction of sensitive customer data, order information, and potentially admin credentials leading to further compromise.

🟢

If Mitigated

Limited data exposure if proper input validation and parameterized queries are implemented, with minimal impact on site functionality.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access but uses simple SQL injection techniques. Time-based blind SQL injection allows data extraction despite limited error feedback.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.6.3 or later

Vendor Advisory: https://plugins.trac.wordpress.org/browser/perfect-woocommerce-brands

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Perfect Brands for WooCommerce'. 4. Click 'Update Now' if available. 5. If no update appears, manually download version 3.6.3+ from WordPress.org and replace the plugin files.

🔧 Temporary Workarounds

Disable vulnerable shortcode

all

Remove or disable the 'products' shortcode with 'brands' attribute from all posts/pages

Restrict user roles

all

Temporarily remove Contributor and higher roles from untrusted users

🧯 If You Can't Patch

  • Implement WAF rules to block SQL injection patterns in POST/GET parameters
  • Apply principle of least privilege: restrict Contributor roles to only essential users

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Perfect Brands for WooCommerce version. If version is 3.6.2 or lower, you are vulnerable.

Check Version:

wp plugin list --name='perfect-woocommerce-brands' --field=version

Verify Fix Applied:

Verify plugin version is 3.6.3 or higher in WordPress admin panel. Test that product shortcodes with brands attribute still function normally.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL queries in database logs
  • Multiple failed login attempts followed by successful Contributor login
  • Unusual access patterns to wp-content/plugins/perfect-woocommerce-brands/

Network Indicators:

  • POST/GET requests containing SQL keywords (UNION, SELECT, etc.) with 'brands' parameter
  • Unusual database connection patterns from web server

SIEM Query:

source="web_logs" AND ("brands" AND ("UNION" OR "SELECT" OR "SLEEP" OR "BENCHMARK"))

🔗 References

📤 Share & Export