CVE-2026-33532
yaml ist anfällig für Stack Overflow durch tief verschachtelte YAML-Sammlungen
- Veröffentlicht
- 26.03.2026
- Aktualisiert
- 30.03.2026
- CNA zuweisen
- GitHub_M
- Beweise beobachtet
- 25.08.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:LNiedrig · nächste 30 Tage
- Perzentil
- 39,7 %
- Modelldatum
- 21.09.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
`yaml` ist ein YAML-Parser und -Serializer für JavaScript. Das Parsen eines YAML-Dokuments mit einer Version von `yaml` auf dem 1.x-Zweig vor 1.10.3 oder auf dem 2.x-Zweig vor 2.8.3 kann aufgrund eines Stack-Overflows eine RangeError auslösen. Die Knotenauflösungs-/Kompositionsphase verwendet rekursive Funktionsaufrufe ohne Tiefenbegrenzung. Ein Angreifer, der YAML zum Parsen bereitstellen kann, kann mit einer kleinen Nutzlast (~2–10 KB) einen `RangeError: Maximum call stack size exceeded` auslösen. Der `RangeError` ist kein `YAMLParseError`, sodass Anwendungen, die nur YAML-spezifische Fehler abfangen, auf einen unerwarteten Ausnahmetyp stoßen. Abhängig von der Ausnahmebehandlung der Host-Anwendung kann dies Anfragen fehlschlagen lassen oder den Node.js-Prozess beenden. Flow-Sequenzen ermöglichen eine tiefe Verschachtelung mit minimalen Bytes (2 Bytes pro Ebene: eine `[` und eine `]`). Auf dem standardmäßigen Node.js-Stack erschöpfen ungefähr 1.000–5.000 Verschachtelungsebenen (2–10 KB Eingabe) den Aufrufstack. Die genaue Schwelle ist umgebungsabhängig (Node.js-Version, Stack-Größe, Aufrufstack-Tiefe beim Aufruf). Hinweis: Der `Parser` der Bibliothek (CST-Phase) verwendet einen stackbasierten iterativen Ansatz und ist nicht betroffen. Nur die Kompositions-/Auflösungsphase verwendet tatsächliche Aufrufstack-Rekursion. Alle drei öffentlichen Parsing-APIs sind betroffen: `YAML.parse()`, `YAML.parseDocument()` und `YAML.parseAllDocuments()`. Die Versionen 1.10.3 und 2.8.3 enthalten einen Patch.
Quellen
1Repository, das CVE-2026-33532 gewidmet ist und eine Analyse sowie einen potenziellen Proof-of-Concept für eine Web-Schwachstelle bereitstellt.
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.