CVE-2026-11363: CWE-502 Deserialization of Untrusted Data in kstover Ninja Forms – The Contact Form Builder That Grows With You
Affects kstover Ninja Forms – The Contact Form Builder That Grows With YouSource CVE Database V5
Not known to be exploited · CVSS 6.6 Medium.
Data as of 10/25/2026, 04:40:11 UTC
- Exploitation
Not in CISA KEV, no exploitation reported
- EPSS
- 0.6% chance of exploitation in 30 days – higher than 50% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:HWhat to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| kstoverNinja Forms – The Contact Form Builder That Grows With You | Affected
| Fixed in– |
AI-suggested
Administrators should monitor vendor advisories for updates. Since exploitation requires administrator access and a POP chain from other plugins or themes, limiting plugin/theme installations and reviewing installed components for known POP chains can reduce risk.
Description
The Ninja Forms – The Contact Form Builder That Grows With You plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 3.14.6 via deserialization of untrusted input . This makes it possible for authenticated attackers, with administrator-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present. The deserialization is triggered automatically during form import when WPN_Helper::build_nf_cache() invokes $action->get_settings() immediately after the crafted form is imported, requiring no further interaction beyond the import action itself.
Impact
An attacker with administrator privileges can inject PHP objects via deserialization, potentially leading to high impact including confidentiality, integrity, and availability compromise. However, the vulnerability alone does not enable exploitation without an additional plugin or theme containing a POP chain. If a POP chain is present, the attacker could delete files, access sensitive information, or execute arbitrary code.
Summary
The Ninja Forms plugin for WordPress suffers from a PHP Object Injection vulnerability (CWE-502) in all versions up to 3.14.6. The flaw arises from deserialization of untrusted data during the form import process, specifically when WPN_Helper::build_nf_cache() calls $action->get_settings(). Exploitation requires authenticated administrator access. No proof-of-concept (POP) chain is included in the plugin itself, so exploitation depends on the presence of other plugins or themes that provide a POP chain. If such a chain exists, attackers could perform destructive or unauthorized actions such as arbitrary file deletion, data disclosure, or code execution.
Weaknesses
- CWE-502Deserialization of Untrusted Data (opens in a new tab)
Base weaknessLikelihood of exploit: MediumCWE Top 25 (2025): #15OWASP Top 10 A08:2025: Software or Data Integrity Failures (opens in a new tab)
The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.
References
- wordfence.com/threat-intel/vulnerabilities/id/d95427d0-77c6-41d6-93f1-508999e14242?source=cve (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.2/includes/Abstracts/Model.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.5/includes/Abstracts/Model.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.5/includes/Admin/Processes/ImportForm.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.5/includes/Admin/Menus/ImportExport.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.5/includes/Helper.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.2/includes/Admin/Processes/ImportForm.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.2/includes/Admin/Menus/ImportExport.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/ninja-forms/tags/3.14.2/includes/Helper.php (opens in a new tab)
- plugins.trac.wordpress.org/changeset?reponame=&old=3581939%40ninja-forms&new=3581939%40ninja-forms (opens in a new tab)