Skip to main content

Frappe ERPNext EUVDEUVD-2026-98043

| CVE-2026-109652 HIGH
Improper Neutralization of Special Elements Used in a Template Engine (CWE-1336)
2026-10-12 VulnCheck GHSA-cw68-6fr5-c994
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate with common operational role
  2. Delivery
    Inject template expression in message field
  3. Exploit
    Trigger SSTI during server-side render
  4. Execution
    Execute expressions in unrestricted context
  5. Impact
    Read/write database and send mail from server

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V1 - Encoding and Sanitization Template injection prevention
Exploitation Conditions

Requires an authenticated session as a user holding a 'common operational role' (PR:L) - not administrative access - which is a low bar because such roles are routinely assigned to ordinary ERPNext business users. The specific attack surface is user-controlled message fields that are passed to template rendering without validation, so exploitation works against default rendering behavior of unpatched versions (ERPNext before 15.119.1 and 16.x before 16.32.0); no special non-default configuration is named as required. Limiting factors: the attacker must first obtain valid credentials with the operational role, and the primary mitigation is upgrading to a fixed version (15.119.1 / 16.32.0 or later).

Impact

This is a credible, actionable priority rather than an inflated high-CVSS score. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) describes network-reachable, low-complexity exploitation requiring only low privileges - and the description confirms those privileges are a 'common operational role,' meaning the authentication barrier is weak in practice since such roles are routinely granted to ordinary business users. The VC:H/VI:H/VA:H impact triad is consistent with the described capability to read and write arbitrary database data, delete documents, send outbound requests, and send mail, which is near-total compromise of the application's data and trust boundary. No EPSS score, CISA KEV listing, or public POC is present in the provided data, so there is no evidence of active exploitation or mass-scanning pressure at this time; the risk is driven by the intrinsic ease and impact of the flaw, not by observed in-the-wild activity. Signals are internally consistent (no CVSS-versus-description conflict), with the main caveat being that only a CVSS 4.0 vector was supplied - no CVSS 3.1 vector - and no EPSS/KEV/POC telemetry exists to gauge real-world exploitation likelihood.

Exploit ScenarioDerived

An attacker who holds an ordinary ERPNext operational role logs in and places a malicious template expression (e.g. a Jinja payload) into a user-controlled message field that is later rendered without validation. When the server renders the field in its unrestricted context, the expression executes server-side, letting the attacker query or modify the database, delete documents, send mail from the site, or make the server issue outbound requests. No public exploit code is identified in the provided data, but the SSTI pattern (CWE-1336) is well understood and straightforward to weaponize.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 12, 2026

Authenticated attackers with a common operational role can exploit a server-side template injection in Frappe ERPNext before 15.119.1 and 16.x before 16.32.0 to read and write arbitrary database data, delete documents, send outbound requests from the server, and send mail from the site. The vulnerability arises because user-controlled message fields are not validated before template rendering, allowing expressions to execute in an unrestricted context (CWE-1336). With a CVSS 4.0 score of 8.7, no public exploit has been identified at time of analysis, but the low privilege requirement makes this a credible priority for organizations running unpatched versions.

RemediationAI

Upgrade to Frappe ERPNext version 15.119.1 or 16.32.0 (or later) to address the server-side template injection vulnerability. These versions are the vendor-released patches that fix the issue by properly validating user-controlled message fields before template rendering. For detailed guidance, refer to the vendor security advisory at https://github.com/frappe/erpnext/security/advisories/GHSA-6w83-8777-v93q. If immediate upgrading is not possible, as a compensating control, restrict the ability to submit messages to trusted users only, though this may impact business operations; more effective temporary mitigation would be to disable or heavily restrict template rendering of user-supplied message fields, but this requires custom code changes and is not a standard configuration option. Given the low privilege requirement (authenticated user with a common operational role), prioritize patching on internet-facing or multi-user instances.

Affected VersionsENISA

ERPNext 16.0.0-beta.1 <16.32.0
ERPNext 0 <15.119.1

Affected Packages

euvd erpnext fix: 15.119.1, 16.32.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

The vulnerability is a server-side template injection (SSTI) in Frappe ERPNext, classified as CWE-1336 (Improper Neutralization of Special Elements Used in a Template Engine). ERPNext uses template engines to render dynamic content, and message fields that accept user input are passed directly to the template renderer without proper sanitization or validation. This allows an attacker to inject template expressions that are evaluated in an unrestricted context, granting access to underlying server-side objects and methods. According to the CPE cpe:2.3:a:frappe:erpnext:*:*:*:*:*:*:*:*, the affected component is the ERPNext application itself, and the lack of validation on message fields means any authenticated user with a role that can submit messages could potentially exploit this. The CVSS 4.0 vector CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N indicates network exploitable, low attack complexity, no user interaction, and low privileges required (PR:L), confirming that an authenticated attacker with basic operational privileges can achieve high confidentiality, integrity, and availability impact on the vulnerable system.

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

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

Network-reachable render path (AV:N), no special conditions (AC:L), low-privileged operational role required (PR:L), no user interaction (UI:N); SSTI yields full data read/write and deletion so C/I/A all High.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 13, 2026 - 02:16 EUVD
CVE Published
Oct 12, 2026 - 22:22 cve.org
HIGH 8.7

DescriptionCVE.org

Frappe ERPNext before 15.119.1 and 16.x before 16.32.0 contains a server-side template injection vulnerability because user-controlled message fields are not validated before template rendering, allowing expressions to run in an unrestricted context. Authenticated attackers holding a common operational role can inject template expressions to read and write arbitrary database data, delete documents, send outbound requests from the server, and send mail from the site.

Technical POC Analysis

Evidence base: GitHub advisory GHSA-6w83-8777-v93q only.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Frappe ERPNext, the open-source ERP platform that typically holds an organization's finance, HR, and customer records, carries a high-severity server-side template injection flaw (CVE-2026-109652, CVSS 8.7) that allows a user with a routine operational role to read and modify database records, delete documents, and send mail or outbound requests from the server. Because the abuse path requires only an ordinary business account rather than administrative rights, the set of insiders or compromised credentials able to trigger data-integrity, data-loss, and outbound-communication damage is broad, and no public exploit has been identified at time of analysis. Exposure is concentrated in organizations running ERPNext 15.x before 15.119.1 or 16.x before 16.32.0, where leadership should treat the gap as a data-integrity and trust risk rather than a routine application update.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; the advisory references fixed versions 15.119.1 and 16.32.0, which should be confirmed with the vendor before scheduling. Interim mitigations: enforce least privilege on operational roles and strip message-posting/notification rights from accounts that do not require them; sanitize or block user-controlled message fields before template rendering; restrict outbound SMTP and HTTP egress from ERPNext hosts to explicit allow-lists; segment the ERPNext UI/API behind VPN or network restrictions; enable verbose application and database logging with alerts on template expression syntax and on bulk document deletions or unexpected outbound mail; increase backup frequency and validate restore procedures.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Medium
popular open-source ERP, common in SMBs but not ubiquitous infrastructure
Data Quality
5 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 HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
High

Priority Score

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

Attack Technique

Code Injection CRITICAL

Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.

More in Frappe

View all
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-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-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-2026-39352 HIGH POC
8.7 May 20

Arbitrary file read in the Frappe full-stack web application framework allows remote unauthenticated attackers to retrie

CVE-2025-10655 HIGH POC
8.6 Dec 09

SQL injection in Frappe HelpDesk 1.14.0 dashboard functionality allows authenticated attackers to execute arbitrary SQL

CVE-2025-52042 HIGH POC
8.2 Oct 01

In Frappe ERPNext 15.57.5, the function get_rfq_containing_supplier() at erpnext/buying/doctype/request_for_quotation/re

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