CVE-2026-4246
ElementsKit Pro <= 4.10.1 - Unauthenticated Stored Cross-Site Scripting via 's' Parameter
- State
- Published
- Severity
- 6.1 Medium
- Published
- Aug 28, 2026
- Updated
- Aug 28, 2026
- Reserved
- Mar 15, 2026
Description
The ElementsKit Pro plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 's' parameter of the Advanced Search REST endpoint in all versions up to, and including, 4.10.1 due to insufficient input sanitization and output escaping. The REST endpoint at /wp-json/elementskit/v1/advanced-search uses permission_callback set to __return_true, allowing unauthenticated access. Search terms are stored in the ekit_advanced_search_popular_keyword WordPress option via update_option(). While sanitize_text_field() is applied, it does not encode double quotes, and the stored keywords are rendered in HTML attributes via sprintf without esc_attr(), allowing attribute injection. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user triggers the "no results" popular keywords view on pages using the Advanced Search widget.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 6.1 Medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N | Wordfence |
Weaknesses
- CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Affected Products
| Product | Versions |
|---|---|
ElementsKit Prowpmet |
|
References
- https://www.wordfence.com/threat-intel/vulnerabilities/id/a40e7a88-11f2-4fa8-856b-bda3ebcbae56?source=cve
- https://wpmet.com/plugin/elementskit/
- https://plugins.trac.wordpress.org/browser/elementskit/trunk/widgets/advanced-search/advanced-search-result.php#L174
- https://plugins.trac.wordpress.org/browser/elementskit/trunk/widgets/advanced-search/advanced-search-handler.php#L38
- https://plugins.trac.wordpress.org/browser/elementskit/trunk/widgets/advanced-search/advanced-search-result.php#L91
- https://wpmet.com/plugin/elementskit/roadmaps/
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.