Skip to content

CVE-2026-109413 Symfony: Unbounded Recursion in the YAML Inline Lexer Lets a Single Document Crash the Process

HighCVSS 8.7 EPSS 0.40% PoC
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

ProductAffected versionsFixed 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
ProductAffected versionsFixed 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