CVE-2026-46628 Twig: The `spaceless` filter implicitly marks its output as safe
Attacker-controlled markup is rendered unescaped when using the spaceless filter, enabling Cross-Site Scripting attacks in Twig templates.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2026-46628?
CVE-2026-46628 is a medium-severity cross-site scripting vulnerability in twigphp Twig, published on 14 Jul 2026. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.
Official description
Twig is a template language for PHP. Prior to 3.26.0, the deprecated spaceless filter is registered as safe for HTML, causing Twig autoescaping to emit attacker-controlled markup unescaped when spaceless is applied to untrusted input. This issue is fixed in version 3.26.0.
Weakness: CWE-116
Which versions are affected by CVE-2026-46628?
2 open source packages ship an affected version, including twig/twig. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
twig/twig Packagist | All versions | 3.26.0 |
twig/twig Packagist | All versions | 3.26.0 |
Products include Symfony Twig.
How do I fix CVE-2026-46628?
Upgrade twig/twig to 3.26.0 or later.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2026-46628 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-46628 exists.
Other vulnerabilities in twigphp Twig
- CVE-2018-13818 Code injection in n/a
- CVE-2026-46633 Twig: PHP code injection via `{% use %}` template name
- CVE-2026-46640 Twig: Arbitrary PHP code execution via `_self.(<string>)` macro-reference compilation
- CVE-2026-24425 Twig 2.16.x & 3.9.0-3.25.x Sandbox Bypass via SourcePolicyInterface
- CVE-2024-45411 Twig has a possible sandbox bypass
Sources
Also known as DEBIAN-CVE-2026-46628, GHSA-4j38-f5cw-54h7, UBUNTU-CVE-2026-46628.