Ninja Forms
CVE-2025-11924
HIGH
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLoad public page with Submissions Table block
-
DeliveryExtract leaked bearer token
-
ExploitReplay token against ninja-forms-views REST endpoints
-
ExecutionEnumerate arbitrary form IDs
-
ImpactExfiltrate form definitions and submission PII
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Requires the target site to render the Ninja Forms Submissions Table block on a page the attacker can load, since that block leaks the bearer token used to authorize the ninja-forms-views REST endpoints; with that token an unauthenticated remote attacker can read arbitrary form definitions and submission records. The primary limiting factor is that a site not using the Submissions Table block does not leak the token. Additionally, installs that applied only the incomplete 3.13.1 patch remain exploitable because that version introduced an endpoint that mints valid bearer tokens for arbitrary form IDs; the flaw impacts Ninja Forms versions up to and including 3.13.2. |
| Impact | The provided CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N, base 7.5) describes a network-reachable, low-complexity, unauthenticated confidentiality-only flaw, and this aligns well with the CWE-639 IDOR description: unauthenticated attackers can read arbitrary form definitions and submission records. No EPSS score, no CISA KEV listing, and no public POC are present in the input, so exploitation is 'no public exploit identified at time of analysis' - this is a Wordfence-catalogued authorization flaw, not confirmed active exploitation. The realistic risk is moderate rather than acute: the PR:N rating is technically justified (the attacker need not authenticate), but real exploitation depends on a bearer token being leaked to a page rendering the Submissions Table block, which is a meaningful precondition the raw CVSS PR:N does not capture. Notably, the description flags a defective earlier fix (3.13.1 introduced an endpoint that could mint a valid bearer token for arbitrary form IDs), so incompletely-patched installs are effectively still exposed - defenders must confirm they are on the corrected patch (trac changeset 3415563), not merely 3.13.1. Given the plugin's very large install base, this is a real prioritize-and-patch issue despite the absence of active-exploitation signals. |
| Exploit ScenarioDerived | An attacker browses to any front-end WordPress page that embeds the Ninja Forms Submissions Table block, harvests the bearer token leaked into that page, and replays it against the ninja-forms-views REST endpoints to enumerate form definitions and dump submission records (names, emails, and any collected PII) for arbitrary form IDs. No account or user interaction is required. No public exploit code is identified in the input, but the mechanism is straightforward and well-documented by the Wordfence advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 28, 2026
Unauthenticated remote attackers can read arbitrary Ninja Forms form definitions and stored submission records on WordPress sites running the plugin up to and including 3.13.2, because the ninja-forms-views REST endpoints return form metadata and submission content without verifying that the requester is authorized (CWE-639, CVSS 3.1 base 7.5, AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N). Exploitation depends on a leaked bearer token: any page that renders the Submissions Table block exposes a token that can then be used against the vulnerable endpoints, so sites that do not use that block are not exposed by this path. Notably, the 3.13.1 release was an ineffective patch - it closed the original hole but introduced an endpoint that mints valid bearer tokens for arbitrary form IDs - and no public exploit code has been identified at time of analysis, nor is the issue listed in CISA KEV. Impact is confidentiality-only (high), with no integrity or availability effect.
RemediationAI
Vendor-released patch data is available: the fix is published as WordPress plugin changeset 3415563 (see https://plugins.trac.wordpress.org/changeset/3415563/ninja-forms), and administrators should upgrade Ninja Forms to the latest patched release rather than to 3.13.1, which is an incomplete fix that can mint bearer tokens for arbitrary form IDs. Because the exact tagged release version beyond the changeset is not independently confirmed from the provided data, verify the installed version is newer than 3.13.2 after updating and re-test the ninja-forms-views endpoints. If immediate patching is not possible, the most effective compensating control is to stop leaking the token: remove or unpublish any page or post that renders the Submissions Table block (trade-off: you lose front-end submission listings), or disable the block/feature entirely. As a secondary layer, block or restrict external access to the ninja-forms-views REST namespace at the web server or WAF (trade-off: legitimate front-end views relying on that namespace may break, so scope the rule to unauthenticated requests and monitor logs for 401/403 churn). Treat any bearer token previously exposed to an untrusted client as compromised, and review stored submissions for unauthorized access. Sites that only applied 3.13.1 should be treated as still vulnerable until upgraded.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Ninja Forms is a WordPress form builder plugin whose Submissions Table block renders stored form entries on the front end, and whose ninja-forms-views REST namespace serves form definitions and submission data. The root cause is CWE-639 (Authorization Bypass Through User-Controlled Key): the REST handlers accept a caller-supplied form ID and return the corresponding metadata/submission records without checking that the caller is authenticated or entitled to that object, an Insecure Direct Object Reference pattern. Authorization is instead gated on a bearer token, which the Submissions Table block leaks to any client that can load a page containing it - turning a token-gated endpoint into an effectively unauthenticated data-read primitive. The remediation history is important: version 3.13.1 attempted to fix the original IDOR but introduced a REST endpoint that could mint a valid bearer token for arbitrary form IDs, so 3.13.1 does not remediate the issue. The affected CPE is cpe:2.3:a:ninjaforms:ninja_forms:*:*:*:*:*:wordpress:*:*, covering all releases through 3.13.2. The CVSS vector (PR:N, UI:N) confirms the attacker needs no credentials and no user interaction beyond loading a page that already contains the block.
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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Remote unauthenticated read of submission records via a token leaked to any Submissions-Table page (PR:N/AC:L); confidentiality-only, no integrity or availability impact.
Primary rating from Vendor (wordfence).
CVSS VectorVendor: wordfence
DescriptionCVE.org
The Ninja Forms - The Contact Form Builder That Grows With You plugin for WordPress is vulnerable to Insecure Direct Object Reference in versions up to, and including, 3.13.2. This is due to the plugin not properly verifying that a user is authorized before the ninja-forms-views REST endpoints return form metadata and submission content. This makes it possible for unauthenticated attackers to read arbitrary form definitions and submission records via a leaked bearer token granted they can load any page containing the Submissions Table block. NOTE: The developer released a patch for this issue in 3.13.1, but inadvertently introduced a REST API endpoint in which a valid bearer token could be minted for arbitrary form IDs, making this patch ineffective.
Executive ViewAI
The Ninja Forms WordPress plugin, versions up to and including 3.13.2, can expose form definitions and stored submission records to unauthenticated attackers when the Submissions Table block is used, creating a confidentiality risk for any organization that collects sensitive information through WordPress forms. While no public exploit identified at time of analysis, leadership should prioritize remediation because exposed submissions may contain personal, financial, or operational data that could trigger privacy, regulatory, and reputational consequences. Patch available per vendor advisory; affected sites should be identified and remediated promptly.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Affected Products (CPE)CVE.org
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
NVD
CVE.org
EPSS
VulDB
GitHub PoC
Exploit-DB