Twig has unguarded calls to `__isset()` and to array-accesses when the sandbox is enabled
Package
Affected versions
< 3.11.2
>= 3.12, < 3.14.1
Patched versions
3.11.2
3.14.1
Description
Published to the GitHub Advisory Database
Nov 6, 2024
Reviewed
Nov 6, 2024
Published by the National Vulnerability Database
Nov 6, 2024
Last updated
Nov 12, 2024
Description
In a sandbox, and attacker can access attributes of Array-like objects as they were not checked by the security policy.
They are now checked via the property policy and the
__isset()
method is now called after the security check.This is a BC break.
Resolution
The sandbox mode now ensures access to array-like's properties is allowed.
The patch for this issue is available here for the 3.11.x branch, and here for the 3.x branch.
Credits
We would like to thank Jamie Schouten for reporting the issue and Nicolas Grekas for providing the fix.
References