Frappe Framework ERPNext 13.4.0 contains a sandbox escape vulnerability in RestrictedPython that allows authenticated users with System Manager role to execute arbitrary code by exploiting frame introspection. Attackers can create a server script via the /app/server-script endpoint and access the gi_frame attribute to traverse the call stack and invoke os.popen to execute system commands.
https://ur4ndom.dev/posts/2023-07-02-uiuctf-rattler-read/
https://github.com/frappe/frappe/blob/v13.4.0/frappe/utils/safe_exec.py#L42
https://github.com/frappe/frappe/
https://gist.github.com/lebr0nli/c2fc617390451f0e5a4c31c87d8720b6
https://frappeframework.com/docs/v13/user/en/desk/scripting/server-script
Published: 2026-05-05
Updated: 2026-05-05
Base Score: 9
Vector: CVSS2#AV:N/AC:L/Au:S/C:C/I:C/A:C
Severity: High
Base Score: 8.8
Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Severity: High
Base Score: 8.7
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
Severity: High
EPSS: 0.00096