CVE-2025-26912 Overview
CVE-2025-26912 is a stored cross-site scripting (XSS) vulnerability in the Easy Elementor Addons plugin for WordPress, developed by hashthemes. The flaw stems from improper neutralization of user-supplied input during web page generation [CWE-79]. All plugin versions up to and including 2.1.6 are affected. An authenticated attacker with low privileges can inject malicious JavaScript that persists in the application and executes in the browser of any user who views the affected page. The vulnerability has a changed scope, meaning injected scripts can impact components beyond the vulnerable plugin.
Critical Impact
Authenticated contributors can inject persistent scripts that execute in the context of site visitors and administrators, enabling session theft, defacement, and administrative action hijacking.
Affected Products
- hashthemes Easy Elementor Addons for WordPress
- All versions from initial release through 2.1.6
- WordPress sites with the plugin active and user contributions enabled
Discovery Timeline
- 2025-02-25 - CVE-2025-26912 published to the National Vulnerability Database
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2025-26912
Vulnerability Analysis
The vulnerability resides in how Easy Elementor Addons processes user-controlled input when rendering widget content. The plugin fails to sanitize or encode input before writing it to the generated HTML output. An attacker with contributor-level access or higher can submit crafted payloads through plugin widget fields. The payload is stored in the WordPress database and served to subsequent visitors as part of normal page rendering.
Because the stored payload executes in the browser context of the viewing user, the scope of the vulnerability extends beyond the vulnerable component. Administrator sessions, authentication cookies not flagged HttpOnly, and nonces usable for privileged actions become reachable to the attacker. Successful exploitation requires user interaction, specifically a victim loading a page that renders the attacker-controlled widget output.
Root Cause
The plugin accepts input in widget configuration fields without applying WordPress sanitization helpers such as wp_kses_post(), esc_attr(), or esc_html() prior to output. Values are rendered directly into HTML attributes or inline contexts, allowing <script> tags or event-handler attributes such as onerror and onmouseover to execute when the page is rendered.
Attack Vector
Exploitation requires an authenticated account with permission to edit Elementor content, typically a contributor or editor. The attacker inserts a JavaScript payload into a vulnerable widget field, saves the content, and waits for a privileged user to view the page. Refer to the Patchstack Vulnerability Report for the technical write-up.
No public proof-of-concept exploit is currently available, and the issue is not listed in the CISA Known Exploited Vulnerabilities catalog.
Detection Methods for CVE-2025-26912
Indicators of Compromise
- Unexpected <script> tags, inline event handlers, or javascript: URIs stored in wp_posts or wp_postmeta tables for Elementor-managed pages
- Outbound HTTP requests from administrator browsers to attacker-controlled hosts shortly after loading pages built with Easy Elementor Addons
- New administrator accounts or privilege changes shortly after an editor session loads a contributor-authored page
Detection Strategies
- Query WordPress post content and meta tables for Elementor widget JSON containing <script, onerror=, or onload= substrings
- Review web server access logs for POST requests to /wp-admin/admin-ajax.php and /wp-json/wp/v2/ endpoints originating from low-privilege accounts
- Deploy a Content Security Policy (CSP) in report-only mode to surface inline script violations on pages rendered by the plugin
Monitoring Recommendations
- Alert on changes to Easy Elementor Addons widget configurations made by contributor or editor roles
- Monitor WordPress audit logs for post revisions that introduce HTML tags into text-only fields
- Track plugin version inventory to confirm all WordPress instances are above 2.1.6 once a patched release is published
How to Mitigate CVE-2025-26912
Immediate Actions Required
- Update Easy Elementor Addons to a version later than 2.1.6 once the vendor publishes a fix, as tracked on the Patchstack advisory
- Audit all contributor, author, and editor accounts and remove any that are inactive or unnecessary
- Review existing Elementor pages for stored script payloads and purge malicious content from the database
Patch Information
At the time of publication, the Patchstack advisory lists all versions through 2.1.6 as affected and does not identify a fixed release. Monitor the vendor's plugin page and the Patchstack advisory for an updated version, and apply it across all WordPress installations once available.
Workarounds
- Deactivate the Easy Elementor Addons plugin until a patched version is released if contributor-level accounts cannot be fully trusted
- Restrict editing permissions on vulnerable widgets to administrator accounts using a role management plugin
- Deploy a web application firewall rule that blocks HTML tag characters in Elementor AJAX save requests from non-administrator users
- Enforce a strict Content Security Policy that disallows inline scripts to limit payload execution on rendered pages
# Example CSP header to limit inline script execution
Header set Content-Security-Policy "default-src 'self'; script-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self';"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

