CVE-2025-32484

7.1 HIGH

📋 TL;DR

A Cross-Site Request Forgery (CSRF) vulnerability in the Mathieu Chartier WP-Planification WordPress plugin allows attackers to perform stored cross-site scripting (XSS) attacks. This affects WordPress sites using WP-Planification plugin versions up to 2.3.1. Attackers can inject malicious scripts that execute when users visit compromised pages.

💻 Affected Systems

Products:
  • Mathieu Chartier WP-Planification WordPress Plugin
Versions: n/a through 2.3.1
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: All WordPress installations using vulnerable versions of WP-Planification plugin are affected regardless of configuration.

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

Attackers could inject malicious JavaScript that steals administrator credentials, redirects users to phishing sites, or takes over the WordPress site completely.

🟠

Likely Case

Attackers inject malicious scripts that steal user session cookies or display unwanted content, potentially compromising user accounts and site integrity.

🟢

If Mitigated

With proper CSRF protections and input validation, the vulnerability would be prevented, maintaining normal site functionality.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

CSRF to XSS chain requires user interaction but exploitation is straightforward once the attack vector is identified.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.3.2 or later

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/wp-planification/vulnerability/wordpress-wp-planification-wp-planning-plugin-2-3-1-csrf-to-stored-xss-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find WP-Planification plugin. 4. Click 'Update Now' if update is available. 5. If no update appears, manually download version 2.3.2+ from WordPress.org and replace plugin files.

🔧 Temporary Workarounds

Disable WP-Planification Plugin

all

Temporarily disable the vulnerable plugin until patched

wp plugin deactivate wp-planification

Implement CSRF Protection Headers

linux

Add security headers to WordPress to help prevent CSRF attacks

Add to .htaccess: Header set X-Frame-Options "SAMEORIGIN"
Add to .htaccess: Header set Content-Security-Policy "frame-ancestors 'self'"

🧯 If You Can't Patch

  • Remove WP-Planification plugin completely and use alternative scheduling/planning solutions
  • Implement web application firewall (WAF) rules to block CSRF and XSS payloads targeting the plugin endpoints

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Installed Plugins for WP-Planification version. If version is 2.3.1 or earlier, you are vulnerable.

Check Version:

wp plugin get wp-planification --field=version

Verify Fix Applied:

After updating, verify WP-Planification plugin shows version 2.3.2 or higher in WordPress admin plugins page.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to wp-planification plugin endpoints
  • Multiple failed CSRF token validations
  • JavaScript injection attempts in form submissions

Network Indicators:

  • Unexpected iframe or script tags in HTTP responses from WP-Planification pages
  • Cross-origin requests to WP-Planification admin endpoints

SIEM Query:

source="wordpress.log" AND ("wp-planification" OR "wp_planification") AND ("POST" OR "csrf" OR "xss")

🔗 References

📤 Share & Export