CVE-2026-46639

Twig: Sandbox property and method bypass via object-destructuring assignment

Published Jul 14, 2026 CVSS 4.0 · 7.1 High EPSS < 1% KEV · Not listed
Description
Twig is a template language for PHP. From 3.24.0 until 3.26.0, object-destructuring assignment compiles CoreExtension::getAttribute() with the sandbox argument hardcoded to false, disabling property and method policy checks and allowing an attacker with write access to a sandboxed Twig template to read public properties or invoke public getters on objects passed to the template engine. This issue is fixed in version 3.26.0.

Analysis

AI-generated

Technical impact

Twig, a PHP template language, has a vulnerability that allows an attacker who can write templates into a sandboxed environment to bypass sandbox property and method restrictions. The flaw arises from object‑destructuring assignment that compiles CoreExtension::getAttribute() with the sandbox flag hard‑coded to false, disabling property and method policy checks. As a result, an attacker can read public properties or invoke public getters on objects passed to Twig. This issue existed in Twig versions 3.24.0 through 3.25.0 and is fixed in version 3.26.0. The weakness is identified as CWE‑693, indicating a failure to preserve the integrity of data used by a trusted component.

Affected Systems

The affected product is Twig, the templating engine from the vendor twigphp. Versions from 3.24.0 up to, but excluding, 3.26.0 are impacted. Users running any of those releases on PHP installations should consider the product vulnerable.

Risk and Exploitability

The CVSS score of 7.1 reflects a medium to high severity. The EPSS score of less than 1% indicates a low probability of exploitation at the present time, and it is not listed in the CISA KEV catalog. Based on the description, the likely attack vector is an attacker who can supply or alter template files within a sandboxed Twig instance. If such write access is available—perhaps via a web application that echoes user‑produced templates—then the sandbox bypass could be achieved. The vulnerability exploits a design flaw in the default configuration, so the risk is mitigated by ensuring that sandbox usage is properly enforced or disabled.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Twig to version 3.26.0 or later to eliminate the hard‑coded sandbox false behavior.
  • If an upgrade is not yet feasible, restrict template files so that only trusted, authenticated users can write or modify them, thereby preventing attackers from supplying malicious templates.
  • As a temporary measure, disable sandbox mode or enforce stricter property checks in the application’s configuration if it is required to remain on older Twig releases.

Generated by OpenCVE AI on July 31, 2026 at 04:40 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-mm6w-gr99-p3jj Twig: Sandbox property and method bypass via object-destructuring assignment
History
Type Values Removed Values Added
First Time appeared Twigphp
Twigphp twig
Vendors & Products Twigphp
Twigphp twig
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Twig is a template language for PHP. From 3.24.0 until 3.26.0, object-destructuring assignment compiles CoreExtension::getAttribute() with the sandbox argument hardcoded to false, disabling property and method policy checks and allowing an attacker with write access to a sandboxed Twig template to read public properties or invoke public getters on objects passed to the template engine. This issue is fixed in version 3.26.0.
Title Twig: Sandbox property and method bypass via object-destructuring assignment
Weaknesses CWE-693
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N'}

Weaknesses
  • CWE-693

    Protection Mechanism Failure

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Jul 15, 2026, 12:54 PM
Reserved
May 15, 2026, 8:11 PM
Status
Analyzed
Published
Jul 14, 2026, 10:16 PM
Modified
Oct 24, 2026, 10:10 PM