Vulnerability · Published Jul 8, 2026 · Assigned by GitHub_M
CVE-2026-59870js-yaml quadratic-complexity denial of service via YAML11_SCHEMA !!omap parsing
High 7.5
In plain English
A high-severity security flaw in js-yaml from nodeca. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 55% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
js-yaml is a JavaScript YAML parser and dumper. Prior to 3.15.1, 4.3.1, and 5.2.1, YAML11_SCHEMA support for the !!omap tag in src/tag/sequence/omap.ts uses omapTag.addItem() to perform a linear duplicate-key scan on every insertion, causing O(n^2) CPU consumption when yaml.load() parses a crafted ordered-map document. In v3 and v4, !!omap is active and exploitable by default. v5 doesn't use !!omap by default, and the chances of activating it are very low.This issue is fixed in 3.15.1, 4.3.1, and 5.2.1.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu:22.04:LTS | node-js-yaml | no fix listed | UBUNTU-CVE-2026-59870 |
| Ubuntu:24.04:LTS | node-js-yaml | no fix listed | UBUNTU-CVE-2026-59870 |
| Ubuntu:25.10 | node-js-yaml | no fix listed | UBUNTU-CVE-2026-59870 |
| Ubuntu:26.04:LTS | node-js-yaml | no fix listed | UBUNTU-CVE-2026-59870 |
| Ubuntu:26.10 | node-js-yaml | no fix listed | UBUNTU-CVE-2026-59870 |
| npm | js-yaml | 5.2.1 | GHSA-724g-mxrg-4qvm |
Affected products (as reported)
Weakness: CWE-407 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/nodeca/js-yaml/security/advisories/GHSA-724g-mxrg-4qvm x_refsource_CONFIRM
- https://github.com/nodeca/js-yaml/commit/22a8071ef032117bc6249c330b240ac3aa2d3ded x_refsource_MISC
- https://github.com/nodeca/js-yaml/commit/39f3211a2f01b3c6982710cf21434ab7060acefe x_refsource_MISC
- https://github.com/nodeca/js-yaml/commit/c3cc4b0bb9ddb9af2dd9b61e0d56f5ce7983cd4a x_refsource_MISC
- https://github.com/nodeca/js-yaml/releases/tag/3.15.1 x_refsource_MISC
- https://github.com/nodeca/js-yaml/releases/tag/4.3.1 x_refsource_MISC
- https://github.com/nodeca/js-yaml/releases/tag/5.2.1 x_refsource_MISC