CVE-2026-1866
Published: 10 February 2026
Summary
CVE-2026-1866 is a high-severity Cross-site Scripting (CWE-79) vulnerability in Wordpress (inferred from references). Its CVSS base score is 7.2 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Drive-by Compromise (T1189); ranked at the 40.3th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.
This vulnerability is AI-related — categorised as Other Platforms; in the Other ATLAS/OWASP Terms risk domain.
The strongest mitigations our analysis identified are NIST 800-53 SI-10 (Information Input Validation) and SI-15 (Information Output Filtering).
Deeper analysis
CVE-2026-1866 is a stored cross-site scripting (XSS) vulnerability in the Name Directory plugin for WordPress, affecting all versions up to and including 1.32.0. The flaw stems from the plugin's sanitization function calling `html_entity_decode()` before `wp_kses()`, followed by another `html_entity_decode()` call on output, enabling double HTML-entity encoding bypass. This allows arbitrary web scripts to be injected via the 'name_directory_name' and 'name_directory_description' parameters in the plugin's public submission form. The vulnerability carries a CVSS v3.1 base score of 7.2 (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N) and is associated with CWE-79 (Cross-site Scripting).
Unauthenticated attackers can exploit this vulnerability by submitting malicious payloads through the public form. The injected scripts will execute whenever a user accesses the affected page, provided the site administrator approves the submission or auto-publishing is enabled, such as by tricking the administrator into approval. Successful exploitation enables attackers to steal sensitive data, perform actions on behalf of authenticated users, or deface pages, with low confidentiality and integrity impacts but changed scope due to client-side execution.
References include code locations in helpers.php (line 604) and shortcode.php (lines 41 and 193) from version 1.31.0, highlighting the double decoding issue, along with WordPress plugin trac changeset 3455023, which appears to address the flaw in the trunk. Wordfence threat intelligence provides further details on the vulnerability (ID: 29d13457-ac60-4e3d-9d8b-0141e6f8f4f6). Security practitioners should update to a patched version beyond 1.32.0 and review submissions in affected plugins.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-6880
Vulnerability details
The Name Directory plugin for WordPress is vulnerable to Stored Cross-Site Scripting via double HTML-entity encoding in all versions up to, and including, 1.32.0. This is due to the plugin's sanitization function calling `html_entity_decode()` before `wp_kses()`, and then calling `html_entity_decode()`…
more
again on output. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page via the 'name_directory_name' and 'name_directory_description' parameters in the public submission form granted they can trick the site administrator into approving their submission or auto-publish is enabled.
- CWE(s)
AI Security AnalysisAI
- AI Category
- Other Platforms
- Risk Domain
- Other ATLAS/OWASP Terms
- OWASP Top 10 for LLMs 2025
- None mapped
- Classification Reason
- Matched keywords: function calling
Related Threats
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
Stored XSS in public-facing WP plugin form directly enables Drive-by Compromise via malicious script execution on page load and is itself an instance of exploiting a public-facing application.
CVEs Like This One
Affected Assets
Mitigating Controls
Mitigating Controls (NIST 800-53 r5) AI
Directly requires validation and sanitization of untrusted inputs such as name_directory_name and name_directory_description to block the double-decoding XSS bypass.
Requires filtering of information outputs before rendering to remove injected scripts that would otherwise execute on page access.
Provides mechanisms to detect and block malicious code payloads submitted through the public form before they are stored or executed.