Description
ERPNext is a free and open source Enterprise Resource Planning tool. Prior to 15.118.0 and 16.29.0, the validate_template and render_template calls in erpnext/accounts/doctype/process_statement_of_accounts/process_statement_of_accounts.py render subject, body, and pdf_name fields with unrestricted globals including frappe.utils, allowing an authenticated user with a common operational role to inject template expressions, execute arbitrary server-side code, and read data across the application. This issue is fixed in versions 15.118.0 and 16.29.0.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
frappe erpnext
< 15.118.0affected>= 16.0.0, < 16.29.0affected
References
- https://github.com/frappe/erpnext/security/advisories/GHSA-qq49-v74j-hjh7 ↗
- https://github.com/frappe/erpnext/pull/56458 ↗
- https://github.com/frappe/erpnext/commit/5f6952b15c1f6ee893770d5bc618558a6ba41a28 ↗
- https://github.com/frappe/erpnext/commit/88443e4a97c6c0a40d85a9e6785577191296ee39 ↗
- https://github.com/frappe/erpnext/commit/ecb6d48ec025e0c94abac35b2e4f7607f4c86465 ↗
- https://github.com/frappe/erpnext/releases/tag/v15.118.0 ↗
- https://github.com/frappe/erpnext/releases/tag/v16.29.0 ↗