GHSA-6j75-5wfj-gh66
Twig has a possible sandbox bypass
Packages
Details
As written in the advisory (Markdown source, shown as plain text).
### 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.
References
External links from the advisory. They lead to third-party sites.
- https://github.com/twigphp/Twig/security/advisories/GHSA-6j75-5wfj-gh66
- https://nvd.nist.gov/vuln/detail/CVE-2024-45411
- https://github.com/twigphp/Twig/commit/11f68e2aeb526bfaf638e30d4420d8a710f3f7c6
- https://github.com/twigphp/Twig/commit/2102dd135986db79192d26fb5f5817a566e0a7de
- https://github.com/twigphp/Twig/commit/41103dcdc2daab4c83cdd05b5b4fde5b7e41e635
- https://github.com/twigphp/Twig/commit/7afa198603de49d147e90d18062e7b9addcf5233
- https://github.com/FriendsOfPHP/security-advisories/blob/master/twig/twig/CVE-2024-45411.yaml
- https://github.com/twigphp/Twig
- https://symfony.com/blog/twig-security-release-possible-sandbox-bypass