CVE-2024-4376
📋 TL;DR
This vulnerability allows authenticated attackers with contributor-level access or higher to inject malicious scripts into WordPress pages using the Premium Addons for Elementor plugin's Fancy Text widget. The scripts execute whenever users view the compromised pages, enabling session hijacking, defacement, or malware distribution. All WordPress sites using vulnerable plugin versions are affected.
💻 Affected Systems
- Premium Addons for Elementor WordPress plugin
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Attackers could steal administrator credentials, redirect users to malicious sites, install backdoors, or compromise the entire WordPress installation and potentially the server.
Likely Case
Attackers with contributor access inject malicious scripts to steal user session cookies, display fraudulent content, or redirect users to phishing pages.
If Mitigated
With proper user role management and input validation, impact is limited to defacement of specific pages rather than full site compromise.
🎯 Exploit Status
Exploitation requires authenticated access but is straightforward once an attacker has contributor privileges. The vulnerability is in a popular WordPress plugin making it an attractive target.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 4.10.33
Vendor Advisory: https://plugins.trac.wordpress.org/changeset/3090037/premium-addons-for-elementor/trunk/widgets/premium-fancytext.php
Restart Required: No
Instructions:
1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'Premium Addons for Elementor'. 4. Click 'Update Now' if available, or download version 4.10.33+ from WordPress repository. 5. Activate the updated plugin.
🔧 Temporary Workarounds
Remove Contributor Access
allTemporarily remove contributor-level access for untrusted users until patching is complete.
Use WordPress user management to modify roles
Disable Fancy Text Widget
allDisable the vulnerable widget through Elementor settings or code.
Add define('PA_DISABLE_FANCYTEXT', true); to wp-config.php
🧯 If You Can't Patch
- Implement strict user role management and audit contributor accounts
- Deploy web application firewall (WAF) rules to block XSS payloads targeting the Fancy Text widget
🔍 How to Verify
Check if Vulnerable:
Check WordPress admin → Plugins → Installed Plugins for 'Premium Addons for Elementor' version. If version is 4.10.31 or lower, you are vulnerable.
Check Version:
wp plugin list --name='premium-addons-for-elementor' --field=version
Verify Fix Applied:
After updating, verify the plugin version shows 4.10.33 or higher in WordPress admin.
📡 Detection & Monitoring
Log Indicators:
- Unusual POST requests to /wp-admin/admin-ajax.php with Fancy Text widget parameters
- Multiple failed login attempts followed by contributor account access
Network Indicators:
- Script tags with unusual attributes in Fancy Text widget responses
- External JavaScript loading from unexpected domains
SIEM Query:
source="wordpress.log" AND ("premium-fancytext" OR "typed.js") AND ("script" OR "onerror" OR "javascript:")
🔗 References
- https://plugins.trac.wordpress.org/browser/premium-addons-for-elementor/trunk/assets/frontend/js/typed.js
- https://plugins.trac.wordpress.org/browser/premium-addons-for-elementor/trunk/widgets/premium-fancytext.php#L924
- https://plugins.trac.wordpress.org/changeset/3090037/premium-addons-for-elementor/trunk/widgets/premium-fancytext.php
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3090609%40premium-addons-for-elementor&new=3090609%40premium-addons-for-elementor&sfp_email=&sfph_mail=
- https://www.wordfence.com/threat-intel/vulnerabilities/id/b49d166f-4df0-4997-a078-0be8fcd92576?source=cve
- https://plugins.trac.wordpress.org/browser/premium-addons-for-elementor/trunk/assets/frontend/js/typed.js
- https://plugins.trac.wordpress.org/browser/premium-addons-for-elementor/trunk/widgets/premium-fancytext.php#L924
- https://plugins.trac.wordpress.org/changeset/3090037/premium-addons-for-elementor/trunk/widgets/premium-fancytext.php
- https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3090609%40premium-addons-for-elementor&new=3090609%40premium-addons-for-elementor&sfp_email=&sfph_mail=
- https://www.wordfence.com/threat-intel/vulnerabilities/id/b49d166f-4df0-4997-a078-0be8fcd92576?source=cve