GitHub Advisoryadvisory · Packagist

GHSA-c2p3-7m5p-cv8x Symfony hardened the parser when handling untrusted input

LOW Published 2026-05-27 Modified 2026-05-27 Official page ↗
Aliases
CVE-2026-45133
Ecosystem
Packagist
Packages
symfony/yaml, symfony/symfony
Severity
Low
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:U
Weaknesses
CWE-1333, CWE-674, CWE-776
Reviewed
2026-05-27

Affected packages

• Packagist symfony/yaml: < 5.4.52 → fixed in 5.4.52 • Packagist symfony/symfony: < 5.4.52 → fixed in 5.4.52 • Packagist symfony/symfony: >= 6.0.0, < 6.4.40 → fixed in 6.4.40 • Packagist symfony/symfony: >= 7.0.0, < 7.4.12 → fixed in 7.4.12 • Packagist symfony/symfony: >= 8.0.0, < 8.0.12 → fixed in 8.0.12 • Packagist symfony/yaml: >= 6.0.0, < 6.4.40 → fixed in 6.4.40 • Packagist symfony/yaml: >= 7.0.0, < 7.4.12 → fixed in 7.4.12 • Packagist symfony/yaml: >= 8.0.0, < 8.0.12 → fixed in 8.0.12

Description

Description `Symfony\Component\Yaml\Parser` is the entry point for parsing YAML strings into PHP values via `Yaml::parse()`. When the parser is exposed to attacker-controlled input, deeply nested mappings or sequences cause both the block-level (`Parser::parseBlock()`) and inline (`Inline::parseSequence()` / `Inline::parseMapping()`) parsers to recurse without a depth limit. A crafted document exhausts the PHP stack and crashes the worker. Resolution The `Parser` now tracks recursion depth in a shared `ParserState` object across both block-level and inline parsing, with a default limit of 128. The limit is configurable via a new `$maxNestingLevel` argument on `Parser::__construct()`, `Yaml::parse()` and `Yaml::parseFile()`. The patch for this issue is available here for branch 5.4. Credits Symfony would like to thank Pietro Tirenna (Shielder) for reporting the issue and Nicolas Grekas for fixing it.

Related

Alias · CVE (1)

  • CVE-2026-45133 Symfony is a PHP framework for web and console applications and a set of reusable PHP components. vulnerability

Weakness · CWE (3)

  • CWE-1333 Inefficient Regular Expression Complexity weakness
  • CWE-674 Uncontrolled Recursion weakness
  • CWE-776 Improper Restriction of Recursive Entity References in DTDs weakness

References