Skip to main content

NEX-Forms CVE-2025-10185

MEDIUM
SQL Injection (CWE-89)
2025-10-11 security@wordfence.com
4.9
CVSS 3.1 · Vendor: wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain admin/granted account
  2. Delivery
    Authenticate to WordPress
  3. Exploit
    Call nf_load_form_entries with crafted orderby
  4. Execution
    Append injected SQL to query
  5. Impact
    Extract sensitive database records

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated WordPress session with Administrator-level capability (PR:H) to reach the nf_load_form_entries AJAX action, where the 'orderby' parameter is insufficiently escaped and the SQL query is not properly prepared, in NEX-Forms versions up to and including 9.1.6. The limiting factor is the high privilege barrier: in a standard single-administrator site the attacker would already have equivalent database access, so meaningful risk arises mainly in multi-tenant or delegated-role configurations where a site admin grants the required capability to a lower-trust user. No user interaction and no special non-default plugin configuration beyond the plugin being installed are needed.

Impact

This is a high-CVSS-component (C:H) but genuinely low-real-risk finding. The CVSS 3.1 vector (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N, base 4.9) requires Administrator-level privileges (PR:H), which is the dominant mitigating factor: an attacker who already holds WordPress admin can typically read the database through legitimate means (and often achieve code execution via plugin/theme editing), so this SQLi adds little incremental capability in a default single-admin deployment. The realistic threat surface is multi-tenant or role-delegated sites where a site owner grants near-admin access to lower-trust users, as the description explicitly notes ('may be exploitable by lower-level users if access is granted'). Exploitation signals are weak and consistent: EPSS is 0.32% (22nd percentile), there is no CISA KEV listing (not confirmed actively exploited), and no public exploit identified at time of analysis. No signals conflict here - low EPSS, no KEV, no POC, and high required privilege all point the same direction. Priority should be routine patching, not emergency response.

Exploit ScenarioDerived

An attacker with Administrator-level access (or a lower-privilege user explicitly granted the capability on a multi-tenant site) submits a request to the nf_load_form_entries action with a malicious 'orderby' value, appending SQL to the existing query to exfiltrate credentials, hashes, or other sensitive data from the WordPress database. No public exploit code was identified at time of analysis, and the authentication barrier makes opportunistic mass-exploitation impractical.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 01, 2026

SQL injection in the NEX-Forms WordPress form builder plugin (all versions up to and including 9.1.6) lets an authenticated user with Administrator-level capability inject arbitrary SQL through the 'orderby' parameter of the nf_load_form_entries AJAX action, allowing extraction of sensitive data from the WordPress database. The CVSS vector (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N, score 4.9) shows a remote, unauthenticated-path issue but a high privilege prerequisite (PR:H), so real risk is concentrated in multi-tenant or delegated-role sites where an administrator hands the required capability to a lower-trust user; on a standard single-admin site the attacker would already hold equivalent database access. No public exploit code was identified at time of analysis, the issue is not in CISA KEV, and EPSS is only 0.32% (22nd percentile), indicating low predicted exploitation activity.

RemediationAI

Upgrade the NEX-Forms plugin beyond 9.1.6 to the latest release published in the WordPress.org repository; the upstream fix is confirmed by WordPress trac changeset 3365585, which modifies trunk/includes/classes/class.db.php (the same file containing the vulnerable ORDER BY handling), though a specific tagged patched version is not independently confirmed in the provided data, so verify the installed version after updating via the plugin's changelog and the Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/e68d47e7-9a42-4a77-aefa-fe130500cbd3?source=cve. If immediate upgrading is not possible, reduce the attack surface by reviewing which roles hold the capability required to reach the NEX-Forms entries screen through admin-ajax.php and removing it from any delegated or lower-trust accounts, since exploitation requires Administrator-level access; note the trade-off that this also removes legitimate entries-management access for those users. A WAF or virtual-patch rule that rejects non-allowlisted values in the 'orderby' parameter on requests to admin-ajax.php for action=nf_load_form_entries provides interim protection, but it must permit the plugin's own legitimate sort values or the entries table will fail to sort and may error. Monitoring database accounts and logs for unusual SELECT activity from the WordPress application user is a useful compensating detection, but none of these workarounds remove the underlying flaw, so patching remains the only complete fix.

Affected ProductsAI

The affected product is the NEX-Forms - Ultimate Forms Plugin for WordPress (WordPress.org slug nex-forms-express-wp-form-builder, also distributed as NEX-Forms Express WP Form Builder), in all versions up to and including 9.1.6; the vulnerable ORDER BY handling is visible in the 9.1.4 tagged source at includes/classes/class.db.php line 2527 (https://plugins.svn.wordpress.org/nex-forms-express-wp-form-builder/tags/9.1.4/includes/classes/class.db.php#2527). No CPE identifiers were supplied in the source data, so affected instances must be identified by plugin slug and version string rather than by CPE. The upstream code change addressing this file is recorded in the WordPress plugin repository changeset https://plugins.trac.wordpress.org/changeset/3365585/nex-forms-express-wp-form-builder/trunk/includes/classes/class.db.php, and the vendor/coordinator advisory is https://www.wordfence.com/threat-intel/vulnerabilities/id/e68d47e7-9a42-4a77-aefa-fe130500cbd3?source=cve.

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

NEX-Forms is a WordPress plugin (slug nex-forms-express-wp-form-builder) that stores submitted form entries in custom database tables. The vulnerable code lives in includes/classes/class.db.php (the NVD reference points at line 2527 of the 9.1.4 tag), where the nf_load_form_entries AJAX handler builds a SELECT for the entries list and concatenates the user-supplied 'orderby' value directly into the ORDER BY clause. This is a textbook CWE-89 improper neutralization of special elements in SQL commands: ORDER BY column identifiers generally cannot be bound with prepared-statement placeholders, so the safe pattern is a server-side allowlist of permitted column names, which was not implemented. Because the handler ignores the supplied string and the query is otherwise valid and pre-authenticated, an attacker with the required capability can append additional SQL clauses and read arbitrary rows from the database. The request is routed through WordPress admin-ajax.php, giving the network attack vector (AV:N) and requiring a valid WordPress session with Administrator-level capability (PR:H); no user interaction or special non-default plugin configuration is needed beyond the plugin being installed.

Know when Wordpress Plugin 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

Vendor (wordfence) PRIMARY 4.9 MEDIUM
AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 4.9 MEDIUM

Network-reachable AJAX action with low complexity, but requires Administrator-level privileges (PR:H); read-oriented data extraction yields C:H with no integrity or availability impact.

3.1 AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (wordfence).

CVSS VectorVendor: wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

DescriptionCVE.org

The NEX-Forms - Ultimate Forms Plugin for WordPress plugin for WordPress is vulnerable to SQL Injection via the 'orderby' parameter in the action nf_load_form_entries in all versions up to, and including, 9.1.6 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. This may be exploitable by lower-level users if access is granted by a site administrator.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Medium
popular commercial WordPress form-builder plugin, broad but not universal install base
Data Quality
4 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

24
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +24
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

CVE-2024-5084 CRITICAL POC
9.8 May 23

The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil

CVE-2024-44000 CRITICAL POC
9.8 Oct 20

Authentication bypass in the LiteSpeed Cache WordPress plugin (versions prior to 6.5.0.1) allows unauthenticated remote

CVE-2020-36847 CRITICAL POC
9.8 Jul 12

The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner

CVE-2025-11749 CRITICAL POC
9.8 Nov 05

The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint

CVE-2025-27007 CRITICAL POC
9.8 May 01

The SureTriggers WordPress plugin through version 1.0.82 contains a privilege escalation vulnerability that allows unaut

CVE-2016-1209 CRITICAL POC
9.8 May 14

The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via

CVE-2024-4443 CRITICAL POC
9.8 May 22

The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based

CVE-2024-1698 CRITICAL POC
9.8 Feb 27

SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a

CVE-2023-6875 CRITICAL POC
9.8 Jan 11

The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i

CVE-2024-1512 CRITICAL POC
9.8 Feb 17

The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base

CVE-2024-4295 CRITICAL POC
9.8 Jun 05

The Email Subscribers by Icegram Express plugin for WordPress is vulnerable to SQL Injection via the ‘hash’ parameter in

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy