Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain Contributor account on target site
-
DeliveryInsert button widget with malicious icon value
-
ExploitStore event-handler payload in unescaped HTML attribute
-
ExecutionHigher-privileged user views/reviews the content
-
PersistJavaScript executes in admin browser context
-
ImpactHijack session or perform privileged actions
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated WordPress account with at least Contributor role on a site running HappyAddons for Elementor before 3.50.0, plus use of the affected button widget so the attacker-controlled icon value is rendered into an HTML attribute. Exploitation is limited by (1) needing a valid low-privilege account (not fully unauthenticated), (2) UI:R - a higher-privileged user must actually view/preview the injected content for the payload to fire, and (3) the payload only matters because these Contributor accounts normally lack the unfiltered_html capability, so the bug is what enables the script injection in the first place. Not exploitable against default configs without a Contributor+ foothold. |
| Impact | This is a stored/authenticated Cross-Site Scripting (CWE-79) issue in the HappyAddons for Elementor WordPress plugin, a moderate-severity privilege-escalation vector rather than a mass-exploitable remote flaw. The provided CVSS 3.1 vector (AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:H, 6.8) is internally inconsistent with the description: it uses PR:H, yet the description explicitly states the flaw is reachable at 'Contributor-level access and above' - a LOW-privilege WordPress role - so PR:L is the honest choice and PR:H appears to be a WPScan scoring convention rather than a true high-privilege requirement. The C:H/I:H/A:H impact set is also aggressive for a browser-context XSS and likely reflects the worst-case (admin session hijack → site takeover) rather than the direct scripting impact, which is more typically C:L/I:L with S:C. No EPSS score, no CISA KEV listing, and no confirmed public POC were provided, so there is no evidence of active or automated exploitation; the real value of the bug is that it lets a low-trust contributor bypass the missing unfiltered_html capability and land script in the browser of an admin reviewing their content. Net: a legitimate patch-worthy insider/privilege-escalation issue, not an emergency internet-wide threat. Key conflict to verify with the vendor/WPScan: PR:H vs. the description's Contributor-level requirement. |
| Exploit ScenarioDerived | A user with only Contributor-level access on a target WordPress site adds a HappyAddons button widget and sets a malicious icon value containing an event-handler attribute (e.g. onmouseover/onerror) that is written unescaped into the page's HTML. When an editor or administrator reviews the pending post, the payload executes in their authenticated browser session, enabling session/cookie theft or admin actions performed as the victim. No public exploit code was identified in the provided data, though the technique is a well-known contributor-to-admin XSS pattern. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 23, 2026
Stored cross-site scripting in HappyAddons for Elementor (all versions before 3.50.0) lets an authenticated attacker holding only Contributor-level access or above inject event-handler attributes through the icon value of one of the plugin's button widgets, which the plugin then writes into an HTML attribute without escaping. When a higher-privileged user - an editor, administrator, or any reviewer who opens or previews the crafted page - views that content, the injected JavaScript runs in their session, giving the Contributor a way to bypass the unfiltered_html capability they normally lack. Exploitation requires a valid low-privilege account plus victim interaction (UI:R), there is no public exploit code identified at time of analysis, and the vendor has released HappyAddons for Elementor 3.50.0 as the fix.
RemediationAI
Upgrade HappyAddons for Elementor to 3.50.0 or later - vendor-released patch: 3.50.0 - which escapes the icon value before it is output into the HTML attribute; this is the only complete fix and should be applied to every site running the plugin, with verification that the updated plugin is active rather than merely present on disk. Where an immediate update is not possible, compensating controls are limited because the payload is stored rather than reflected: the most effective short-term step is to temporarily deactivate the HappyAddons for Elementor plugin (or, if the site cannot lose the plugin entirely, remove/disable use of the affected button widget), accepting the loss of that widget's functionality on published pages; alternatively, restrict the site to fewer and better-vetted Contributor-and-above accounts, block or tightly control self-registration and role requests, and audit existing Contributors, recognizing this reduces but does not eliminate the attack surface since even one malicious Contributor can weaponize the flaw. Administrators and editors should also avoid opening or previewing drafts from untrusted Contributor accounts until the patch is applied, since simply reviewing the injected content is what triggers execution (UI:R). Generic WAF or security-plugin rules that strip on* event handlers from responses can add some defense in depth but do not remove the stored payload and may be bypassed by alternate attribute-injection techniques, so they should not be treated as a substitute for the 3.50.0 upgrade. Reference advisory: https://wpscan.com/vulnerability/50319e24-8ae8-40b8-9106-ed881359700e/.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation, i.e. cross-site scripting), specifically a failure to perform attribute-context escaping. Elementor-based widgets persist their settings, including the icon field of HappyAddons' button widget, typically as post meta / widget instance data, and the plugin renders that stored icon value directly inside an HTML attribute on the front end and in editor previews. Because the value is placed in an attribute context without esc_attr() or equivalent kses filtering, a Contributor can close the attribute and append arbitrary event-handler attributes (for example onmouseover, onfocus, onerror) that execute JavaScript in the browser of anyone who views the page. This matters most in WordPress's capability model: Contributor accounts can create and edit their own drafts but are explicitly denied the unfiltered_html capability (reserved for Administrators/Editors on single-site installs and Super Admins on multisite), so this escaping gap is precisely what lets a low-privileged author achieve script execution under a more privileged user's session. The independent assessment scores this as CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N - network-reachable, low-privilege authenticated, requiring victim interaction, and with a scope change because the script crosses from the attacker's low-privilege content into the higher-privileged victim's session - which matches the stored-XSS/privilege-escalation nature of the flaw rather than a mass-exploitable remote code execution issue.
Know when PHP gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:H
Contributor-level access means PR:L (not PR:H); an admin must view the content so UI:R; stored XSS crosses into the browser trust boundary giving S:C with typical C:L/I:L and no availability impact.
Primary rating from Vendor (wpscan).
CVSS VectorVendor: wpscan
Lifecycle Timeline
4DescriptionCVE.org
The HappyAddons for Elementor WordPress plugin before 3.50.0 does not escape an icon value on one of its button widgets before outputting it inside an HTML attribute, allowing users with Contributor-level access and above to inject event-handler attributes that execute JavaScript in the browser of anyone who views the page, including higher-privileged users reviewing the content, even though such users do not hold the unfiltered_html capability.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
EUVD-2026-85041
GHSA-pcmx-6hvw-8f2x
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB