An SSTI (Server-Side Template Injection) vulnerability exists in the get_terms_and_conditions method of Frappe ERPNext through 15.89.0. The function renders attacker-controlled Jinja2 templates (terms) using frappe.render_template() with a user-supplied context (doc). Although Frappe uses a custom SandboxedEnvironment, several dangerous globals such as frappe.db.sql are still available in the execution context via get_safe_globals(). An authenticated attacker with access to create or modify a Terms and Conditions document can inject arbitrary Jinja expressions into the terms field, resulting in server-side code execution within a restricted but still unsafe context. This vulnerability can be used to leak database information.
References
| Link | Resource |
|---|---|
| https://iamanc.github.io/post/erpnext-ssti-bug-3 | Exploit Third Party Advisory |
| https://www.notion.so/SSTI-bug-3-239e6086eadc8020aeecdaf123e32f3d?source=copy_link | Exploit Third Party Advisory |
Configurations
History
23 Dec 2025, 17:54
| Type | Values Removed | Values Added |
|---|---|---|
| First Time |
Frappe erpnext
Frappe |
|
| CWE | CWE-94 | |
| CPE | cpe:2.3:a:frappe:erpnext:*:*:*:*:*:*:*:* | |
| References | () https://iamanc.github.io/post/erpnext-ssti-bug-3 - Exploit, Third Party Advisory | |
| References | () https://www.notion.so/SSTI-bug-3-239e6086eadc8020aeecdaf123e32f3d?source=copy_link - Exploit, Third Party Advisory |
17 Dec 2025, 16:16
| Type | Values Removed | Values Added |
|---|---|---|
| CWE | CWE-1336 |
16 Dec 2025, 19:15
| Type | Values Removed | Values Added |
|---|---|---|
| CVSS |
v2 : v3 : |
v2 : unknown
v3 : 4.3 |
| CWE | CWE-918 |
15 Dec 2025, 18:15
| Type | Values Removed | Values Added |
|---|---|---|
| New CVE |
Information
Published : 2025-12-15 18:15
Updated : 2025-12-23 17:54
NVD link : CVE-2025-66436
Mitre link : CVE-2025-66436
CVE.ORG link : CVE-2025-66436
JSON object : View
Products Affected
frappe
- erpnext
