Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Unauthenticated network submission (PR:N/AV:N/AC:L), payload requires an admin to view submissions (UI:R), and execution in the privileged admin context crosses a trust boundary (S:C) enabling account takeover (C:H/I:H).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Ninja Forms plugin for WordPress versions 3.10.4 through 3.14.9 contains an unauthenticated stored cross-site scripting vulnerability in the Repeatable Fieldset feature where parseSubmissionIndex() accepts arbitrary strings as submission indexes without numeric validation, and admin_form_element() interpolates the index directly into HTML without escaping. An unauthenticated attacker can submit a public form with a crafted repeater child key containing malicious script payloads, which execute in an administrator's browser when viewing submissions in the WordPress admin panel, enabling session-cookie theft, creation of administrator accounts, installation of malicious plugins, and arbitrary modification of site content.
Articles & Coverage 2
AnalysisAI
Stored cross-site scripting in the Ninja Forms WordPress plugin (versions 3.10.4 through 3.14.9) lets unauthenticated visitors persist script payloads through the Repeatable Fieldset feature that later execute in an administrator's browser when they review form submissions. Because it requires no authentication and fires inside a privileged admin session, a successful hit can lead to admin-account takeover, malicious plugin installation, and full site compromise. No public exploit identified at time of analysis, though the flaw was reported by VulnCheck and a vendor patch is available; the CVSS 4.0 base score is 9.3 (Critical).
Technical ContextAI
The affected component is Saturday Drive's Ninja Forms, a widely deployed drag-and-drop form builder for WordPress (CPE cpe:2.3:a:saturday_drive:ninja_forms). The root cause is CWE-79 (improper neutralization of input during web page generation). Two functions collaborate to create the flaw: parseSubmissionIndex() accepts arbitrary strings as the submission index for a repeater child rather than enforcing numeric-only values, and admin_form_element() then interpolates that attacker-controlled index directly into the admin-side HTML markup without output escaping. The Repeatable Fieldset feature is the specific attack surface - its child-key handling is what carries the tainted value from an unauthenticated public form submission into the trusted admin rendering path.
RemediationAI
Patch available per vendor advisory: upgrade Ninja Forms to the current fixed release published by Saturday Drive - the exact patched version is not stated in the provided data, so consult the plugin changelog at https://wordpress.org/plugins/ninja-forms/changelog/ and the VulnCheck advisory (https://www.vulncheck.com/advisories/ninja-forms-unauthenticated-stored-cross-site-scripting-via-repeatable-fieldset-submission-index) to confirm the target version, then update from the WordPress plugin screen. If immediate patching is not possible, temporarily remove or disable any public-facing forms that use the Repeatable Fieldset feature, since that is the specific attack surface; note this breaks legitimate repeater submissions. As a defense-in-depth measure, add a WAF rule to block form submissions whose repeater child keys contain non-numeric or script-like content (e.g. angle brackets or 'on*' event handlers), accepting that WAF rules can be bypassed and may cause false positives, and have administrators avoid opening untrusted submissions until the update is applied.
More in Ninja Forms
View allThe Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The AJAX action, wp_ajax_ninja_forms_sendwp_remote_install_handler, did not have a capability check on it, nor did it ha
The Ninja Forms plugin before 3.3.14.1 for WordPress allows CSV injection. Rated high severity (CVSS 8.6), this vulnerab
The Ninja Forms Contact Form WordPress plugin before 3.6.13 unserialises the content of an imported file, which could le
The Ninja Forms Contact Form WordPress plugin before 3.6.4 does not escape keys of the fields POST parameter, which coul
The Ninja Forms WordPress plugin is vulnerable to sensitive information disclosure via the bulk_export_submissions funct
The Ninja Forms WordPress plugin before 3.8.11 does not escape an URL before outputting it back in an attribute, leading
Unauth. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no authentication required, low at
The Ninja Forms Contact Form WordPress plugin before 3.6.22 does not properly escape user input before outputting it bac
In the Ninja Forms Contact Form WordPress plugin before 3.4.34, the wp_ajax_nf_oauth_connect AJAX action was vulnerable
An open redirect in the Ninja Forms plugin before 3.3.19.1 for WordPress allows Remote Attackers to redirect a user via
XSS in the Ninja Forms plugin before 3.3.18 for WordPress allows Remote Attackers to execute JavaScript via the includes
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-46267
GHSA-895j-583x-29ww