Skip to content
OpenAdvisories
High · 8.7 CVE-2026-46633 EUVD-2026-44558GHSA-7p85-w9px-jpjp

Twig: PHP code injection via `{% use %}` template name

Published Jul 14, 2026 · Updated Nov 4, 2026 · Assigned by GitHub_M

Description

Twig is a template language for PHP. Starting in 1.15.1 and prior to 3.26.0, Compiler::string() does not escape single quotes when a template name from a {% use %} tag is placed inside a PHP single-quoted string literal, allowing a crafted template name to terminate the string and inject arbitrary PHP expressions into the compiled cache file. This issue is fixed in version 3.26.0.

Affected products

VendorProductAffectedFixed
twigphp Twig >= 1.15.1, < 3.26.0 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 php-twig 3.26.0-1 —
Debian 13 php-twig 3.27.0-0+deb13u1 —
Debian 12 php-twig 3.5.1-1+deb12u3 —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 php-twig No fix yet —
Ubuntu 25.10 php-twig No fix yet —
Show 4 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 26.04 LTS php-twig No fix yet —
Ubuntu Pro 24.04 LTS php-twig No fix yet —
Ubuntu Pro 22.04 LTS php-twig No fix yet —
Ubuntu Pro 20.04 LTS php-twig No fix yet —

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist twig/twig >= 1.15.1, < 3.26.0 3.26.0 GHSA-7p85-w9px-jpjp

References