Vulnerability Details CVE-2026-53550
js-yaml is a JavaScript YAML parser and dumper. Prior to 4.2.0 and 3.15.0, a crafted YAML document can trigger algorithmic CPU exhaustion in js-yaml merge-key processing (<<) by repeating the same alias many times in a merge sequence. This causes quadratic parse-time behavior relative to input size and can block a Node.js worker/event loop for seconds with a relatively small payload (tens of KB), resulting in denial of service. The issue is in merge handling inside lib/loader.js. This vulnerability is fixed in 4.2.0 and 3.15.0.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.004
EPSS Ranking 31.2%
CVSS Severity
CVSS v3 Score 5.3
Products affected by CVE-2026-53550
-
cpe:2.3:a:nodeca:js-yaml:0.1.0
-
cpe:2.3:a:nodeca:js-yaml:0.2.0
-
cpe:2.3:a:nodeca:js-yaml:0.2.1
-
cpe:2.3:a:nodeca:js-yaml:0.2.2
-
cpe:2.3:a:nodeca:js-yaml:0.3.0
-
cpe:2.3:a:nodeca:js-yaml:0.3.1
-
cpe:2.3:a:nodeca:js-yaml:0.3.2
-
cpe:2.3:a:nodeca:js-yaml:0.3.3
-
cpe:2.3:a:nodeca:js-yaml:0.3.4
-
cpe:2.3:a:nodeca:js-yaml:0.3.5
-
cpe:2.3:a:nodeca:js-yaml:0.3.6
-
cpe:2.3:a:nodeca:js-yaml:0.3.7
-
cpe:2.3:a:nodeca:js-yaml:1.0.0
-
cpe:2.3:a:nodeca:js-yaml:1.0.1
-
cpe:2.3:a:nodeca:js-yaml:1.0.2
-
cpe:2.3:a:nodeca:js-yaml:1.0.3
-
cpe:2.3:a:nodeca:js-yaml:2.0.0
-
cpe:2.3:a:nodeca:js-yaml:2.0.1
-
cpe:2.3:a:nodeca:js-yaml:2.0.2
-
cpe:2.3:a:nodeca:js-yaml:2.0.3
-
cpe:2.3:a:nodeca:js-yaml:2.0.4
-
cpe:2.3:a:nodeca:js-yaml:2.0.5
-
cpe:2.3:a:nodeca:js-yaml:2.1.0
-
cpe:2.3:a:nodeca:js-yaml:2.1.1
-
cpe:2.3:a:nodeca:js-yaml:2.1.2
-
cpe:2.3:a:nodeca:js-yaml:2.1.3
-
cpe:2.3:a:nodeca:js-yaml:3.0.0
-
cpe:2.3:a:nodeca:js-yaml:3.0.1
-
cpe:2.3:a:nodeca:js-yaml:3.0.2
-
cpe:2.3:a:nodeca:js-yaml:3.1.0
-
cpe:2.3:a:nodeca:js-yaml:3.10.0
-
cpe:2.3:a:nodeca:js-yaml:3.11.0
-
cpe:2.3:a:nodeca:js-yaml:3.12.0
-
cpe:2.3:a:nodeca:js-yaml:3.12.1
-
cpe:2.3:a:nodeca:js-yaml:3.12.2
-
cpe:2.3:a:nodeca:js-yaml:3.13.0
-
cpe:2.3:a:nodeca:js-yaml:3.13.1
-
cpe:2.3:a:nodeca:js-yaml:3.14.0
-
cpe:2.3:a:nodeca:js-yaml:3.14.1
-
cpe:2.3:a:nodeca:js-yaml:3.14.2
-
cpe:2.3:a:nodeca:js-yaml:3.2.0
-
cpe:2.3:a:nodeca:js-yaml:3.2.1
-
cpe:2.3:a:nodeca:js-yaml:3.2.2
-
cpe:2.3:a:nodeca:js-yaml:3.2.3
-
cpe:2.3:a:nodeca:js-yaml:3.2.4
-
cpe:2.3:a:nodeca:js-yaml:3.2.5
-
cpe:2.3:a:nodeca:js-yaml:3.2.6
-
cpe:2.3:a:nodeca:js-yaml:3.2.7
-
cpe:2.3:a:nodeca:js-yaml:3.3.0
-
cpe:2.3:a:nodeca:js-yaml:3.3.1
-
cpe:2.3:a:nodeca:js-yaml:3.4.0
-
cpe:2.3:a:nodeca:js-yaml:3.4.1
-
cpe:2.3:a:nodeca:js-yaml:3.4.2
-
cpe:2.3:a:nodeca:js-yaml:3.4.3
-
cpe:2.3:a:nodeca:js-yaml:3.4.4
-
cpe:2.3:a:nodeca:js-yaml:3.4.5
-
cpe:2.3:a:nodeca:js-yaml:3.4.6
-
cpe:2.3:a:nodeca:js-yaml:3.5.0
-
cpe:2.3:a:nodeca:js-yaml:3.5.1
-
cpe:2.3:a:nodeca:js-yaml:3.5.2
-
cpe:2.3:a:nodeca:js-yaml:3.5.3
-
cpe:2.3:a:nodeca:js-yaml:3.5.4
-
cpe:2.3:a:nodeca:js-yaml:3.5.5
-
cpe:2.3:a:nodeca:js-yaml:3.6.0
-
cpe:2.3:a:nodeca:js-yaml:3.6.1
-
cpe:2.3:a:nodeca:js-yaml:3.7.0
-
cpe:2.3:a:nodeca:js-yaml:3.8.0
-
cpe:2.3:a:nodeca:js-yaml:3.8.1
-
cpe:2.3:a:nodeca:js-yaml:3.8.2
-
cpe:2.3:a:nodeca:js-yaml:3.8.3
-
cpe:2.3:a:nodeca:js-yaml:3.8.4
-
cpe:2.3:a:nodeca:js-yaml:3.9.0
-
cpe:2.3:a:nodeca:js-yaml:3.9.1
-
cpe:2.3:a:nodeca:js-yaml:4.0.0
-
cpe:2.3:a:nodeca:js-yaml:4.1.0
-
cpe:2.3:a:nodeca:js-yaml:4.1.1