CVE-2026-109413
waiting for further signalsZero needs more public information before it can validate it.GHSA-2v3c-qxhr-7vpv ↗EUVD-2026-102109 ↗
description
Symfony YAML releases before 5.4.54, 6.4.45, 7.4.18, and 8.1.6 can exhaust the PHP stack while parsing deeply nested inline YAML collections. An attacker who can supply YAML to an application may cause a request failure or process crash; endpoints using MapRequestPayload are exposed when YAML is installed and accepted without format restrictions.
mitigation
Upgrade symfony/yaml, or the symfony/symfony metapackage, to 5.4.54, 6.4.45, 7.4.18, or 8.1.6 or later on the corresponding branch. Until upgraded, do not parse untrusted YAML and restrict request endpoints to accepted non-YAML formats.
fixed in 5.4.54, 6.4.45, 7.4.18, 8.1.6
outcome
Contextual: an exploit technique exists, but no deterministic check could cover this one.
source signals
Public signals that triggered or updated the pipeline. These are inputs for the deltas above.
- 2026-10-15 06:58Zghsa: trigger signal, started the run
- 2026-10-15 14:57Zcve.org record for CVE-2026-109413
this entry in the feed
GET /api/v1/feed/CVE-2026-109413
{ "etk_id": "ETK-2026-1666", "cve_id": "CVE-2026-109413", "display_id": "CVE-2026-109413", "ghsa_id": "GHSA-2v3c-qxhr-7vpv", "euvd_id": "EUVD-2026-102109", "status": "published", "anchor_state": "anchored", "title": "Unbounded recursion denial of service in Symfony YAML", "summary": "Symfony YAML releases before 5.4.54, 6.4.45, 7.4.18, and 8.1.6 can exhaust the PHP stack while parsing deeply nested inline YAML collections. An attacker who can supply YAML to an application may cause a request failure or process crash; endpoints using MapRequestPayload are exposed when YAML is installed and accepted without format restrictions.", "mitigation": "Upgrade symfony/yaml, or the symfony/symfony metapackage, to 5.4.54, 6.4.45, 7.4.18, or 8.1.6 or later on the corresponding branch. Until upgraded, do not parse untrusted YAML and restrict request endpoints to accepted non-YAML formats.", "vendor": "composer", "product": "composer:symfony/yaml", "affected": [ { "affected_notes": [], "affected_ranges": [ "<5.4.54" ], "ecosystem": "composer", "fixed_versions": [ "5.4.54" ], "package_name": "symfony/yaml", "purl": "pkg:composer/symfony/yaml" }, { "affected_notes": [], "affected_ranges": [ ">=6", "<6.4.45" ], "ecosystem": "composer", "fixed_versions": [ "6.4.45" ], "package_name": "symfony/yaml", "purl": "pkg:composer/symfony/yaml" }, { "affected_notes": [], "affected_ranges": [ ">=7", "<7.4.18" ], "ecosystem": "composer", "fixed_versions": [ "7.4.18" ], "package_name": "symfony/yaml", "purl": "pkg:composer/symfony/yaml" }, { "affected_notes": [], "affected_ranges": [ ">=8", "<8.1.6" ], "ecosystem": "composer", "fixed_versions": [ "8.1.6" ], "package_name": "symfony/yaml", "purl": "pkg:composer/symfony/yaml" }, { "affected_notes": [], "affected_ranges": [ "<5.4.54" ], "ecosystem": "composer", "fixed_versions": [ "5.4.54" ], "package_name": "symfony/symfony", "purl": "pkg:composer/symfony/symfony" }, { "affected_notes": [], "affected_ranges": [ ">=6", "<6.4.45" ], "ecosystem": "composer", "fixed_versions": [ "6.4.45" ], "package_name": "symfony/symfony", "purl": "pkg:composer/symfony/symfony" }, { "affected_notes": [], "affected_ranges": [ ">=7", "<7.4.18" ], "ecosystem": "composer", "fixed_versions": [ "7.4.18" ], "package_name": "symfony/symfony", "purl": "pkg:composer/symfony/symfony" }, { "affected_notes": [], "affected_ranges": [ ">=8", "<8.1.6" ], "ecosystem": "composer", "fixed_versions": [ "8.1.6" ], "package_name": "symfony/symfony", "purl": "pkg:composer/symfony/symfony" } ], "cwes": [ 674 ], "cvss_score": 8.7, "cvss_src": "cna_vendor", "cvss_vector": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N", "epss_score": 0.0051, "epss_percentile": 0.4205, "epss_asof": "2026-10-20", "automation": "contextual", "check": false, "check_confidence_basis": null, "exploit": false, "pipeline_minutes": 14.623166483333334, "t0_at": "2026-10-15T14:57:00.211000+00:00", "signals": { "trigger_signal": { "at": "2026-10-15T06:58:41+00:00", "days": -0.33216679398148147, "is_lower_bound": false, "measured_at": "2026-10-15T14:57:00.211000+00:00", "url": "https://github.com/symfony/symfony/security/advisories/GHSA-2v3c-qxhr-7vpv" } } }
published 2026-10-15 10:02Z
last change 2026-10-21 19:22Z
Need the technical details behind an entry?
Every entry here shows what we attempted and when. The technical details, the generated exploit that fired it and the evidence behind the verdict are not public. Tell us about your use case and we’ll get back to you about extended API access.