CVE-2024-6170

6.4 MEDIUM

📋 TL;DR

This vulnerability allows authenticated WordPress users with Contributor-level access or higher to inject malicious JavaScript into website pages via the 'email' parameter in the Unlimited Elements For Elementor plugin. The injected scripts execute whenever users visit the compromised pages, enabling persistent cross-site scripting attacks. All WordPress sites using vulnerable plugin versions are affected.

💻 Affected Systems

Products:
  • Unlimited Elements For Elementor (Free Widgets, Addons, Templates) WordPress plugin
Versions: All versions up to and including 1.5.112
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ⚠️ Yes
Notes: Requires WordPress installation with the vulnerable plugin and at least one user with Contributor-level access or higher.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could create new administrator accounts, steal session cookies, redirect users to malicious sites, or deface the entire website by injecting malicious scripts that execute for all visitors.

🟠

Likely Case

Attackers with contributor access inject malicious scripts to steal user session cookies, perform actions on behalf of users, or redirect visitors to phishing sites.

🟢

If Mitigated

With proper input validation and output escaping, the vulnerability would be prevented, and only sanitized data would be displayed to users.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authenticated access (Contributor or higher). Weaponized payloads exist that can create admin users.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions after 1.5.112

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

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Unlimited Elements For Elementor'. 4. Click 'Update Now' if available. 5. Alternatively, download latest version from WordPress repository and manually update.

🔧 Temporary Workarounds

Disable vulnerable plugin

all

Temporarily disable the Unlimited Elements For Elementor plugin until patched

wp plugin deactivate unlimited-elements-for-elementor

Restrict user roles

all

Temporarily remove Contributor and Author roles or restrict their capabilities

🧯 If You Can't Patch

  • Implement Web Application Firewall (WAF) rules to block XSS payloads in email parameters
  • Apply Content Security Policy (CSP) headers to restrict script execution sources

🔍 How to Verify

Check if Vulnerable:

Check plugin version in WordPress admin → Plugins → Installed Plugins. If version is 1.5.112 or lower, you are vulnerable.

Check Version:

wp plugin get unlimited-elements-for-elementor --field=version

Verify Fix Applied:

Verify plugin version is higher than 1.5.112. Test email parameter input with basic XSS payloads to confirm sanitization.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to plugin endpoints with email parameter containing script tags
  • Multiple failed login attempts followed by successful contributor login

Network Indicators:

  • HTTP requests containing script tags in email parameter values
  • Unexpected outbound connections from WordPress site after page visits

SIEM Query:

source="wordpress.log" AND ("unlimited-elements" OR "email parameter") AND ("<script>" OR "javascript:" OR "onerror=" OR "onload=")

🔗 References

📤 Share & Export