CVE-2025-13838
📋 TL;DR
The WishSuite WordPress plugin has a stored XSS vulnerability in versions up to 1.5.1 that allows authenticated attackers with Contributor access or higher to inject malicious scripts via the 'button_text' parameter. These scripts execute whenever users view pages containing the compromised shortcode. WordPress sites using vulnerable WishSuite versions are affected.
💻 Affected Systems
- WishSuite 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 admin credentials, redirect users to malicious sites, deface websites, or install backdoors leading to complete site compromise.
Likely Case
Attackers inject malicious scripts to steal user session cookies, redirect users to phishing pages, or display unwanted advertisements.
If Mitigated
With proper input validation and output escaping, no script execution occurs, though malicious content might still be stored.
🎯 Exploit Status
Exploitation requires authenticated access but is technically simple once authenticated. The vulnerability is well-documented in security advisories.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.5.2 or later
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3419202/
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find WishSuite and click 'Update Now'. 4. Verify update to version 1.5.2 or later.
🔧 Temporary Workarounds
Disable WishSuite Plugin
allTemporarily disable the vulnerable plugin until patched
wp plugin deactivate wishsuite
Restrict User Roles
allLimit Contributor and higher role assignments to trusted users only
🧯 If You Can't Patch
- Implement web application firewall (WAF) rules to block XSS payloads in 'button_text' parameter
- Apply WordPress security plugins with XSS protection features
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel > Plugins > WishSuite version. If version is 1.5.1 or lower, you are vulnerable.
Check Version:
wp plugin list --name=wishsuite --field=version
Verify Fix Applied:
After updating, verify WishSuite version shows 1.5.2 or higher in WordPress plugins list.
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to WordPress admin-ajax.php with 'button_text' parameter containing script tags
- Multiple failed login attempts followed by successful Contributor-level login
Network Indicators:
- HTTP requests containing malicious script payloads in 'button_text' parameter
- Outbound connections to suspicious domains from WordPress pages
SIEM Query:
source="wordpress.log" AND ("button_text" AND ("<script" OR "javascript:" OR "onerror=" OR "onload="))
🔗 References
- https://plugins.trac.wordpress.org/browser/wishsuite/tags/1.5.1/includes/templates/wishsuite-button-add.php#L1
- https://plugins.trac.wordpress.org/browser/wishsuite/trunk/includes/templates/wishsuite-button-add.php#L1
- https://plugins.trac.wordpress.org/changeset/3419202/
- https://www.wordfence.com/threat-intel/vulnerabilities/id/4e1cd584-ffb8-43d6-a7b6-141c59ac463d?source=cve