Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessConfirm open registration and vulnerable page state
-
DeliveryFetch valid nonce via nopriv eael_get_token endpoint
-
ExploitSubmit register_user() with a revision ID as page_id
-
ExecutionBypass inherit-status deny-list and post_author check
-
ImpactSelf-register Editor account with elevated capabilities
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Least privilege enforcement
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation is NOT a default-configuration drive-by despite PR:N. Concrete prerequisites, all drawn from the description: (1) the site must have 'Anyone can register' (WordPress Settings → General → Membership) enabled; (2) a page must contain the Essential Addons Login/Register widget; (3) an administrator must have, at some point, saved and then reverted a non-default 'New User Role' on that page, leaving a revision whose _elementor_data carries the elevated role. The attack mechanics: the register_user() handler's post-status deny-list rejects future/draft/pending but admits 'inherit' (the status of every revision), letting the attacker pass a revision ID as page_id; the 'last saved by administrator' check reads post_author on the revision (the editing admin) instead of the never-copied-to-revisions _edit_last meta; and the nonce gate is moot because any unauthenticated visitor can obtain a valid nonce from wp_ajax_nopriv_eael_get_token. Limiting factors that reduce real-world risk: the required admin save-then-revert history and open-registration setting are both non-default and attacker-uncontrolled, which is why AC is High even though authentication is not required. |
| Impact | This is a genuine but conditionally-gated issue rather than a drop-everything emergency. The CVSS 3.1 base score of 7.4 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) captures the tension well: the vector is network-reachable and unauthenticated (PR:N), which normally signals mass-exploitability, but AC:H reflects that success depends on target-specific preconditions the attacker does not control - specifically that an administrator previously saved and then reverted a non-default 'New User Role' on a page carrying the Login/Register widget, and that 'Anyone can register' is enabled. No EPSS score was supplied, so the statistical exploitation probability is unknown and cannot be weighed here. The vulnerability is NOT in CISA KEV and shows no active-exploitation signal: exploitation status is 'no public exploit identified at time of analysis' - the references are a Wordfence advisory, plugin source lines, and the fix changeset, not working exploit code. The SSVC/priority decision label is 'this_week', which is consistent with a serious privilege-escalation flaw in a very widely deployed plugin that nonetheless requires non-default site state to trigger. Net: prioritize patching within the normal weekly cycle; the AC:H preconditions make opportunistic mass exploitation unlikely, but the unauthenticated-to-Editor outcome on a hugely popular plugin justifies prompt action rather than deferral. |
| Exploit ScenarioDerived | On a WordPress site that allows open registration and that has a page using the Essential Addons Login/Register widget where an admin once saved then reverted an elevated 'New User Role', an unauthenticated attacker first requests a valid nonce from the public wp_ajax_nopriv_eael_get_token endpoint. The attacker then calls register_user() supplying the ID of a page revision (post status 'inherit') instead of the live page, defeating the deny-list and the flawed author check so the reverted elevated role stored in the revision's _elementor_data is applied. The result is a self-registered Editor account with edit_others_posts, publish_pages, upload_files, and unfiltered_html. No public exploit code is identified at time of analysis, and AC:H reflects the required pre-existing site state. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
Unauthenticated privilege escalation in the Essential Addons for Elementor plugin (all versions up to and including 6.8.7) lets any site visitor register an account with a role as high as Editor - gaining edit_others_posts, publish_pages, upload_files and unfiltered_html - by passing a WordPress revision ID as the page_id parameter of the register_user() handler. The escalation is not a default-configuration drive-by: the site must have "Anyone can register" enabled, a page must carry the plugin's Login/Register widget, and an administrator must at some point have saved and then reverted a non-default "New User Role" on that page, leaving a revision whose _elementor_data still holds the elevated role. Those attacker-uncontrolled, non-default prerequisites are why the vector scores AC:H despite PR:N; no public exploit has been identified at time of analysis and the issue is not in CISA KEV. In practice this is a genuine but conditionally-gated issue rather than a drop-everything emergency, though the impact when the preconditions are met is full administrative-adjacent compromise of site content.
RemediationAI
Upstream fix available (commit); released patched version not independently confirmed. A fix for this handler has been committed to the plugin trunk in changeset 3770535 (https://plugins.trac.wordpress.org/changeset/3770535/essential-addons-for-elementor-lite/trunk/includes/Traits/Login_Registration.php), so sites should update Essential Addons for Elementor to a release that incorporates that changeset - the affected range ends at 6.8.7, but the input data does not name a specific patched release number, so verify the installed version against the plugin's changelog and the Wordfence advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/a739cb9a-0b09-4303-8d4a-16fca1152adf) rather than assuming a version. Where updating cannot be done immediately, the exposure can be reduced by removing the stated prerequisites: turn off "Anyone can register" in Settings → General (this closes the registration path entirely and is the single most effective compensating step, at the cost of disabling self-service signups), and eliminate the stale elevated role by deleting revisions of any page that embeds the Login/Register widget and previously held a non-default "New User Role" (this removes the data the exploit reads, at the cost of losing page revision history), or by removing the Login/Register widget from published pages until the patched release is installed. Note that the plugin's nonce endpoint wp_ajax_nopriv_eael_get_token issues valid tokens to unauthenticated visitors and therefore should not be treated as a mitigation.
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 flaw is CWE-269 improper privilege management inside the plugin's Login_Registration trait, where the AJAX registration handler resolves the target page from an attacker-supplied page_id and then reads the Elementor widget settings from that post. The status deny-list in that lookup rejects future, draft and pending but admits inherit - the status WordPress assigns to every revision - so a revision ID passes validation where a live page ID was intended. The 'last saved by an administrator' guard then reads post_author on the resolved post; on a revision that value reflects the administrator who performed the edit, while the _edit_last meta that the plugin was implicitly relying on is never copied to revisions, so the check passes spuriously. The nonce gate provides no real barrier because the wp_ajax_nopriv_eael_get_token endpoint hands a valid nonce to any unauthenticated visitor. Because revisions retain the serialized _elementor_data of a prior save, a page where an administrator once set a non-default 'New User Role' in the Login/Register widget and later reverted it still holds that elevated role value in its revision history, and the registration flow writes it to the newly created account. The affected package is cpe:2.3:a:wpdevteam:essential_addons_for_elementor_-_popular_elementor_templates_&_widgets with no version constraint in the feed; references point to WordPress.org plugin Trac source lines in tags/6.8.5 (Login_Registration.php lines 276, 552, 887 and 1059, Ajax_Handler.php line 1817, Bootstrap.php line 216) and to changeset 3770535 in trunk, which is where the upstream fix was committed. Exact triggering preconditions beyond those described - including whether every SAPI/deployment mode of the plugin is equally exposed - are not confirmed by the available sources.
Know when Wordpress Plugin 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:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Unauthenticated network request (AV:N/PR:N/UI:N); AC:H because success needs attacker-uncontrolled site state (open registration plus an admin save/revert revision); Editor capabilities yield C:H/I:H, no availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Essential Addons for Elementor - Popular Elementor Templates & Widgets plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 6.8.7 via the page_id parameter of the register_user() function. The vulnerability exists because the handler's post status deny-list rejects future, draft, and pending but admits inherit - the status carried by every WordPress revision - allowing an attacker to substitute a revision ID for a live page ID, while a flawed "last saved by administrator" check reads post_author on revisions (which reflects the editing administrator) rather than the _edit_last meta that is never copied to revisions, and the nonce gate is rendered ineffective because any unauthenticated visitor can freely obtain a valid nonce via the wp_ajax_nopriv_eael_get_token endpoint. This makes it possible for unauthenticated attackers to register an account with a role as high as Editor - gaining capabilities including edit_others_posts, publish_pages, upload_files, and unfiltered_html - by naming a revision whose _elementor_data contains an elevated role an administrator previously saved and later reverted on a page bearing the Login/Register widget. Successful exploitation requires that the site has "Anyone can register" enabled and that an administrator has at some point saved and then reverted a non-default "New User Role" on an affected page.
Executive ViewAI
CVE-2026-118205 is a high-severity flaw in the Essential Addons for Elementor plugin that could let an attacker register a privileged account (e.g., Editor) on affected WordPress sites. However, exploitation requires multiple non-default conditions: open registration, a page with the plugin's Login/Register widget, and a prior admin save/revert of a custom user role. No public exploit exists at this time, so the risk is limited to sites meeting these specific prerequisites.
No vendor-released patch identified at time of analysis. Interim mitigations include: restrict user registration to trusted roles or disable 'Anyone can register'; remove or replace the Login/Register widget on pages where a non-default role was previously set; monitor for unusual user registrations with elevated roles; and deploy WAF rules to detect and block attempts to pass revision IDs as page_id.
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
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
More in Wordpress Plugin
View allThe Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint
The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in
EUVD-2026-114227
GHSA-pvrf-6wrj-9xxg
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB