CVE-2025-1504
📋 TL;DR
The Post Lockdown WordPress plugin has an information exposure vulnerability that allows authenticated users with Subscriber-level access or higher to view password-protected, private, or draft posts they shouldn't have access to. This affects all WordPress sites using Post Lockdown plugin versions up to 4.0.2. Attackers can exploit this to access sensitive content intended for limited audiences.
💻 Affected Systems
- WordPress Post Lockdown plugin
📦 What is this software?
Post Lockdown by Andypalmer
⚠️ Risk & Real-World Impact
Worst Case
Sensitive draft content, private communications, or password-protected materials are exposed to unauthorized users, potentially leading to data leaks, privacy violations, or intellectual property theft.
Likely Case
Subscribers or other low-privilege users access restricted posts containing sensitive information, compromising content confidentiality and potentially violating privacy regulations.
If Mitigated
With proper access controls and monitoring, exposure is limited to low-sensitivity content, and unauthorized access attempts are detected and investigated.
🎯 Exploit Status
Exploitation requires authenticated access but is straightforward via the vulnerable AJAX endpoint. Attackers need Subscriber-level credentials or higher.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 4.0.3 or later
Vendor Advisory: https://wordpress.org/plugins/post-lockdown/
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find Post Lockdown plugin. 4. Click 'Update Now' if update available. 5. If no update shows, manually download version 4.0.3+ from WordPress.org and replace plugin files.
🔧 Temporary Workarounds
Disable vulnerable AJAX endpoint
allRemove or restrict access to the pl_autocomplete AJAX action via .htaccess or WordPress hooks
Add to .htaccess: RewriteRule ^wp-admin/admin-ajax\.php\?action=pl_autocomplete - [F,L]
Temporarily deactivate plugin
linuxDisable Post Lockdown plugin until patched
wp plugin deactivate post-lockdown
🧯 If You Can't Patch
- Restrict user registration and review existing Subscriber accounts for suspicious activity
- Implement additional access controls via security plugins to monitor and restrict AJAX requests
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin > Plugins > Installed Plugins for Post Lockdown version. If version is 4.0.2 or lower, system is vulnerable.
Check Version:
wp plugin get post-lockdown --field=version
Verify Fix Applied:
After updating, verify plugin version shows 4.0.3 or higher in WordPress admin panel.
📡 Detection & Monitoring
Log Indicators:
- Multiple POST requests to /wp-admin/admin-ajax.php with action=pl_autocomplete
- Unusual access patterns from Subscriber-level accounts to restricted content
Network Indicators:
- AJAX requests to pl_autocomplete endpoint with post ID parameters from unauthorized users
SIEM Query:
source="wordpress.log" AND "admin-ajax.php" AND "action=pl_autocomplete" AND (user_role="subscriber" OR user_role="contributor")