CVE-2026-95586 Overview
CVE-2026-95586 is a stored Cross-Site Scripting (XSS) vulnerability in the WordPress plugin Ultimate Addons for Contact Form 7. The flaw affects plugin versions up to and including 3.5.50. An authenticated attacker with Contributor-level privileges can inject malicious JavaScript that executes in the browsers of other users, including administrators, when they view affected content.
The vulnerability is classified as improper neutralization of input during web page generation [CWE-79]. Successful exploitation requires user interaction and results in a scope change, allowing script execution across the WordPress administrative interface.
Critical Impact
A Contributor-level account can inject persistent JavaScript that runs when higher-privileged users view affected pages, enabling session theft, administrative action forgery, and account takeover.
Affected Products
- Ultimate Addons for Contact Form 7 WordPress plugin
- All versions up to and including 3.5.50
- WordPress sites using the plugin with Contributor-level user accounts
Discovery Timeline
- 2026-09-23 - CVE-2026-95586 published to NVD
- 2026-09-23 - Last updated in NVD database
Technical Details for CVE-2026-95586
Vulnerability Analysis
The vulnerability resides in the Ultimate Addons for Contact Form 7 plugin, which extends WordPress form functionality. Input supplied by authenticated Contributor users is not properly sanitized or encoded before being rendered in the WordPress interface.
When a Contributor submits crafted content containing JavaScript payloads, the plugin stores the input and later returns it to other users without adequate output encoding. The injected script executes in the browser session of the viewing user under the origin of the WordPress site.
Because the vulnerability produces a scope change, script execution reaches contexts beyond the initial attacker's privilege boundary. An attacker can leverage this to perform actions as an administrator viewing the malicious content. Refer to the Patchstack XSS Vulnerability Report for technical details.
Root Cause
The root cause is missing or insufficient input sanitization and output encoding in plugin code paths accessible to Contributor accounts. The plugin trusts stored content and renders it into HTML contexts without applying esc_html(), esc_attr(), or wp_kses() filtering appropriate to the rendering context.
Attack Vector
Exploitation requires the attacker to hold a Contributor account on the target WordPress site. The attacker submits crafted content containing a JavaScript payload through plugin-controlled input fields. When an administrator or other privileged user views the content, the payload executes in their session and can exfiltrate authentication cookies, create new administrator accounts, or modify site configuration.
No verified public proof-of-concept code is available. See the Patchstack advisory for further analysis.
Detection Methods for CVE-2026-95586
Indicators of Compromise
- Unexpected <script> tags, javascript: URIs, or event handler attributes (onerror, onload) stored in plugin-managed content or post metadata.
- Creation of new administrator accounts or unexpected role escalations following Contributor activity.
- Outbound requests from administrator browser sessions to unknown external domains after viewing Contributor-authored content.
Detection Strategies
- Audit the wp_posts and wp_postmeta tables for content submitted by Contributor accounts containing HTML tags or JavaScript syntax.
- Review web server access logs for POST requests to plugin endpoints originating from Contributor accounts followed by administrator page views.
- Monitor browser Content Security Policy (CSP) violation reports for inline script execution attempts on WordPress admin pages.
Monitoring Recommendations
- Enable WordPress activity logging to record content creation and editing events tied to Contributor-level users.
- Alert on newly created administrator accounts, changes to user roles, and modifications to core WordPress option values.
- Monitor for anomalous session behavior in administrator accounts, including requests originating from unfamiliar IP addresses or user agents.
How to Mitigate CVE-2026-95586
Immediate Actions Required
- Update Ultimate Addons for Contact Form 7 to a version later than 3.5.50 once released by the vendor.
- Audit Contributor accounts, remove unused accounts, and rotate credentials for accounts that remain active.
- Review recent Contributor submissions for embedded scripts and remove any malicious content.
Patch Information
Consult the Patchstack advisory for the latest fixed version and patch details. Apply the vendor update through the WordPress plugin management interface or via WP-CLI.
Workarounds
- Restrict Contributor role registration and require manual approval for new low-privilege accounts.
- Deploy a Web Application Firewall (WAF) rule to block requests containing script tags or event handler attributes on plugin endpoints.
- Implement a strict Content Security Policy that disallows inline script execution on WordPress administrative pages.
- Temporarily deactivate the plugin if a patched version is not yet available and the site accepts Contributor submissions.
# Update the plugin using WP-CLI once a patched version is available
wp plugin update ultimate-addons-for-contact-form-7
# List all users with the Contributor role for review
wp user list --role=contributor --fields=ID,user_login,user_email,user_registered
# Deactivate the plugin as a temporary workaround
wp plugin deactivate ultimate-addons-for-contact-form-7
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

