Skip to main content

ERPNext EUVDEUVD-2026-103171

| CVE-2026-108373 MEDIUM
Missing Authorization (CWE-862)
2026-10-16 GitHub_M
6.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as role-limited ERPNext user
  2. Exploit
    Request Sales Person-wise Transaction Summary report
  3. Execution
    Query omits permission match conditions
  4. Impact
    Read financial data beyond authorized role

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

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

Exploitation Conditions

Requires a valid, authenticated ERPNext account with a restricted ('role-limited') role that has permission to run the Sales Person-wise Transaction Summary report under the Selling module; exploitation is simply invoking that report, whose server-side query failed to append the requesting user's document-permission match conditions before reading Sales Order/invoice, Sales Team, and item financial rows. Limiting factors: only instances running versions prior to 15.118.0 (v15 branch) or 16.27.0 (v16 branch) are affected; the attacker must already be authenticated (no anonymous/unauthenticated path), and impact is limited to reading financial data - there is no write, modification, or denial-of-service capability.

Impact

This is a medium-severity broken-access-control flaw (CWE-862, Missing Authorization) with a self-consistent set of signals. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N = 6.5) matches the description precisely: network-reachable, low-complexity, requires an authenticated but low-privileged ('role-limited') account, no user interaction, and yields high confidentiality impact with no integrity or availability effect - consistent with an information-disclosure bug that leaks financial rows the user should not see. No EPSS score, no CISA KEV listing, and no public proof-of-concept were provided in the input; the GitHub links are the vendor security advisory (GHSA-rgrq-243c-c4g6), the two remediation commits, and the fixed-version release tags - i.e., patch intelligence, NOT exploit code. Exploitation status is therefore 'no public exploit identified at time of analysis.' The realistic risk is moderate and context-dependent rather than an emergency: exploitation requires a valid authenticated ERPNext account that already has some access to the Sales Person-wise Transaction Summary report, which bounds the attacker population to insiders and compromised accounts, and the impact is confined to unauthorized reading of financial transaction data (no write or destructive capability). The one metadata inconsistency to note: the input tags this as 'Authentication Bypass,' but the description and CWE-862 make clear this is an authorization (permission-enforcement) failure for an already-authenticated user, not an authentication bypass - the distinction materially changes who can exploit it.

Exploit ScenarioDerived

A legitimate ERPNext user with a restricted role (e.g., a single-territory sales person who should only see their own figures) opens the Sales Person-wise Transaction Summary report, and because the report query omits the user's document-permission match conditions, the server returns financial transaction rows for customers, territories, and sales people outside their authorized scope. No special payload or user interaction is needed beyond requesting the report. No public exploit code was identified in the provided intelligence; the only published code is the vendor's remediation commits.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

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

Alert me

AnalysisAIv1 – Oct 16, 2026

ERPNext instances prior to 15.118.0 (v15 branch) and 16.27.0 (v16 branch) expose financial data through the Sales Person-wise Transaction Summary report because the report's server-side query omits the requesting user's document-permission match conditions. An authenticated attacker holding only a limited role that can run this report can read Sales Order/Sales Invoice, Sales Team, and item-level financial rows for records the role should never see, resulting in a high-confidentiality, read-only disclosure (CVSS 6.5, AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N; CWE-862 Missing Authorization). No public exploit code has been identified at time of analysis, and the flaw is not listed in CISA KEV, so risk is driven by the low exploitation complexity for any logged-in low-privilege user rather than by observed attacks.

RemediationAI

Upgrade to the vendor-released patch versions: ERPNext 15.118.0 on the v15 branch or 16.27.0 on the v16 branch (release links and advisory at https://github.com/frappe/erpnext/security/advisories/GHSA-rgrq-243c-c4g6, https://github.com/frappe/erpnext/releases/tag/v15.118.0, https://github.com/frappe/erpnext/releases/tag/v16.27.0); the fix commits 202f52271ca2f689c2836fc27ca30c9cd507958e and 24f0989ac1f6d3054643d6377e8c126ee8ca0cf7 can be cherry-picked onto custom builds. If upgrading immediately is not possible, apply compensating controls with explicit trade-offs: in Role Permission Manager remove or restrict the Sales Person-wise Transaction Summary report from any low-privilege, role-limited role (this eliminates the disclosure path but also removes the report for legitimate users in that role); tighten document-level read permissions on Sales Order, Sales Invoice, and Sales Team so users only see their own/allowed records between the report layer and the database (this reduces exposure from any similar missed-authorization report but may break legitimate cross-team reporting); and monitor ERPNext access and error logs for repeated invocations of that report endpoint by accounts that would not normally run financial reports, since exploitation is a single authenticated request with no write side effects and would otherwise go unnoticed. Note there is no patch-free configuration that fully restores per-user row filtering inside this report, so upgrading remains the definitive fix.

Affected VersionsENISA

ERPNext 16.0.0, < 16.27.0
ERPNext < 15.118.0

Affected Packages

euvd erpnext fix: 15.118.0, 16.27.0

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

ERPNext is a Frappe-framework-based open source ERP whose reports are Python server scripts that query MariaDB/MySQL through frappe.db.sql or the frappe query builder. The underlying issue is CWE-862 (Missing Authorization): the pre-fix implementation of erpnext/selling/report/sales_person_wise_transaction_summary/sales_person_wise_transaction_summary.py built its WHERE clause only from user-supplied report filters (doc_type, sales_person, item_group/brand, date ranges) and never appended the caller's document-level permission filters. Frappe normally derives these filters via build_match_conditions()/frappe.get_query() so that role and user permissions (permission_query_conditions and role permission entries) are enforced at the SQL layer; because the raw SQL path bypassed that machinery, the report returned rows for documents the requesting user was not permitted to read. The fix replaces the hand-written SQL with frappe.get_query(dt, filters=doc_filters) and explicitly appends build_match_conditions(doc_type) via a LiteralValue criterion, restoring per-user row-level authorization on the Sales Order/Sales Invoice query while preserving the Sales Team join and the Closed-status quantity/amount CASE logic. CPE data (cpe:2.3:a:frappe:erpnext:*:*:*:*:*:*:*:*) confirms the affected component is ERPNext itself across both maintained version lines.

Know when Erpnext 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 (GitHub_M) PRIMARY 6.5 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 6.5 MEDIUM

Network-accessible report endpoint (AV:N) exploitable by an authenticated low-privileged role (PR:L) with no interaction, leaking out-of-scope financial data (C:H) with no integrity or availability impact.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

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

Lifecycle Timeline

1
Patch available
Oct 16, 2026 - 22:03 EUVD

DescriptionCVE.org

ERPNext is a free and open source Enterprise Resource Planning tool. Prior to 15.118.0 and 16.27.0, certain endpoints in the Sales Person-wise Transaction Summary report fail to enforce proper authorization checks. When a role-limited authenticated user requests the affected financial report, the query can query financial transaction rows without applying the requesting user's document permission match conditions. This allows the user to read financial data beyond the user's permitted role. This issue is fixed in versions 15.118.0 and 16.27.0.

Threat Intelligence Overview

Prevalence
Medium
popular open-source ERP, widely self-hosted but not in every environment
Social Media
1
Sightings
Data Quality
3 sources
Confidence: Low

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 N/A
Patch available Yes
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

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
CVE-2025-67289 CRITICAL POC
9.6 Dec 22

Stored cross-site scripting leading to code execution in Frappe Framework 15.89.0 (and the ERPNext application built on

CVE-2018-3885 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2018-3884 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2018-3883 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2018-3882 HIGH POC
8.8 Sep 12

An exploitable SQL injection vulnerability exists in the authenticated part of ERPNext v10.1.6. Rated high severity (CVS

CVE-2025-66440 HIGH POC
8.8 Dec 15

Authenticated SQL injection in Frappe ERPNext through 15.89.0 allows low-privilege users to extract arbitrary database c

CVE-2025-66439 HIGH POC
8.8 Dec 15

SQL injection in Frappe ERPNext through 15.89.0 lets an authenticated attacker with a valid session and access to the Pa

CVE-2025-66438 HIGH POC
8.8 Dec 15

Authenticated attackers with permission to create or modify Print Format documents in Frappe ERPNext through 15.89.0 can

CVE-2025-66437 HIGH POC
8.8 Dec 15

Authenticated server-side template injection in Frappe ERPNext through 15.89.0 lets a user who can create or modify an A

CVE-2025-66434 HIGH POC
8.8 Dec 15

Authenticated server-side template injection in Frappe ERPNext through 15.89.0 allows users with privileges to configure

CVE-2020-6145 HIGH POC
8.8 Aug 10

An SQL injection vulnerability exists in the frappe.desk.reportview.get functionality of ERPNext 11.1.38. Rated high sev

CVE-2023-54345 HIGH POC
8.7 May 05

Frappe Framework ERPNext 13.4.0 contains a sandbox escape vulnerability in RestrictedPython that allows authenticated us

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