CVE-2024-12809
📋 TL;DR
The Wishlist plugin for WordPress versions up to 1.0.43 contains a stored cross-site scripting (XSS) vulnerability in the 'wishlist_button' shortcode. Authenticated attackers with contributor-level access or higher can inject malicious scripts that execute when users view affected pages. This affects all WordPress sites using vulnerable versions of the Wishlist plugin.
💻 Affected Systems
- WordPress Wishlist 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 credentials, deface websites, redirect users to malicious sites, or install backdoors for persistent access.
Likely Case
Attackers inject malicious scripts to steal user session cookies, perform actions on behalf of users, or display phishing content.
If Mitigated
With proper user role management and content filtering, impact is limited to potential data leakage from users viewing malicious content.
🎯 Exploit Status
Exploitation requires authenticated access with contributor privileges or higher. The vulnerability is in a widely used WordPress plugin.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.0.44
Vendor Advisory: https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3251476%40wishlist&new=3251476%40wishlist&sfp_email=&sfph_mail=
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find Wishlist plugin and click 'Update Now'. 4. Verify plugin version is 1.0.44 or higher.
🔧 Temporary Workarounds
Remove Contributor Access
allTemporarily restrict contributor-level users from creating or editing posts until patched.
Disable Wishlist Plugin
linuxDeactivate the Wishlist plugin until updated to secure version.
wp plugin deactivate wishlist
🧯 If You Can't Patch
- Implement web application firewall (WAF) rules to block XSS payloads in shortcode attributes
- Apply strict content security policy (CSP) headers to limit script execution
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel → Plugins → Installed Plugins for Wishlist plugin version. If version is 1.0.43 or lower, system is vulnerable.
Check Version:
wp plugin get wishlist --field=version
Verify Fix Applied:
After updating, confirm Wishlist plugin version shows 1.0.44 or higher in WordPress admin.
📡 Detection & Monitoring
Log Indicators:
- Unusual shortcode usage in post/page edits
- Multiple failed login attempts from contributor accounts
- Posts containing suspicious script tags or encoded payloads
Network Indicators:
- Outbound connections to unknown domains after viewing specific pages
- Unexpected JavaScript execution in page responses
SIEM Query:
source="wordpress.log" AND ("wishlist_button" OR "shortcode") AND ("script" OR "onclick" OR "javascript:")
🔗 References
- https://plugins.trac.wordpress.org/browser/wishlist/trunk/includes/classes/class-shortcodes.php?rev=3215801#L223
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3242533%40wishlist&new=3242533%40wishlist&sfp_email=&sfph_mail=
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3251476%40wishlist&new=3251476%40wishlist&sfp_email=&sfph_mail=
- https://www.wordfence.com/threat-intel/vulnerabilities/id/1b902d46-ff27-486f-836d-f55a8048f08c?source=cve