Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLoad page with Ninja Forms payment form
-
DeliveryIntercept AJAX form submission
-
ExploitInject non-matching calc value in ListSelect/ListRadio field
-
Executionget_calc_value() fails open, returns attacker value
-
PersistSubmit tampered payment total (e.g. zero)
-
ImpactBypass configured pricing, complete transaction
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V3 - Web Frontend Security Server-side parameter enforcement
|
| Exploitation Conditions | Exploitation requires a target site running Ninja Forms 3.14.8 or earlier with a form that uses a ListSelect or ListRadio field wired into calculation or payment-total logic; the attacker submits a value that does not match any admin-configured option to the plugin's AJAX submit endpoint, triggering the fail-open behavior in get_calc_value(). No authentication is required (PR:N), no user interaction is needed (UI:N), and it is remotely reachable (AV:N) against affected versions. The practical limiting factor is configuration-dependent: sites that do not use ListSelect/ListRadio fields for pricing or payment calculations have no meaningful financial impact, so the condition is 'a payment or calculation form built with these specific field types must exist,' not merely network reachability. |
| Impact | The supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N) scores 8.7 and cleanly matches the description: network-reachable, low-complexity, unauthenticated, no user interaction, with a high integrity impact and no confidentiality or availability impact - consistent with a business-logic/pricing tampering flaw rather than code execution or data disclosure. No EPSS score was provided, and the vulnerability is not in CISA KEV, so there is no evidence of active exploitation; exploitation status is 'no public exploit identified at time of analysis.' This is a genuine priority for any site that uses Ninja Forms to collect payments or price-sensitive submissions, because exploitation is trivial and directly monetizable (zero-cost checkouts), but the real-world blast radius is bounded to sites actually using payment/calculation logic - informational or contact-only forms are not financially impacted. Note that impact is scoped to integrity of submissions/pricing; there is no direct server compromise or data theft implied by the vector or description. |
| Exploit ScenarioDerived | An attacker opens a page hosting a Ninja Forms payment form that uses a ListSelect or ListRadio field, then intercepts and modifies the form submission sent to the AJAX submit endpoint, replacing the field's calc value with one that matches no configured option (for example, a total of 0). Because get_calc_value() fails open and returns the attacker-supplied number, the order or payment total is computed from the tampered value, letting the attacker check out for free or at an arbitrary price. No authentication, user interaction, or special tooling beyond an intercepting proxy is required; no public POC is identified at this time. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 21, 2026
Payment and calculation total tampering in the Ninja Forms WordPress plugin (versions 3.14.8 and prior) allows unauthenticated attackers to submit crafted values that match no configured option in ListSelect or ListRadio fields, causing the get_calc_value() method to fail open and return attacker-supplied numbers. This lets an attacker rewrite form calculation results and payment amounts - including setting order totals to zero - bypassing admin-defined pricing logic. Reported by VulnCheck with a vendor patch available; no public exploit identified at time of analysis, and this is not listed in CISA KEV.
RemediationAI
Patch available per vendor advisory: upgrade Ninja Forms to the latest fixed release above 3.14.8 as published in the plugin changelog at https://wordpress.org/plugins/ninja-forms/changelog/ (an exact fixed version number is not stated in the provided data, so confirm the patched version in the changelog before deploying). Until patched, reduce exposure by disabling or removing calculation and payment functionality that depends on ListSelect and ListRadio fields, or replace those field types with server-validated alternatives where option-to-value mapping is enforced - accepting the trade-off of reduced form flexibility. As compensating controls, add server-side/back-office verification of order totals against expected pricing before fulfilling any transaction and reconcile payment amounts with the payment processor's records to catch zeroed or altered totals, and consider a WAF rule to inspect submissions to the Ninja Forms AJAX submit endpoint for calc values that do not correspond to configured options. Full remediation details are in the VulnCheck advisory linked above.
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
Ninja Forms is a drag-and-drop form builder for WordPress that supports calculation fields and e-commerce/payment integrations, where field selections drive computed totals. The affected components are the ListSelect and ListRadio field types, whose server-side get_calc_value() routine is intended to map a submitted selection back to its admin-configured numeric value. The root cause is CWE-472 (External Control of Assumed-Immutable Web Parameter): the AJAX submit endpoint trusts the client-supplied calc value rather than strictly validating it against the server-side list of allowed options, so an unrecognized value is accepted ('fails open') instead of being rejected or coerced to a safe default. The affected package is identified by CPE cpe:2.3:a:saturday_drive:ninja_forms (vendor Saturday Drive).
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:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
Remote, low-complexity, unauthenticated tampering of pricing data with no user interaction gives AV:N/AC:L/PR:N/UI:N; only integrity is affected (I:H), so C and A are N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Ninja Forms WordPress plugin version 3.14.8 and prior contains an improper input validation vulnerability that allows unauthenticated attackers to inject arbitrary numeric values into form calculations and payment totals by submitting values that do not match any configured option in ListSelect or ListRadio fields. Attackers can tamper with form submission payloads to the ajax submit endpoint, causing the get_calc_value() method to fail open and return attacker-controlled values, enabling manipulation of payment amounts to zero or arbitrary figures and bypassing admin-configured pricing logic.
Articles & Coverage 1
Executive ViewAI
Ninja Forms WordPress plugin versions 3.14.8 and earlier contain an unauthenticated payment-tampering vulnerability allowing attackers to manipulate order totals to zero or arbitrary values, creating direct financial exposure for any organization accepting payments through affected installations. The vulnerability is trivially exploitable with no authentication required and poses immediate revenue risk across all exposed deployments. Urgent patching and transaction auditing are critical to prevent ongoing fraud.
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.
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-46272
GHSA-w952-x9hc-f66c
NVD
CVE.org
EPSS
Exploit-DB