Skip to main content

Forminator Forms CVE-2026-18323

| EUVDEUVD-2026-65314 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-08-25 Wordfence GHSA-mh72-7gfv-9x86
7.2
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Submit crafted radio value to nopriv AJAX endpoint
  2. Delivery
    Bypass server-side option-membership validation
  3. Exploit
    Persist XSS payload in draft submissions database
  4. Execution
    Admin navigates to Submissions detail page
  5. Persist
    Inputmask data-attribute callback auto-executes payload
  6. Impact
    Hijack admin session or install backdoor

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the targeted WordPress site has the Forminator Forms plugin installed and active at version 1.57.0.2 or earlier, and that at least one published form includes a Radio field type with the Save-and-Continue draft feature enabled - this is the specific configuration that exposes the vulnerable nopriv AJAX endpoint. The injection phase requires no authentication, no prior account, and no special network position; the attacker need only be able to reach the WordPress AJAX endpoint (wp-admin/admin-ajax.php). Execution of the stored payload requires an authenticated WordPress administrator to navigate to the Submissions admin page for the affected form; this is the only limiting factor and is a routine administrative action. Non-default configuration is not required beyond the presence of a radio field in a Save-and-Continue-enabled form. Exploitation is limited to sites where an administrator actively reviews form submissions - sites that never visit the Submissions admin page would not trigger execution, though the payload remains stored.

Impact

The CVSS 3.1 base score of 7.2 is derived from a Scope:Changed vector (AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N). The PR:N rating is confirmed by the nopriv AJAX registration described in the CVE. However, UI:N in the provided vector is a point of tension: stored XSS canonically requires a second-party (here, an administrator) to load the injected page for the payload to fire, which would normally assign UI:R. If UI:N reflects only the injection phase (which requires no interaction beyond the attacker's own request), the scorer may have bifurcated injection and execution - a non-standard interpretation that should be verified with the vendor or Wordfence advisory. An independently assessed vector using UI:R would yield a slightly lower score (~6.1) but arguably better reflects true exploitation flow. EPSS data was not supplied; given the unauthenticated, low-complexity attack path against a widely-deployed plugin, real-world exploitation probability is likely moderate to elevated. No CISA KEV listing and no public PoC are identified at time of analysis. The practical impact targets administrators: a successful payload executing in an admin session can create rogue admin accounts, install backdoor plugins, or exfiltrate nonces - all high-value outcomes despite the CVSS C:L/I:L designation. This is a genuine priority for sites using Forminator with public-facing forms that include radio fields with Save-and-Continue enabled.

Exploit ScenarioDerived

An unauthenticated attacker submits a crafted Save-and-Continue draft request to the Forminator nopriv AJAX endpoint, supplying a radio field value containing a malicious JavaScript payload wrapped in an Inputmask-compatible data-attribute expression rather than a legitimate predefined option - the missing server-side option-membership check allows this to persist in the database. When a WordPress administrator subsequently opens the Submissions detail view for the affected form, the Inputmask library processes the stored data-attribute, auto-executing the attacker's script in the admin's browser context, enabling session hijacking, admin account creation, or plugin installation. No public exploit code is identified at time of analysis, but the attack path is mechanically straightforward for any researcher familiar with WordPress AJAX internals.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 25, 2026

Stored Cross-Site Scripting in the Forminator Forms WordPress plugin (all versions through 1.57.0.2) allows unauthenticated attackers to inject persistent JavaScript payloads that auto-execute in the WordPress admin panel when an administrator views the Submissions page. The attack vector is the Save-and-Continue draft AJAX endpoint, which is registered without privilege checks (nopriv), bypassing radio field option-membership validation and permitting arbitrary values to be stored. Payload execution is triggered automatically via the bundled Inputmask library's data-attribute callback binding, requiring no further attacker interaction after initial injection. No public exploit code or CISA KEV listing is identified at time of analysis, though the unauthenticated, zero-complexity attack path and high-value admin-panel target represent meaningful real-world risk.

RemediationAI

Update the Forminator Forms plugin to version 1.57.0.3 or later; this is the vendor-released patch confirmed by the WordPress SVN changeset (https://plugins.trac.wordpress.org/changeset?reponame=&new=3652727%40forminator%2Ftags%2F1.57.0.3&old=3652717%40forminator%2Ftags%2F1.57.0.2). The fix modifies output escaping in admin/views/custom-form/entries/content-details.php and related sanitization in radio.php, helper-fields.php, and front-action.php. Sites that cannot immediately update should consider disabling the Save-and-Continue feature for any forms that include radio fields - this removes the nopriv AJAX submission path that enables unauthenticated storage of the payload, though it degrades user experience for multi-step form flows. As a compensating control, restricting direct access to the WordPress admin Submissions page via IP allowlisting or WAF rules (blocking the wp-admin/admin.php?page=forminator-entries path from untrusted networks) limits the execution phase, though it does not prevent the payload from being stored. A WAF rule blocking data-attribute callback patterns in AJAX form submissions can interrupt injection at the network layer. Wordfence users should ensure their firewall rules are current to benefit from virtual patching while the plugin update is applied.

Affected VersionsENISA

Forminator Forms – Contact Form, Payment Form & Custom Form Builder 0 ≤1.57.0.2

Affected Packages

euvd forminator_forms_contact_form_payment_form_custom_form_builder no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability resides in the WordPress plugin Forminator Forms by WPMU DEV (CPE: cpe:2.3:a:wpmudev:forminator_forms_-_contact_form,_payment_form_&_custom_form_builder:*:*:*:*:*:*:*:*), a full-featured form builder supporting contact, payment, and custom forms. The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation), manifesting in two distinct failure points: insufficient sanitization of radio field values at ingestion (library/fields/radio.php:520 and library/helpers/helper-fields.php:1053), and missing output escaping when rendering those values on the admin submissions detail view (admin/views/custom-form/entries/content-details.php:232). The attack is amplified by the Save-and-Continue draft handler being registered as a WordPress nopriv AJAX action (abstract-class-front-action.php:127, front-action.php:1112), meaning WordPress applies no authentication gate. Execution of the stored payload is automatic because the Submissions admin page passes stored field values into Inputmask's data-attribute binding system, which evaluates callback expressions on page load - no explicit eval() or innerHTML assignment required by the attacker.

Know when Wordpress Plugin gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Wordfence) PRIMARY 7.2 HIGH
AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 6.1 MEDIUM

Injection is unauthenticated (PR:N, AV:N, AC:L), but stored XSS execution requires an admin to load the submissions page (UI:R); scope changes because attacker context crosses into admin browser.

3.1 AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionCVE.org

The Forminator Forms - Contact Form, Payment Form & Custom Form Builder plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Radio Field (Save and Continue Draft) in all versions up to, and including, 1.57.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. This is exploitable because the Save-and-Continue draft submission AJAX endpoint is registered as nopriv, allowing unauthenticated attackers to bypass radio field option-membership validation and persist a crafted payload that, when rendered on the Submissions admin page, is auto-executed via the bundled Inputmask library's data-attribute callback binding.

Executive ViewAI

Why It Matters

Forminator Forms plugin (WordPress, versions up to 1.57.0.2) contains a stored cross-site scripting vulnerability allowing unauthenticated attackers to inject malicious JavaScript that executes automatically in the WordPress administrator dashboard. Any administrator who views the Submissions page will trigger execution of attacker-controlled code with full admin privileges, enabling potential site takeover, data theft, or malware distribution. Organizations using Forminator must immediately inventory and mitigate affected installations.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: immediately disable the Forminator Forms plugin; restrict WordPress admin access to known administrator IP addresses via firewall or web application firewall rules; enable and monitor WordPress admin activity logs for unauthorized submissions or field modifications; maintain current, isolated backups separate from primary infrastructure for rapid restoration if exploitation is confirmed; perform daily monitoring of the Submissions page for suspicious content and establish alert rules for admin panel logins from anomalous locations.

Threat Intelligence Overview

EPSS Score
0.3%
Top 77% exploitable
Prevalence
High
widely-installed WordPress plugin with millions of active installs
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

CVE-2024-5084 CRITICAL POC
9.8 May 23

The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil

CVE-2024-44000 CRITICAL POC
9.8 Oct 20

Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote

CVE-2020-36847 CRITICAL POC
9.8 Jul 12

The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner

CVE-2025-11749 CRITICAL POC
9.8 Nov 05

The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint

CVE-2025-27007 CRITICAL POC
9.8 May 01

The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut

CVE-2016-1209 CRITICAL POC
9.8 May 14

The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via

CVE-2024-4443 CRITICAL POC
9.8 May 22

The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based

CVE-2024-1698 CRITICAL POC
9.8 Feb 27

SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a

CVE-2023-6875 CRITICAL POC
9.8 Jan 11

The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i

CVE-2024-1512 CRITICAL POC
9.8 Feb 17

The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base

CVE-2024-4295 CRITICAL POC
9.8 Jun 05

The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in

References

Advisories & patches
ADVISORY https://nvd.nist.gov/vuln/detail/CVE-2026-18323 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.55.1/admin/views/custom-form/entries/content-details.php#L232 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.55.1/library/abstracts/abstract-class-front-action.php#L127 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.55.1/library/fields/radio.php#L520 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.55.1/library/helpers/helper-fields.php#L1053 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.55.1/library/modules/custom-forms/front/front-action.php#L1112 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.56.0/admin/views/custom-form/entries/content-details.php#L232 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.56.0/library/abstracts/abstract-class-front-action.php#L127 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.56.0/library/fields/radio.php#L520 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.56.0/library/helpers/helper-fields.php#L1053 REF https://plugins.trac.wordpress.org/browser/forminator/tags/1.56.0/library/modules/custom-forms/front/front-action.php#L1112 REF https://plugins.trac.wordpress.org/changeset/3652725/forminator/trunk/admin/views/custom-form/entries/content-details.php REF https://plugins.trac.wordpress.org/changeset?old_path=%2Fforminator/tags/1.57.0.2&new_path=%2Fforminator/tags/1.57.0.3 REF https://plugins.trac.wordpress.org/changeset?reponame=&new=3652727%40forminator%2Ftags%2F1.57.0.3&old=3652717%40forminator%2Ftags%2F1.57.0.2 REF https://www.wordfence.com/threat-intel/vulnerabilities/id/85b02779-d85f-4700-9994-68391e69c1ea?source=cve

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy