CVE-2025-57904
📋 TL;DR
This stored cross-site scripting (XSS) vulnerability in Sales Count Manager for WooCommerce allows attackers to inject malicious scripts into web pages that are then executed when other users view those pages. The vulnerability affects all WordPress sites using the plugin version 2.5 or earlier. Attackers can steal session cookies, redirect users to malicious sites, or perform actions on behalf of authenticated users.
💻 Affected Systems
- Sales Count Manager for WooCommerce WordPress plugin
⚠️ 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.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Attackers could steal administrator session cookies, take over WordPress admin accounts, install backdoors, deface websites, or redirect users to phishing sites, potentially compromising the entire WordPress installation and associated data.
Likely Case
Attackers inject malicious JavaScript to steal user session cookies or credentials, potentially gaining unauthorized access to user accounts and performing actions on their behalf within the WooCommerce store.
If Mitigated
With proper input validation and output encoding, malicious scripts would be neutralized before being stored or displayed, preventing execution in users' browsers.
🎯 Exploit Status
Exploitation requires the ability to inject malicious input into vulnerable fields, which typically requires some level of access or user interaction. The stored nature means injected scripts persist and affect multiple users.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Version after 2.5 (check plugin repository for latest)
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Sales Count Manager for WooCommerce'. 4. Click 'Update Now' if update available. 5. If no update available, deactivate and delete the plugin, then install latest version from WordPress repository.
🔧 Temporary Workarounds
Disable vulnerable plugin
allTemporarily deactivate the Sales Count Manager for WooCommerce plugin until patched version is available
wp plugin deactivate wc-sales-count-manager
Implement Content Security Policy
allAdd CSP headers to restrict script execution sources
Add to .htaccess: Header set Content-Security-Policy "default-src 'self'; script-src 'self'"
Add to wp-config.php: header("Content-Security-Policy: default-src 'self'; script-src 'self'");
🧯 If You Can't Patch
- Disable the Sales Count Manager for WooCommerce plugin completely
- Implement web application firewall (WAF) rules to block XSS payloads
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins for 'Sales Count Manager for WooCommerce' version 2.5 or earlier
Check Version:
wp plugin get wc-sales-count-manager --field=version
Verify Fix Applied:
Verify plugin version is greater than 2.5 in WordPress admin panel or run: wp plugin get wc-sales-count-manager --field=version
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to plugin endpoints with script tags or JavaScript in parameters
- Multiple failed XSS attempts in web server logs
- Unexpected script execution in browser console errors
Network Indicators:
- HTTP requests containing malicious script payloads in URL parameters or POST data
- Outbound connections to suspicious domains following page views
SIEM Query:
web_access_logs WHERE (url CONTAINS 'wc-sales-count-manager' OR url CONTAINS 'sales-count') AND (request_body CONTAINS '<script>' OR request_body CONTAINS 'javascript:' OR parameters CONTAINS 'onload=' OR parameters CONTAINS 'onerror=')