CVE-2024-49629

7.1 HIGH

📋 TL;DR

This CVE describes a Cross-Site Request Forgery (CSRF) vulnerability in the WordPress Endless Posts Navigation plugin that can lead to Stored Cross-Site Scripting (XSS). Attackers can trick authenticated administrators into executing malicious actions that inject persistent scripts into WordPress sites. All WordPress sites using Endless Posts Navigation versions up to 2.2.7 are affected.

💻 Affected Systems

Products:
  • WordPress Endless Posts Navigation Plugin
Versions: n/a through 2.2.7
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin enabled and an authenticated administrator to trigger the CSRF.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could inject malicious JavaScript that steals administrator credentials, redirects visitors to malicious sites, or takes full control of the WordPress site when administrators view infected pages.

🟠

Likely Case

Attackers inject tracking scripts, deface content, or create backdoors by exploiting administrator sessions through CSRF attacks.

🟢

If Mitigated

With proper CSRF protections and content security policies, the attack would fail or have limited impact even if attempted.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires tricking an authenticated administrator into clicking a malicious link or visiting a compromised page.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.2.8 or later

Vendor Advisory: https://patchstack.com/database/vulnerability/endless-posts-navigation/wordpress-endless-posts-navigation-plugin-2-2-7-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 'Endless Posts Navigation'. 4. Click 'Update Now' if available. 5. If no update appears, manually download version 2.2.8+ from WordPress.org and replace the plugin files.

🔧 Temporary Workarounds

Disable Plugin

all

Temporarily disable the Endless Posts Navigation plugin until patched.

wp plugin deactivate endless-posts-navigation

Implement CSRF Protection Headers

all

Add Content Security Policy headers to limit script execution sources.

Add to .htaccess: Header set Content-Security-Policy "script-src 'self'"
Add to nginx config: add_header Content-Security-Policy "script-src 'self'";

🧯 If You Can't Patch

  • Remove the Endless Posts Navigation plugin completely from the WordPress installation.
  • Implement strict access controls and monitor administrator account activity for suspicious behavior.

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin panel > Plugins > Endless Posts Navigation > Version. If version is 2.2.7 or earlier, you are vulnerable.

Check Version:

wp plugin get endless-posts-navigation --field=version

Verify Fix Applied:

Verify plugin version is 2.2.8 or later in WordPress admin panel. Test admin functions that use the plugin to ensure CSRF tokens are present.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to wp-admin/admin-ajax.php with plugin-specific actions
  • Administrator accounts making unexpected plugin configuration changes

Network Indicators:

  • HTTP requests containing malicious script tags in POST parameters to WordPress admin endpoints
  • Referer headers pointing to external malicious sites in admin requests

SIEM Query:

source="wordpress.log" AND (uri_path="/wp-admin/admin-ajax.php" AND (action="epn_*" OR params CONTAINS "<script>"))

🔗 References

📤 Share & Export