Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconFind public form with Repeatable Fieldset
-
DeliverySubmit crafted repeater child key
-
ExploitPayload stored unescaped via parseSubmissionIndex
-
InstallAdmin opens submissions in wp-admin
-
C2Script runs in admin session
-
ExecuteCreate rogue admin or steal cookies
-
ImpactFull site takeover
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 a publicly accessible Ninja Forms form that uses the Repeatable Fieldset feature - that feature being present and reachable is the concrete precondition, since the vulnerable parseSubmissionIndex()/admin_form_element() path is specific to repeater child-key handling. The attacker needs no account (PR:N) and only submits the form with a malicious repeater child key as the submission index. The key limiting factor is UI:A: the payload lies dormant until an administrator actively opens the affected submission in the WordPress admin panel, so exploitation depends on that human action and on the site actually reviewing form entries; sites not using Repeatable Fieldsets, or running versions outside 3.10.4-3.14.9, are not exposed. |
| Impact | This is a genuine high-priority issue rather than an inflated CVSS score. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N, 9.3) shows a network-reachable, low-complexity, unauthenticated vector whose only meaningful gate is UI:A - an administrator must open the submissions view, an action that is routine for any site processing forms. The subsequent-system impacts (SC:H/SI:H) correctly capture that code runs in the privileged admin context, not just the vulnerable component. Mitigating the raw severity: exploitation is not automatable end-to-end because it hinges on that admin-view step, and there is no KEV listing and no public POC, so this reads as latent risk rather than confirmed active or widespread exploitation. No EPSS score was provided in the input, so probabilistic exploitation likelihood cannot be quantified here. Confidence in the CVSS signal is high because the vector aligns cleanly with the described mechanism. |
| Exploit ScenarioDerived | An unauthenticated attacker locates a public Ninja Forms form using a Repeatable Fieldset, submits it with a crafted repeater child key such as '<script>...</script>' as the submission index, and the payload is stored. When a site administrator later opens the submissions view in wp-admin, the script executes in their authenticated session and can steal cookies or silently create a new administrator account. No public POC was identified in the input, but the low attack complexity (AC:L) and network vector make weaponization straightforward once the mechanism is known. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 21, 2026
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).
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.
Affected VersionsENISA
Affected Packages
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 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.
Know when Ninja Forms 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
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
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
DescriptionCVE.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
Executive ViewAI
Ninja Forms WordPress plugin versions 3.10.4-3.14.9 contain a critical stored cross-site scripting vulnerability that allows unauthenticated attackers to inject malicious scripts into form submissions, which then execute in administrators' browsers with full privileges. This enables direct account takeover, malicious plugin installation, and complete website compromise without requiring attacker credentials. Organizations using this plugin must treat this as an immediate threat to administrator account security and overall site integrity.
Apply vendor patch.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
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
Stored cross-site scripting in the Ninja Forms WordPress plugin 3.15.3 lets an unauthenticated visitor plant a script pa
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
PHP Object Injection in the Ninja Forms WordPress plugin 3.15.3 allows unauthenticated attackers to plant serialized pay
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
EUVD-2026-46267
GHSA-895j-583x-29ww
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB