High severity · published Aug 30, 2023
CVE-2023-41039
Sandbox escape via various forms of "format" in RestrictedPython
7.7
CVSS
0.7%
EPSS
No
On KEV
Description
RestrictedPython is a restricted execution environment for Python to run untrusted code. Python's "format" functionality allows someone controlling the format string to "read" all objects accessible through recursive attribute lookup and subscription from objects he can access. This can lead to critical information disclosure. With `RestrictedPython`, the format functionality is available via the `format` and `format_map` methods of `str` (and `unicode`) (accessed either via the class or its instances) and via `string.Formatter`. All known versions of `RestrictedPython` are vulnerable. This issue has been addressed in commit `4134aedcff1` which has been included in the 5.4 and 6.2 releases. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
None
Availability
None
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.7% · higher than 52% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
RE
RestrictedPython · zopefoundation
< 5.4; >= 6.0, < 6.1 · source: vendor, NVD
Affected product
RE
RestrictedPython
zopefoundation
More from RestrictedPython
9.9
CVE-2023-37271
RestrictedPython vulnerable to arbitrary code execution via stack frame sandbox escape
8.4
CVE-2026-76825
RestrictedPython: Sandbox escape via string.Formatter field resolution
8.3
CVE-2026-55830
RestrictedPython guard hooks can be shadowed via positional-only arguments
7.9
CVE-2025-22153
try/except* clauses could allow bypass RestrictedPython via type confusion bug in the CPython interpreter
6.5
CVE-2024-47532
RestrictedPython information leakage via `AttributeError.obj` and the `string` module