CVE-2026-18409: WPForms Pro <= 2.0.0.2 - Unauthenticated Stored Cross-Site Scripting via Single Line Text and Paragraph Text Field Values
The WPForms Pro plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Single Line Text and Paragraph Text Field Values in all versions up to, and including, 2.0.0.2 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The exploit relies on the plugin's own wpksesallowedhtml filter widening the 'post' allowlist to permit iframe elements with a data-src attribute, which is not on WordPress's URI-attribute sanitization list, allowing a javascript: URI stored in data-src to survive kses processing and subsequently be promoted to a live src attribute by the bundled admin script view-entry.min.js.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
WordPress WPForms Pro pluginto a version that resolves this vulnerability.Fixed in 2.0.0.2
Event History
Frequently Asked Questions
Who can exploit this issue?
An attacker does not need authentication or user interaction to submit a malicious value. Exploitation requires a vulnerable WPForms Pro form using a Single Line Text or Paragraph Text field and a later visit to the page where the injected entry is rendered.
What conditions cause the stored payload to execute?
The payload survives sanitization because the plugin permits iframe elements with a data-src attribute, including a javascript: URI. The bundled admin script view-entry.min.js later promotes data-src to src, causing the script to execute when a user accesses the injected page.
Which versions are affected?
All WPForms Pro versions up to and including 2.0.0.2 are affected.