Skip to main content

ERPNext EUVDEUVD-2026-27402

| CVE-2026-38431 CRITICAL
Code Injection (CWE-94)
2026-05-05 mitre GHSA-qwh3-h35h-9j9f
9.8
CVSS 3.1 · Vendor: mitre
Share

Severity by source

Vendor (mitre) PRIMARY
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from Vendor (mitre) · only source for this CVE.

CVSS VectorVendor: mitre

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

Lifecycle Timeline

2
Analysis Generated
May 06, 2026 - 18:30 vuln.today
CVSS changed
May 06, 2026 - 16:22 NVD
9.8 (CRITICAL)

DescriptionCVE.org

ERPNext v15.103.1 and before is vulnerable to Server-Side Template Injection (SSTI). An attacker with permission to create or edit email templates can inject template expressions that are executed on the server when the template is rendered.

AnalysisAI

Server-Side Template Injection in ERPNext v15.103.1 and earlier allows remote code execution through malicious email templates. Attackers with email template editing permissions can inject Jinja2 expressions that execute arbitrary Python code on the server when templates are rendered. SSVC framework confirms POC availability and automatable exploitation with total technical impact. CVSS 9.8 reflects network-reachable critical severity, though the 0.02% EPSS score (5th percentile) suggests limited real-world exploitation attempts to date, likely due to the permission prerequisite.

Technical ContextAI

ERPNext is an open-source ERP system built on the Frappe framework, which uses Jinja2 templating for email generation and other dynamic content rendering. This vulnerability stems from CWE-94 (Improper Control of Generation of Code), specifically server-side template injection where user-controlled input is passed unsanitized to the Jinja2 template engine. When ERPNext renders email templates containing attacker-controlled expressions like {{7*7}} or more malicious payloads accessing Python's built-in functions, the server evaluates these as code rather than data. The Frappe framework's template rendering mechanism fails to properly sandbox or validate template content, allowing privileged users to escalate from template editing to arbitrary code execution. This is a classic SSTI vulnerability pattern affecting many Python web frameworks that expose template engines without sufficient input validation or sandboxing.

RemediationAI

Upgrade ERPNext to version 15.103.2 or later once a patched release is available from Frappe Technologies (check https://github.com/frappe/erpnext/releases and https://github.com/frappe/frappe/releases for updates). No vendor-released patch version is independently confirmed from available data at time of analysis. Until patches are available, implement compensating controls: restrict email template creation and editing permissions to only highly trusted administrators through ERPNext's role-based access control system (System Settings > Role Permissions Manager), removing Template Editor and Email Template write permissions from standard user roles. Enable audit logging for all template modifications to detect potential abuse. Review existing email templates for suspicious Jinja2 expressions containing double curly braces {{}} that reference system functions, subprocess modules, or file operations. Consider deploying ERPNext in containerized environments with restricted system call capabilities (seccomp profiles) and read-only filesystem mounts where feasible to limit post-exploitation impact. Note that permission restrictions reduce usability for legitimate template customization workflows and should be balanced against operational requirements.

More in N A

View all
CVE-2024-51092 CRITICAL POC
9.1 May 08

LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr

CVE-2025-15684 MEDIUM POC
5.5 Aug 12

Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han

CVE-2024-45257 HIGH POC
7.3 May 08

A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi

CVE-2025-15687 LOW POC
2.1 Aug 12

Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc

CVE-2025-15686 LOW POC
2.1 Aug 12

Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula

CVE-2025-67888 HIGH POC
7.3 May 08

Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root

CVE-2024-53326 HIGH POC
7.3 May 08

LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(

CVE-2026-38360 CRITICAL POC
9.8 May 08

Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti

CVE-2026-30623 CRITICAL POC
9.8 Jul 15

Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr

CVE-2026-67917 CRITICAL POC
9.8 Aug 17

SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg

CVE-2026-75337 CRITICAL POC
9.8 Aug 27

Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ

CVE-2026-31072 CRITICAL POC
9.8 May 19

Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali

Share

EUVD-2026-27402 vulnerability details – vuln.today

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