GitHub Advisoryadvisory · Packagist
GHSA-6377-hfv9-hqf6 Twig has unguarded calls to `__toString()` when nesting an object into an array
LOW
Official page ↗
- Aliases
- CVE-2024-51754
- Ecosystem
- Packagist
- Packages
- twig/twig
- Severity
- Low
- CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N
- Weaknesses
- CWE-668
- Reviewed
- 2024-11-06
Affected packages
• Packagist twig/twig: < 3.11.2 → fixed in 3.11.2
• Packagist twig/twig: >= 3.12, < 3.14.1 → fixed in 3.14.1
Description
Description
In a sandbox, an attacker can call `__toString()` on an object even if the `__toString()` method is not allowed by the security policy when the object is part of an array or an argument list (arguments to a function or a filter for instance).
Resolution
The sandbox mode now checks the `__toString()` method call on all objects.
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 Fabien Potencier for providing the fix.
Related
Alias · CVE (1)
- CVE-2024-51754 Twig is a template language for PHP. vulnerability
Weakness · CWE (1)
- CWE-668 Exposure of Resource to Wrong Sphere weakness
References
- https://github.com/twigphp/Twig/security/advisories/GHSA-6377-hfv9-hqf6 web
- https://nvd.nist.gov/vuln/detail/CVE-2024-51754 advisory
- https://github.com/twigphp/Twig/commit/2bb8c2460a2c519c498df9b643d5277117155a73 web
- https://github.com/FriendsOfPHP/security-advisories/blob/master/twig/twig/CVE-2024-51754.yaml web
- https://github.com/twigphp/Twig package
- https://lists.debian.org/debian-lts-announce/2025/05/msg00039.html web
- https://symfony.com/blog/unguarded-calls-to-__tostring-when-nesting-an-object-into-an-array web