CVE-2025-13149
📋 TL;DR
This vulnerability allows authenticated WordPress users with author-level permissions or higher to modify arbitrary posts and pages via a REST API endpoint. The missing authorization check in the PublishPress Future plugin enables unauthorized data modification. WordPress sites using vulnerable plugin versions are affected.
💻 Affected Systems
- PublishPress Future 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
Malicious authors could delete or modify all posts/pages, causing complete content loss or defacement of the website.
Likely Case
Disgruntled authors or compromised accounts could modify or delete posts they shouldn't have access to, disrupting content management.
If Mitigated
With proper user access controls and monitoring, impact is limited to authorized users misusing their legitimate permissions.
🎯 Exploit Status
Exploitation requires authenticated access with author permissions. The vulnerability is straightforward to exploit via REST API calls.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 4.9.2 and later
Vendor Advisory: https://github.com/publishpress/publishpress-future/commit/0cbefc1632c6f1fffc5fa0ca85e6b8a641d41c7f
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins. 3. Find 'PublishPress Future'. 4. Click 'Update Now' or manually update to version 4.9.2+. 5. Verify plugin is active and functioning.
🔧 Temporary Workarounds
Disable REST API endpoint
allTemporarily disable the vulnerable REST API endpoint until patching
Add to theme functions.php or custom plugin: add_filter('rest_endpoints', function($endpoints){ unset($endpoints['/wp/v2/posts/(?P<id>[\d]+)/future-action']); return $endpoints; });
Restrict author permissions
allTemporarily downgrade author users to contributor level to prevent exploitation
Use WordPress user management or database query: UPDATE wp_users SET user_level = 1 WHERE user_level = 2;
🧯 If You Can't Patch
- Disable the PublishPress Future plugin completely until patching is possible
- Implement strict monitoring of user activity logs for unauthorized post modifications
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin panel > Plugins > PublishPress Future version. If version is 4.9.1 or lower, you are vulnerable.
Check Version:
wp plugin list --name=publishpress-future --field=version
Verify Fix Applied:
After updating, verify plugin version shows 4.9.2 or higher in WordPress plugins list.
📡 Detection & Monitoring
Log Indicators:
- Multiple POST requests to /wp-json/wp/v2/posts/*/future-action endpoint from author-level users
- Unexpected post status changes in WordPress activity logs
Network Indicators:
- REST API calls to modify posts from unauthorized user accounts
SIEM Query:
source="wordpress" AND (uri_path="/wp-json/wp/v2/posts/*/future-action" OR event="post_modified") AND user_role="author"