CVE-2026-59870: js-yaml quadratic-complexity denial of service via YAML11_SCHEMA !!omap parsing
Vulnerability summary
CVE-2026-59870 is a high (CVSS 7.5) Inefficient Algorithmic Complexity vulnerability in nodeca js-yaml. EPSS estimates a 0.74% chance of exploitation in the next 30 days, higher than 54.6% of scored vulnerabilities. 1 public exploit is recorded.
Public exploit (GitHub, Date unknown)
Source freshness unavailable
How is this decided?Advisory lineage
Upstream 0 · Downstream 8 · Related 1Timeline
- 08-07-2026PublishedVulnerability first disclosed.
- 06-10-2026Last modifiedVulnerability information updated.
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.
CVSS metrics
6 scores · 6 sources · 1 version- OSV · UbuntuEcosystem advisory · calculated7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- OSV · WolfiEcosystem advisory · calculated5.3MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LDiffers
- OSV · NpmEcosystem advisory · calculated5.3MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LDiffers
- OSV · ChainguardEcosystem advisory · calculated5.3MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LDiffers
- NVDNIST7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
EPSS trend
Probability
0.74%
Chance of exploitation in the next 30 days
Percentile
55%
Versus all other CVEs
30-day change
Increase +0.10 pp
From 0.64% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
1 foundJs Yaml
Maturity: poc
Weaknesses
CWE · root cause- CWE-407Inefficient Algorithmic ComplexityAn algorithm in a product has an inefficient worst-case computational complexity that may be detrimental to system performance and can be triggered by an attacker, typically using crafted manipulations that ensure that the worst case is being reached.
- CWE-770Allocation of Resources Without Limits or ThrottlingThe product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated.
Affected systems
Known conditions: network-reachable, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.
Chainguard1 product
- renovate< 44.3.3-r0 | < 44.3.2-r0
Nodeca1 product
- js-yaml≥ 3.0.0, < 3.15.1 | ≥ 4.0.0, < 4.3.1 | ≥ 5.0.0, < 5.2.1
Npm1 product
- js-yaml≥ 5.0.0, < 5.2.1
Ubuntu1 product
- node-js-yamlAll versions (No fix recorded)
Wolfi1 product
- renovate< 44.3.3-r0 | < 44.3.2-r0
5 vendors · 5 products
References
12 links- github.com/nodeca/js-yaml/security/advisories/GHSA-724g-mxrg-4qvmX Refsource CONFIRMREPORTAdvisoryWEBExploitVendor Advisory
- github.com/nodeca/js-yaml/commit/39f3211a2f01b3c6982710cf21434ab7060acefeX Refsource MISCFIXWEBPatch
- github.com/nodeca/js-yaml/releases/tag/3.15.1X Refsource MISC
- github.com/nodeca/js-yaml/releases/tag/4.3.1X Refsource MISC
Show all 12 references
- github.com/nodeca/js-yamlPACKAGE