Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with low-privileged ERPNext account
-
ExploitSend crafted request to vulnerable endpoint
-
ExecutionInject SQL via missing input validation
-
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 | Exploitation requires an authenticated ERPNext session with at least low-level privileges (PR:L) - the attacker must already possess or obtain valid application credentials. The flaw lies in specific endpoints that perform missing input validation, allowing SQL injection into database queries; it affects ERPNext versions before 15.106.0 and 16.x before 16.16.0. Limiting factors: valid authentication is mandatory (ruling out anonymous internet scanning), and impact is confined to confidentiality (data extraction) with no inherent write/integrity or availability effect. Realistic risk is highest for internet-exposed instances that provision self-service or broad low-privilege user accounts; instances restricted to a small set of trusted internal users face lower exposure. |
| Impact | This is a genuine but moderate-priority issue rather than a top-tier emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N) tells a consistent story: network-reachable, low attack complexity, no user interaction, but requiring low-level authenticated privileges (PR:L) and causing confidentiality impact only (VC:H) with no integrity or availability damage. That aligns with the description - an authenticated SQL injection enabling extraction of sensitive data. The 7.1 score is driven by the high confidentiality impact, not by unauthenticated access. No EPSS score, CISA KEV listing, or POC reference was provided in the input, so exploitation likelihood signals are absent: there is no public exploit identified at time of analysis and no evidence of active exploitation. The requirement for valid authentication (PR:L) meaningfully limits widespread opportunistic exploitation, though any legitimate low-privileged ERPNext user - or an attacker who has phished/compromised one such account - could leverage it. Net: a real vulnerability worth patching promptly for internet-exposed ERPNext instances, but not a drop-everything KEV-grade threat based on the signals supplied. Note the absence of EPSS/KEV/POC is a data gap, not evidence of low risk. |
| Exploit ScenarioDerived | An attacker with a valid low-privileged ERPNext account (e.g., a standard user, or a compromised employee credential) sends a specially crafted request to one of the affected endpoints that lacks input validation, injecting SQL into a backend query. Because low attack complexity applies and no user interaction is needed, the attacker can iteratively extract sensitive records - customer data, financial entries, or credential hashes - directly from the underlying database. No public exploit code was identified in the provided intelligence. |
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 before 15.106.0 and 16.x before 16.16.0 allows an authenticated attacker holding at least low-level application credentials to inject SQL into database queries through specific endpoints that fail to validate input, resulting in extraction of sensitive data from the underlying database. The vulnerability is confidentiality-only (CVSS:4.0 7.1 / assessed CVSS:3.1 7.1, C:H with I:N and A:N) - there is no integrity or availability impact, and exploitation is not possible anonymously, so broad internet scanning is ruled out. No public exploit code was identified at time of analysis and the issue is not confirmed actively exploited (CISA KEV); risk is highest for internet-exposed instances that provision self-service or broadly distributed low-privilege accounts.
RemediationAI
Upgrade to a vendor-released patch: ERPNext 15.106.0 or later on the 15.x branch, and 16.16.0 or later on the 16.x branch; these are the exact fix versions documented in GitHub Security Advisory GHSA-q85h-wj57-hq2h, with corroborating detail in the VulnCheck advisory (https://www.vulncheck.com/advisories/frappe-erpnext-before-15.106.0-sql-injection-via-missing-input-validation). Where immediate upgrade is not feasible, compensating controls are warranted because the flaw requires only authenticated (PR:L) access: audit and shrink the low-privilege account surface - disable or tightly approve self-service signups, portal access, and guest-style roles so that untrusted parties cannot obtain the credentials the exploit needs - accepting the business trade-off of reduced self-service onboarding; restrict network exposure of ERPNext (VPN or IP allowlisting for the web tier) at the cost of accessibility for distributed or mobile users; and deploy WAF/IDS rules targeting SQL metacharacters and error signatures on the affected endpoints, recognizing that signature-based filtering is bypassable and should be treated as a stopgap. Monitor database and application logs for unusual SQL errors, UNION patterns, or anomalous large SELECT result volumes from low-privileged sessions, and rotate credentials or audit data exposure for any account suspected of prior abuse.
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 root cause is CWE-89 (Improper Neutralization of Special Elements used in an SQL Command), the classic SQL injection class, arising where ERPNext endpoints pass user-controlled parameters into database queries without proper validation or parameterization. ERPNext is the flagship application of the Frappe framework, a Python/JavaScript metadata-driven stack whose DocType layer normally abstracts database access via the ORM, but which also permits raw SQL through helpers such as frappe.db.sql. When a handler concatenates or interpolates request input into such a raw query instead of using bind parameters or the framework's query builder, an attacker can alter the query's structure - for example through UNION or boolean/error-based inference - to read records outside the intended result set. The affected CPE identifier is cpe:2.3:a:frappe:erpnext, covering all builds prior to the fixed 15.106.0 release and the 16.x line prior to 16.16.0. Because the injection is reachable only after authentication (the CVSS 4.0 vector specifies PR:L), the vulnerability is best characterized as a privilege-escalation-of-data-access flaw: a low-privileged tenant, portal, or self-service user can potentially read information their role should not expose.
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
Network-reachable authenticated SQLi (PR:L) with low complexity and no UI; impact is data extraction only, so C:H with I:N/A:N and unchanged scope.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Frappe ERPNext before 15.106.0 and 16.x before 16.16.0 contains an SQL injection vulnerability in some endpoints due to missing input validation. Authenticated attackers can send specially crafted requests to inject SQL into database queries and extract sensitive information from the underlying database.
Technical POC Analysis
Evidence note: the only supplied artefact is GitHub advisory GHSA-q85h-wj57-hq2h.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Frappe ERPNext, the ERP platform underpinning core finance, HR, and customer operations, carries a high-severity SQL injection flaw (CVE-2026-109648) that permits a user holding only low-level application credentials to extract sensitive data from the underlying database. Because the defect is reachable by any authenticated account, organizations that broadly distribute self-service or low-privilege ERP access - particularly those with internet-exposed instances - face the greatest exposure. While there is no integrity or availability impact and no public exploit code identified at time of analysis, unauthorized disclosure of ERP-resident business and personal data carries regulatory notification, contractual, and reputational consequences that warrant leadership attention.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict network exposure of ERPNext endpoints and place them behind VPN or allow-listed access; enforce least privilege by limiting and auditing the issuance of low-privilege and self-service accounts; grant the ERPNext database service account only the minimum privileges required; deploy WAF or database-layer input-validation rules to block SQL injection patterns on affected endpoints; enable database query logging and alert on anomalous extraction activity; monitor outbound data flows from ERPNext hosts for signs of bulk data exfiltration.
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-98039
GHSA-vfcx-pfmr-f4vw
NVD
CVE.org
EPSS
Exploit-DB