NetSight
high8.8

CVE-2025-27516

Jinja2 vulnerable to sandbox breakout through attr filter selecting format method

Impact

An oversight in how the Jinja sandboxed environment interacts with the `|attr` filter allows an attacker that controls the content of a template to execute arbitrary Python code. To exploit the vulnerability, an attacker needs to control the content of a template. Whether that is the case depends on the type of application using Jinja. This vulnerability impacts users of applications which execute untrusted templates. Jinja's sandbox does catch calls to `str.format` and ensures they don't escape the sandbox. However, it's possible to use the `|attr` filter to get a reference to a string's plain format method, bypassing the sandbox. After the fix, the `|attr` filter no longer bypasses the environment's attribute lookup.

Affected packages

EcosystemPackageAffectedFixed in
pipJinja2<= 3.1.53.1.6

Affected products

VendorProductAffected versions
PalletsprojectsJinja
before 3.1.6
DebianDebian Linux
Version 11.0

Weakness classification

References