CVE-2024-45411
Twig has a possible sandbox bypass
Impact
### 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
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| composer | twig/twig | >= 1.0.0, < 1.44.8 | 1.44.8 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Symfony | Twig | from 1.0.0 before 1.44.8 from 2.0.0 before 2.16.1 from 3.0.0 before 3.14.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/twigphp/Twig/commit/11f68e2aeb526bfaf638e30d4420d8a710f3f7c6
- https://github.com/twigphp/Twig/commit/2102dd135986db79192d26fb5f5817a566e0a7de
- https://github.com/twigphp/Twig/commit/7afa198603de49d147e90d18062e7b9addcf5233
- https://github.com/twigphp/Twig/security/advisories/GHSA-6j75-5wfj-gh66
- https://lists.debian.org/debian-lts-announce/2024/09/msg00031.html
- https://github.com/advisories/GHSA-6j75-5wfj-gh66
- https://nvd.nist.gov/vuln/detail/CVE-2024-45411
- https://github.com/twigphp/Twig/commit/41103dcdc2daab4c83cdd05b5b4fde5b7e41e635
- https://github.com/FriendsOfPHP/security-advisories/blob/master/twig/twig/CVE-2024-45411.yaml
- https://symfony.com/blog/twig-security-release-possible-sandbox-bypass