Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with valid low-priv account
-
ExploitSend crafted request to vulnerable endpoint
-
ExecutionInject SQL via unvalidated parameter
-
ImpactExtract sensitive data from database
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 session with a valid ERPNext account (PR:L) - exploitation is not possible pre-authentication. The attacker must reach one of the specific unvalidated endpoints and supply a crafted parameter that is unsafely incorporated into a database query; no special non-default configuration or user interaction is required (UI:N), and the flaw is reachable over the network against affected versions (ERPNext < 15.113.0 and 16.x < 16.22.0). The authentication requirement is the primary limiting factor; risk rises sharply where ERPNext allows open/self-service account registration or is internet-exposed, and falls where accounts are tightly provisioned to trusted users. |
| Impact | This is a legitimate but moderate-priority issue rather than an emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H) describes a network-reachable, low-complexity SQL injection that an authenticated low-privileged user can trigger to read sensitive database contents, with no integrity or availability impact (VI:N/VA:N). The PR:L requirement is the key mitigating signal: an attacker needs valid credentials (any authenticated ERPNext account), which narrows the realistic threat to insiders, compromised accounts, or environments with weak/self-service registration. No EPSS score, CISA KEV listing, or public POC was provided in the input, so there is no evidence of active exploitation or available exploit code at time of analysis - the risk is driven by the vulnerability's inherent exploitability, not observed activity. CWE-89 SQLi with confirmed confidentiality impact is realistically exploitable once an account is obtained, so prioritize patching for internet-exposed or multi-tenant ERPNext instances; single-tenant, trusted-user deployments behind authentication boundaries carry lower urgency. No conflicting signals were detected: the CVSS vector and the description (authenticated remote attacker extracting data) are consistent. |
| Exploit ScenarioDerived | An attacker with any valid low-privileged ERPNext account (or one obtained via credential theft or open self-registration) sends a crafted request to one of the affected endpoints lacking input validation, injecting SQL that is concatenated into a backend query. The manipulated query returns data the account is not authorized to see - such as other tenants' records, financial data, or user credentials - enabling database exfiltration. No public exploit code was identified at time of analysis, and low attack complexity means a knowledgeable authenticated user could develop one readily. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
SQL injection in Frappe ERPNext (15.x before 15.113.0 and 16.x before 16.22.0) allows attackers with a valid ERPNext account to inject crafted parameters into database queries and read sensitive records from the underlying database. Exploitation requires an authenticated session over the network and no user interaction; the flaw yields high confidentiality impact with no integrity or availability impact. No public exploit code or confirmed in-the-wild activity has been identified at time of analysis, and the primary risk driver is the availability of low-privilege accounts - risk rises sharply where self-service or open registration is enabled or where the instance is internet-exposed.
RemediationAI
Apply the vendor patches: upgrade to ERPNext 15.113.0 (15.x line) or 16.22.0 (16.x line), following the guidance in the GitHub advisory https://github.com/frappe/erpnext/security/advisories/GHSA-gwfr-5r8f-rwg4. Because the prerequisite is a valid authenticated account, the highest-leverage compensating controls until patching are account-side: disable self-service/open signup and restrict account creation to trusted administrators (side effect: slower onboarding and more support overhead), and audit and de-provision stale or unnecessary low-privilege accounts. Reduce exposure by keeping the ERPNext web interface off the public internet behind a VPN or IP allow-list where operationally feasible (side effect: breaks remote/mobile access for legitimate staff), and if that is not possible, place a WAF rule set covering SQLi patterns in front of the application, recognizing that WAF coverage of unspecified endpoints is best-effort and will not fully close the gap. Finally, apply least privilege to the database user ERPNext connects with so that an exploited query cannot read tables outside the application schema, and enable database query and application access logging to detect anomalous read patterns; note that database-level privilege reduction may break features that legitimately query across schemas and should be tested in staging first. No public exploit code or active exploitation has been identified at time of analysis, so this is a scheduled-patching priority rather than an emergency, but the confidentiality-only impact means data loss from a successful attack may be silent.
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
The issue is a classic CWE-89 SQL injection: parameters supplied to certain ERPNext HTTP endpoints reach database query construction without adequate validation or parameterization, so attacker-controlled input is interpreted as SQL. ERPNext is a Python-based ERP built on the Frappe framework and typically backed by MariaDB/MySQL; Frappe provides an ORM and query builder, but endpoints that build raw or partially raw SQL bypass those safe patterns, and the hardening gap here is the absence of input validation on the affected endpoints. Both the CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N) and the independent CVSS 3.1 assessment (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N) agree on the same profile: network reachable, low privileges required, no user interaction, high confidentiality loss, and no integrity or availability impact - i.e. a read-oriented data-exfiltration primitive rather than a destructive or code-execution flaw. The CPE record cpe:2.3:a:frappe:erpnext:*:*:*:*:*:*:*:* is version-agnostic in this feed, so the authoritative version boundaries are those in the advisory: fixed in 15.113.0 and 16.22.0, with everything below those lines affected.
Know when Frappe 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:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Authenticated low-priv attacker (PR:L) over the network (AV:N) with no special conditions (AC:L); SQLi reads data so C:H, with no integrity or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Frappe ERPNext before 15.113.0 and 16.x before 16.22.0 contains an SQL injection vulnerability caused by missing input validation in some endpoints. Authenticated remote attackers can send specially crafted requests to these endpoints to manipulate database queries and extract sensitive information from the database.
Technical POC Analysis
Advisory snapshot used: GHSA-gwfr-5r8f-rwg4 ("Possibility of SQL injection due to missing validation", frappe/erpnext).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
A SQL injection flaw in Frappe ERPNext (15.x before 15.113.0 and 16.x before 16.22.0) lets anyone holding a valid ERPNext account read sensitive records from the database behind the ERP - the system of record for finance, customers, and employees. Because the exposure is gated only by account possession, every instance that permits self-service or open registration, or that exposes its login page to the internet, materially widens the population able to abuse it. Patch availability is not confirmed in the provided advisory, so the practical near-term risk reduction comes from shrinking the account population, reducing network exposure, and watching for anomalous database reads.
No vendor-released patch identified at time of analysis, though the advisory references fixed versions 15.113.0 (15.x) and 16.22.0 (16.x) - obtain and apply them if available. Interim mitigations: disable self-service and open registration along with guest/public signup paths, restrict internet exposure through VPN or IP allowlisting, reduce and least-privilege ERPNext user accounts, enforce multi-factor authentication, deploy WAF SQL injection rules on ERP endpoints, and monitor database query and ERP audit logs for anomalous bulk record reads.
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
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
Stored cross-site scripting leading to code execution in Frappe Framework 15.89.0 (and the ERPNext application built on
An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS
An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS
An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS
An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS
Authenticated SQL injection in Frappe ERPNext through 15.89.0 allows low-privilege users to extract arbitrary database c
SQL injection in Frappe ERPNext through 15.89.0 lets an authenticated attacker with a valid session and access to the Pa
Authenticated server-side template injection in Frappe ERPNext through 15.89.0 lets a user who can create or modify an A
An SQL injection vulnerability exists in the frappe.desk.reportview.get functionality of ERPNext 11.1.38. Rated high sev
Arbitrary file read in the Frappe full-stack web application framework allows remote unauthenticated attackers to retrie
SQL injection in Frappe HelpDesk 1.14.0 dashboard functionality allows authenticated attackers to execute arbitrary SQL
In Frappe ERPNext 15.57.5, the function get_rfq_containing_supplier() at erpnext/buying/doctype/request_for_quotation/re
EUVD-2026-98054
GHSA-pv62-434m-g9vq
NVD
CVE.org
EPSS
Exploit-DB