CVE-2026-109413 Symfony: Unbounded Recursion in the YAML Inline Lexer Lets a Single Document Crash the Process
- Published
- Updated
- Exploit status
- Proof-of-concept only
Description
In Symfony YAML prior to versions 5.4.54, 6.4.45, 7.4.18, and 8.1.6, Yaml\Parser::lexInlineStructure() recursed through lexInlineMapping() and lexInlineSequence() for every { and [ of an inline collection, without entering the nesting level that the rest of the parser bounds with maxNestingLevel. A document made of deeply nested inline collections, such as [[[[...]]]], exhausted the stack while it was being lexed: depending on the PHP version and its stack settings, the process crashed or the request ended with a fatal error.
Any code parsing untrusted YAML is affected. That includes #[MapRequestPayload] when the Yaml component is installed and the endpoint does not restrict acceptFormat: a single unauthenticated request with a YAML content type is enough.
This issue affects symfony/yaml through v5.4.53, v6.0.0-BETA1 through v6.4.44, v7.0.0-BETA1 through v7.4.17, and v8.0.0-BETA1 through v8.1.5.
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| symfony/symfony(Packagist) | >= 2.0.0, < 5.4.54 | 5.4.54 |
| symfony/symfony(Packagist) | = 2.0.4 | No fix listed |
| symfony/symfony(Packagist) | = 2.0.5 | No fix listed |
| symfony/symfony(Packagist) | = 2.0.6 | No fix listed |
| symfony/symfony(Packagist) | = 2.0.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.12 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.13 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.14 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.15 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.16 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.17 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.18 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.19 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.20 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.21 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.22 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.23 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.24 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.25 | No fix listed |
| symfony/symfony(Packagist) | = v2.0.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.0-BETA2 | No fix listed |
Show 175 more
| Product | Affected versions | Fixed in |
|---|---|---|
| symfony/symfony(Packagist) | = v2.1.0-BETA3 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.0-BETA4 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.0-RC1 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.0-RC2 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.12 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.13 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.6 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.8 | No fix listed |
| symfony/symfony(Packagist) | = v2.1.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.0-BETA2 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.0-RC1 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.0-RC2 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.0-RC3 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.6 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.8 | No fix listed |
| symfony/symfony(Packagist) | = v2.2.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.0-BETA2 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.0-RC1 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.12 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.13 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.14 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.15 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.16 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.17 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.18 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.19 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.20 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.21 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.22 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.23 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.24 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.25 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.26 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.27 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.28 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.29 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.30 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.31 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.32 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.33 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.34 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.35 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.36 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.37 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.38 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.39 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.40 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.41 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.42 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.6 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.8 | No fix listed |
| symfony/symfony(Packagist) | = v2.3.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.0-BETA2 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.0-RC1 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.6 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.8 | No fix listed |
| symfony/symfony(Packagist) | = v2.4.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.0-BETA2 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.0-RC1 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.12 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.6 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.8 | No fix listed |
| symfony/symfony(Packagist) | = v2.5.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.0-BETA2 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.12 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.13 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.6 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.7 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.8 | No fix listed |
| symfony/symfony(Packagist) | = v2.6.9 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.0 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.0-BETA1 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.0-BETA2 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.1 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.10 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.11 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.12 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.13 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.14 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.15 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.16 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.17 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.18 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.19 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.2 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.20 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.21 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.22 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.23 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.24 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.25 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.26 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.27 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.28 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.29 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.3 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.30 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.31 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.32 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.33 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.34 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.35 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.36 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.37 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.38 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.39 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.4 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.40 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.41 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.42 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.43 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.44 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.45 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.46 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.47 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.48 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.49 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.5 | No fix listed |
| symfony/symfony(Packagist) | = v2.7.50 | No fix listed |
References
- github.com third-party-advisory vendor-advisory
- nvd.nist.gov third-party-advisory vendor-advisory
- github.com patch
- github.com patch
- github.com patch
- github.com patch
- github.com patch
- github.com exploit
- github.com exploit
- github.com product
- github.com
- github.com
- github.com
- github.com
- symfony.com vendor-advisory
- symfony.com
- Debian Security Tracker CVE-2026-109413 vendor-advisory
- Red Hat CVE page mitigation vendor-advisory
- Red Hat Bugzilla 2553525 issue-tracking
- www.cve.org
- github.com
- Ubuntu CVE tracker vendor-advisory