CVE-2024-13563

6.4 MEDIUM

📋 TL;DR

This vulnerability allows authenticated WordPress users with contributor-level access or higher to inject malicious scripts into pages using the Front End Users plugin's forgot-password shortcode. When other users visit pages containing these injected scripts, the scripts execute in their browsers, potentially stealing session cookies or performing unauthorized actions. All WordPress sites using Front End Users plugin versions up to 3.2.30 are affected.

💻 Affected Systems

Products:
  • Front End Users WordPress Plugin
Versions: All versions up to and including 3.2.30
Operating Systems: Any OS running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with Front End Users plugin active and at least one user with contributor-level access or higher.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could steal administrator session cookies, take over WordPress sites, deface websites, or redirect users to malicious sites, potentially leading to complete site compromise and data theft.

🟠

Likely Case

Attackers inject malicious JavaScript to steal user session cookies, perform actions as authenticated users, or display phishing content to visitors.

🟢

If Mitigated

With proper input validation and output escaping, the vulnerability is prevented, and only legitimate password reset functionality is available.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access but is technically simple once an attacker has contributor-level credentials.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.2.31

Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3240349/

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins > Installed Plugins. 3. Find 'Front End Users' plugin. 4. Click 'Update Now' if update is available. 5. Alternatively, download version 3.2.31+ from WordPress plugin repository and manually update.

🔧 Temporary Workarounds

Disable Front End Users Plugin

all

Temporarily disable the vulnerable plugin until patched

wp plugin deactivate front-end-only-users

Restrict Contributor Access

linux

Temporarily remove contributor-level access from untrusted users

wp user list --role=contributor --field=ID | xargs wp user set-role subscriber

🧯 If You Can't Patch

  • Remove the [feup_forgot_password] shortcode from all pages/posts where it appears
  • Implement web application firewall (WAF) rules to block XSS payloads in plugin parameters

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin > Plugins > Installed Plugins for Front End Users plugin version 3.2.30 or lower

Check Version:

wp plugin list --name=front-end-only-users --field=version

Verify Fix Applied:

Verify plugin version is 3.2.31 or higher in WordPress admin plugins page

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to WordPress pages containing [feup_forgot_password] shortcode with script tags or JavaScript in parameters
  • Multiple failed login attempts followed by successful contributor-level login

Network Indicators:

  • HTTP requests with malicious script payloads in 'redirect' or other parameters to pages using the forgot-password shortcode

SIEM Query:

source="wordpress.log" AND ("[feup_forgot_password]" AND ("<script" OR "javascript:" OR "onerror="))

🔗 References

📤 Share & Export