4.3

CVE-2026-33532: yaml is vulnerable to Stack Overflow via deeply nested YAML collections

Analyzed
AliasesUBUNTU-CVE-2026-33532DEBIAN-CVE-2026-33532CGA-34ph-g875-p87f
Published 26-03-2026Last modified 30-03-2026

Vulnerability summary

CVE-2026-33532 is a medium (CVSS 4.3) Uncontrolled Recursion vulnerability in eemeli yaml. EPSS estimates a 0.49% chance of exploitation in the next 30 days, higher than 42% of scored vulnerabilities. 1 public exploit is recorded.

Priority
Routine

Not severe (CVSS 4.3, network access); no exploitation reported by the 5 checked sources

Source freshness unavailable

How is this decided?
CVSS score
4.3/10
010
Medium · v3.1 (CVE.org)
EPSS score
0.49%
0%100%
Low · -0.04 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits1github

Advisory lineage

Upstream 0 · Downstream 4 · Related 5

Timeline

  1. 26-03-2026
    PublishedVulnerability first disclosed.
  2. 30-03-2026
    Last modifiedVulnerability information updated.

Description

`yaml` is a YAML parser and serialiser for JavaScript. Parsing a YAML document with a version of `yaml` on the 1.x branch prior to 1.10.3 or on the 2.x branch prior to 2.8.3 may throw a RangeError due to a stack overflow. The node resolution/composition phase uses recursive function calls without a depth bound. An attacker who can supply YAML for parsing can trigger a `RangeError: Maximum call stack size exceeded` with a small payload (~2–10 KB). The `RangeError` is not a `YAMLParseError`, so applications that only catch YAML-specific errors will encounter an unexpected exception type. Depending on the host application's exception handling, this can fail requests or terminate the Node.js process. Flow sequences allow deep nesting with minimal bytes (2 bytes per level: one `[` and one `]`). On the default Node.js stack, approximately 1,000–5,000 levels of nesting (2–10 KB input) exhaust the call stack. The exact threshold is environment-dependent (Node.js version, stack size, call stack depth at invocation). Note: the library's `Parser` (CST phase) uses a stack-based iterative approach and is not affected. Only the compose/resolve phase uses actual call-stack recursion. All three public parsing APIs are affected: `YAML.parse()`, `YAML.parseDocument()`, and `YAML.parseAllDocuments()`. Versions 1.10.3 and 2.8.3 contain a patch.

CVSS metrics

7 scores · 7 sources · 1 version

EPSS trend

Probability

0.49%

Chance of exploitation in the next 30 days

Percentile

42%

Versus all other CVEs

30-day change

Decrease -0.04 pp

From 0.53% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

1 found
  • githubUnverified

    Yaml

    Maturity: poc

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, low-privilege account, no user interaction (CVSS vector). Other conditions: not stated in public data.

Chainguard128 products
  • airflow-2All versions (No fix recorded)
  • airflow-core-2All versions (No fix recorded)
  • arangodb-3.11< 3.11.14.5-r17
  • arangodb-3.12< 3.12.9.4-r30
  • argo-workflows-ui-3.6< 3.6.19-r5
Wolfi20 products
  • argo-workflows-ui-4.0< 4.0.3-r2
  • katib-earlystopping< 0.19.0-r31
  • katib-suggestion-goptuna-compatAll versions (No fix recorded)
  • katib-suggestion-hyperband< 0.19.0-r31
  • katib-suggestion-hyperopt< 0.19.0-r40 | < 0.19.0-r31
Debian1 product
  • node-yamlAll versions (No fix recorded) | < 2.8.3+~cs0.4.0-1
Eemeli1 product
  • yaml≥ 1.0.0, < 1.10.3 | ≥ 2.0.0, < 2.8.3
Npm1 product
  • yaml≥ 2.0.0, < 2.8.3 | ≥ 1.0.0, < 1.10.3
Ubuntu1 product
  • node-yamlAll versions (No fix recorded)

6 vendors · 152 products

References

10 links