Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Lifecycle Timeline
2DescriptionGitHub Advisory
ERPNext is a free and open source Enterprise Resource Planning tool. Prior to 16.9.1, certain endpoints failed to enforce proper authorization checks, allowing users to modify data beyond their permitted role. This vulnerability is fixed in 16.9.1.
AnalysisAI
Privilege escalation in ERPNext versions prior to 16.9.1 allows authenticated low-privileged users to modify data outside their assigned role due to missing authorization checks on certain endpoints. The flaw carries a CVSS 9.9 score with scope change, but EPSS is only 0.04% and CISA SSVC reports no observed exploitation, indicating no public exploit identified at time of analysis. The vendor (Frappe) has released a patched version 16.9.1 alongside GHSA-cg5w-7g26-p3w9.
Technical ContextAI
ERPNext is the open-source ERP application built on the Frappe framework, used for finance, HR, manufacturing, and CRM workloads. The root cause class is CWE-862 (Missing Authorization), meaning specific server endpoints process privileged actions without re-checking that the authenticated user's role actually permits the requested operation. Because ERPNext relies on its DocType permission model to gate record-level reads and writes, an endpoint that bypasses this check effectively breaks the entire role-based access control surface for the affected actions. The CPE cpe:2.3:a:frappe:erpnext is confirmed by NVD as the affected product line.
RemediationAI
Upgrade to the vendor-released patch ERPNext 16.9.1 or later as described in https://github.com/frappe/erpnext/security/advisories/GHSA-cg5w-7g26-p3w9; this is the primary and only confirmed fix. If immediate upgrade is not possible, restrict who can obtain authenticated accounts on the instance by disabling self-service signup on the website/portal, removing unused low-privilege roles, and placing the ERPNext UI/API behind a VPN or SSO with conditional access - note these measures only reduce the attacker pool and do not close the underlying authorization gap. Audit recent changes to sensitive DocTypes (especially financial, user, and permission records) for unexpected modifications by low-privilege accounts before and after patching.
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
An SQL injection vulnerability exists in the frappe.desk.reportview.get functionality of ERPNext 11.1.38. Rated high sev
In Frappe ERPNext 15.57.5, the function get_rfq_containing_supplier() at erpnext/buying/doctype/request_for_quotation/re
In Frappe ERPNext 15.57.5, the function get_stock_balance_for() at erpnext/stock/doctype/stock_reconciliation/stock_reco
In Frappe ERPNext 15.57.5, the function get_blanket_orders() at erpnext/controllers/queries.py is vulnerable to SQL Inje
In Frappe ERPNext 15.57.5, the function get_material_requests_based_on_supplier() at erpnext/stock/doctype/material_requ
A Cross-Site Request Forgery (CSRF) vulnerability was discovered in ERPNEXT 14.82.1 and 14.74.3. Rated high severity (CV
In Frappe ERPNext v15.57.5, the function get_stock_balance() at erpnext/stock/utils.py is vulnerable to SQL Injection, w
Same weakness CWE-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-30195