CVE-2025-58670

7.1 HIGH

📋 TL;DR

A Cross-Site Request Forgery (CSRF) vulnerability in the WP Content Protection WordPress plugin allows attackers to perform unauthorized actions on behalf of authenticated users, potentially leading to stored cross-site scripting (XSS). This affects WordPress administrators and editors who use the vulnerable plugin. Attackers could inject malicious scripts that execute when other users view affected content.

💻 Affected Systems

Products:
  • WP Content Protection WordPress Plugin
Versions: n/a through 1.3
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Affects WordPress installations with the WP Content Protection plugin enabled. The vulnerability requires an attacker to trick an authenticated user into performing an action.

⚠️ 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 persistent malicious scripts into WordPress content, compromising administrator accounts, stealing session cookies, redirecting users to malicious sites, or performing actions on behalf of authenticated users.

🟠

Likely Case

Attackers trick administrators into clicking malicious links that modify plugin settings or inject malicious content, leading to limited XSS attacks against site visitors.

🟢

If Mitigated

With proper CSRF tokens and input validation, the vulnerability would be prevented, and only authenticated users with appropriate permissions could modify plugin settings.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires social engineering to trick authenticated users. CSRF attacks are well-understood and tools exist to automate them.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.4 or later

Vendor Advisory: https://patchstack.com/database/wordpress/plugin/wp-content-protection/vulnerability/wordpress-wp-content-protection-plugin-1-3-cross-site-request-forgery-csrf-vulnerability?_s_id=cve

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'WP Content Protection' and click 'Update Now' if available. 4. If no update is available, deactivate and delete the plugin, then install version 1.4+ from WordPress repository.

🔧 Temporary Workarounds

Implement CSRF Protection Manually

all

Add nonce verification to plugin forms and AJAX requests

Edit plugin PHP files to add wp_nonce_field() and wp_verify_nonce() checks

Disable Plugin

linux

Temporarily disable the vulnerable plugin until patched

wp plugin deactivate wp-content-protection

🧯 If You Can't Patch

  • Restrict plugin access to trusted administrators only and implement strict access controls
  • Use web application firewall (WAF) rules to block CSRF attempts and monitor for suspicious requests

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Installed Plugins for WP Content Protection version 1.3 or earlier

Check Version:

wp plugin get wp-content-protection --field=version

Verify Fix Applied:

Verify WP Content Protection plugin is updated to version 1.4 or later in WordPress admin

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to wp-admin/admin-ajax.php or plugin-specific endpoints without referrer headers
  • Multiple failed nonce verification attempts in WordPress debug logs

Network Indicators:

  • CSRF attack patterns in web server logs with missing or forged referrer headers
  • Unexpected plugin configuration changes

SIEM Query:

source="wordpress.log" AND ("wp-content-protection" OR "admin-ajax.php") AND ("nonce_failure" OR "invalid_nonce")

🔗 References

📤 Share & Export