GHSA-6j75-5wfj-gh66

Twig has a possible sandbox bypass

At a glance

Published
Updated
CVE
CVE-2024-45411
CVSS_V3
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
CVSS_V4
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H

Description

### Description Under some circumstances, the sandbox security checks are not run which allows user-contributed templates to bypass the sandbox restrictions. The security issue happens when all these conditions are met: * The sandbox is disabled globally; * The sandbox is enabled via a sandboxed `include()` function which references a template name (like `included.twig`) and not a `Template` or `TemplateWrapper` instance; * The included template has been loaded before the `include()` call but in a non-sandbox context (possible as the sandbox has been globally disabled). ### Resolution The patch ensures that the sandbox security checks are always run at runtime. ### Credits We would like to thank Fabien Potencier for reporting and fixing the issue.

Affected packages

PackageVersions
Packagist · twig/twigintroduced 1.0.0, fixed 1.44.8
Packagist · twig/twigintroduced 2.0.0, fixed 2.16.1
Packagist · twig/twigintroduced 3.12.0, fixed 3.14.0
Packagist · twig/twigintroduced 3.0.0, fixed 3.11.1

References

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database