GHSA-q2x7-8rv6-6q7h

Jinja has a sandbox breakout through indirect reference to format method

En bref

Publiée
Mise à jour
CVE
CVE-2024-56326
Alias
PYSEC-2026-1475
CVSS_V3
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS_V4
CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Description

An oversight in how the Jinja sandboxed environment detects calls to `str.format` 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 store a reference to a malicious string's `format` method, then pass that to a filter that calls it. No such filters are built-in to Jinja, but could be present through custom filters in an application. After the fix, such indirect calls are also handled by the sandbox.

Paquets affectés

PaquetVersions
PyPI · jinja2introduced 0, fixed 3.1.5

Références

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database