Description
The Ninja Forms – The Contact Form Builder That Grows With You plugin for WordPress is vulnerable to generic SQL Injection via Import File 'settings' Key in all versions up to, and including, 3.14.9 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with administrator-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. The vulnerable keys originate from the 'settings' object in an attacker-controlled import file processed via file_get_contents() or base64-decoded/JSON-decoded blobs, bypassing wp_magic_quotes protections entirely; two distinct sinks are affected — _save_setting() in Model.php and insert_form_meta() in ImportForm.php — as only the value side is escaped while the key side receives no sanitization or parameterization at any point in the call chain.
Published: 2026-07-24
Score: 4.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Ninja Forms plugin allows administrators to import form configurations through JSON or base64‑encoded files. In versions up to 3.14.9 the plugin fails to sanitize the key portion of the settings array when building SQL queries. An attacker with administrator or higher privileges can craft a settings key that contains additional SQL statements, causing the underlying query to execute multiple commands. This classic SQL injection flaw (CWE‑89) enables the attacker to read or modify sensitive data stored in the WordPress database.

Affected Systems

All WordPress installations that have the Ninja Forms plugin version 3.14.9 or earlier are affected. The flaw is triggered through the plugin’s import functionality, which can be accessed via the WordPress admin interface.

Risk and Exploitability

The CVSS score of 4.9 indicates moderate severity, while an EPSS score of less than 1% suggests a very low exploit probability in the wild. The vulnerability is not listed in CISA KEV. Exploitation requires authenticated access with administrator rights, and the attacker must upload a malicious import file containing the injected key. Although the potential impact is limited to database read or write operations rather than remote code execution, the exposed data can be sensitive. Prompt remediation is recommended because of the risk of data disclosure and the ease with which an authorized user can create the malformed import file.

Generated by OpenCVE AI on August 3, 2026 at 20:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Ninja Forms plugin to any version newer than 3.14.9 that removes the unsanitized key handling in the import process.
  • Disable or restrict the import feature so that only a small group of highly trusted administrators can access it, or remove the feature entirely if bulk form imports are not required.
  • After the upgrade or restriction, review the lowest role that can manage imports and configure role‑based permissions to ensure that only users who truly need import capabilities retain them, minimizing the number of accounts with sufficient privileges to exploit the flaw.

Generated by OpenCVE AI on August 3, 2026 at 20:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 24 Jul 2026 22:30:00 +0000

Type Values Removed Values Added
First Time appeared Kstover
Kstover ninja Forms – The Contact Form Builder That Grows With You
Wordpress
Wordpress wordpress
Vendors & Products Kstover
Kstover ninja Forms – The Contact Form Builder That Grows With You
Wordpress
Wordpress wordpress

Fri, 24 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Description The Ninja Forms – The Contact Form Builder That Grows With You plugin for WordPress is vulnerable to generic SQL Injection via Import File 'settings' Key in all versions up to, and including, 3.14.9 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with administrator-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. The vulnerable keys originate from the 'settings' object in an attacker-controlled import file processed via file_get_contents() or base64-decoded/JSON-decoded blobs, bypassing wp_magic_quotes protections entirely; two distinct sinks are affected — _save_setting() in Model.php and insert_form_meta() in ImportForm.php — as only the value side is escaped while the key side receives no sanitization or parameterization at any point in the call chain.
Title Ninja Forms <= 3.14.9 - Authenticated (Administrator+) SQL Injection via Import File 'settings' Key
Weaknesses CWE-89
References
Metrics cvssV3_1

{'score': 4.9, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N'}

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Subscriptions

Kstover Ninja Forms – The Contact Form Builder That Grows With You
Wordpress Wordpress
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-07-24T10:53:25.104Z

Reserved: 2026-07-13T20:24:33.708Z

Link: CVE-2026-15663

cve-icon Vulnrichment

Updated: 2026-07-24T10:49:51.096Z

cve-icon NVD

Status : Deferred

Published: 2026-07-24T10:16:31.567

Modified: 2026-07-24T20:45:45.697

Link: CVE-2026-15663

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T20:30:04Z

Weaknesses
  • CWE-89

    Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')