Description
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.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| nodeca | js-yaml | >= 4.0.0, < 4.2.0; < 3.15.0 |
References
- https://github.com/nodeca/js-yaml/security/advisories/GHSA-h67p-54hq-rp68Exploit, Mitigation, Vendor Advisory
Timeline
- Published
- Jun 22, 2026
- Last modified
- Oct 25, 2026
- NVD status
- Analyzed