js-yaml quadratic-complexity denial of service via YAML11_SCHEMA !!omap parsing
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Partial Red Hat: 1 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-407.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| nodeca | js-yaml | 5.0.0 to before 5.2.1; 3.0.0 to before 3.15.1; 4.0.0 to before 4.3.1 | 5.2.1, 3.15.1, 4.3.1 | Patch available | CNA |
| — | js-yaml (npm) | 5.0.0 to before 5.2.1 | 5.2.1 | Patch available | GHSA-724g-mxrg-4qvm |
- js-yaml Vendornodeca Affected 5.0.0 to before 5.2.1; 3.0.0 to before 3.15.1; 4.0.0 to before 4.3.1 Fixed in 5.2.1, 3.15.1, 4.3.1 Patch available CNA
- js-yaml (npm) Vendor— Affected 5.0.0 to before 5.2.1 Fixed in 5.2.1 Patch available GHSA-724g-mxrg-4qvm
Remediation
- Fix · CNA js-yaml (nodeca) Fixed in 5.2.1, 3.15.1, 4.3.1
- Fix · GHSA-724g-mxrg-4qvm js-yaml (npm) Fixed in 5.2.1 Advisory →
Red Hat 8 advisories
- RHSA-2026:35272 Released 2026-07-03 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images nodejs22-1:22.23.1-2.hum1@aarch64, nodejs22-1:22.23.1-2.hum1@src, nodejs22-1:22.23.1-2.hum1@x86_64 +14
- RHSA-2026:34975 Released 2026-07-02 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images cargo-1.96.1-1.hum1@aarch64, cargo-1.96.1-1.hum1@x86_64, clippy-1.96.1-1.hum1@aarch64 +36
- RHSA-2026:34478 Released 2026-07-01 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images nodejs24-1:24.18.0-0.2.hum1@aarch64, nodejs24-1:24.18.0-0.2.hum1@src, nodejs24-1:24.18.0-0.2.hum1@x86_64 +16
Show 5 more Red Hat advisories
- RHSA-2026:33866 Released 2026-06-30 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images nodejs26-1:26.4.0-1.3.hum1@aarch64, nodejs26-1:26.4.0-1.3.hum1@src, nodejs26-1:26.4.0-1.3.hum1@x86_64 +16
- RHSA-2026:26994 Released 2026-06-18 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images dotnet-sdk-8.0-8.0.128-1.hum1@aarch64, dotnet-sdk-8.0-8.0.128-1.hum1@x86_64, dotnet-sdk-8.0-source-built-artifacts-8.0.128-1.hum1@aarch64 +6
- RHSA-2026:9455 Released 2026-04-21 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images nodejs20-20.20.2-1.hum1@aarch64, nodejs20-20.20.2-1.hum1@src, nodejs20-20.20.2-1.hum1@x86_64 +14
- RHSA-2026:7655 Released 2026-04-11 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images yarnpkg-1.22.22-18.1.hum1@aarch64, yarnpkg-1.22.22-18.1.hum1@src, yarnpkg-1.22.22-18.1.hum1@x86_64
- RHSA-2026:7378 Released 2026-04-10 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images nodejs25-25.9.0-1.1.hum1@aarch64, nodejs25-25.9.0-1.1.hum1@src, nodejs25-25.9.0-1.1.hum1@x86_64 +14
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Discovery 2 | Affected | No fix yet |
| Red Hat Hardened Images | Fixed | RHSA-2026:26994, RHSA-2026:33866, RHSA-2026:34478, RHSA-2026:34975, RHSA-2026:35272, RHSA-2026:7378, RHSA-2026:7655, RHSA-2026:9455 |
Not affected: 52 products
- Cryostat 4
- Gatekeeper 3
- Migration Toolkit for Applications 8
- Migration Toolkit for Containers
- Multicluster Engine for Kubernetes
- Network Observability Operator
- Node HealthCheck Operator
- OpenShift Lightspeed
- OpenShift Pipelines
- OpenShift Service Mesh 3
- Red Hat 3scale API Management Platform 2
- Red Hat AMQ Broker 7
- Red Hat Advanced Cluster Management for Kubernetes 2
- Red Hat Advanced Cluster Security 4
- Red Hat Ansible Automation Platform 2
- Red Hat Build of Keycloak
- Red Hat Build of Podman Desktop
- Red Hat Ceph Storage 9
- Red Hat Connectivity Link 1
- Red Hat Data Grid 8
- Red Hat Developer Hub 1
- Red Hat Directory Server 11
- Red Hat Directory Server 12
- Red Hat Directory Server 13
- Red Hat Edge Manager 1
- Red Hat Enterprise Linux 10
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
- Red Hat Enterprise Linux AI (RHEL AI) 3
- Red Hat Hardened Images
- Red Hat JBoss Enterprise Application Platform 7
- Red Hat JBoss Enterprise Application Platform 8
- Red Hat JBoss Enterprise Application Platform Expansion Pack
- Red Hat OpenShift AI (RHOAI)
- Red Hat OpenShift Container Platform 4
- Red Hat OpenShift Container Platform 5
- Red Hat OpenShift Dev Spaces
- Red Hat OpenShift GitOps
- Red Hat OpenShift Virtualization 4
- Red Hat Openshift Data Foundation 4
- Red Hat Quay 3
- Red Hat Satellite 6
- Red Hat Single Sign-On 7
- Red Hat Trusted Artifact Signer
- Red Hat Trusted Profile Analyzer
- Red Hat build of Apache Camel - HawtIO 4
- Red Hat build of Apache Camel for Spring Boot 4
- Red Hat build of Apicurio Registry 3
- Self-service automation portal 2
- streams for Apache Kafka 2
- streams for Apache Kafka 3
Timeline
- 2026-10-02 Threatist record created from CVE-2026-59870
- 2026-10-03 Alias added: GHSA-724g-mxrg-4qvm
- 2026-10-06 CVSS score changed · CNA
- 2026-10-06 Affected versions changed · CNA
- 2026-10-06 4 new references · CNA
- 2026-10-07 EPSS moved to the 50th–90th percentile
- 2026-10-07 Affected versions changed · Red Hat
- 2026-10-27 Affected versions changed · Red Hat
- 2026-10-30 Affected versions changed · Red Hat
References
Other 6
- https://github.com/nodeca/js-yaml/commit/22a8071ef032117bc6249c330b240ac3aa2d3ded
- https://github.com/nodeca/js-yaml/commit/c3cc4b0bb9ddb9af2dd9b61e0d56f5ce7983cd4a
- https://github.com/nodeca/js-yaml/releases/tag/3.15.1
- https://github.com/nodeca/js-yaml/releases/tag/4.3.1
- https://github.com/nodeca/js-yaml/releases/tag/5.2.1
- https://github.com/nodeca/js-yaml
More nodeca Js-yaml vulnerabilities
- TI-2026-42684 js-yaml: YAML merge-key chains can force quadratic CPU consumption CVSS 3.1HIGH 7.5
- TI-2026-42683 js-yaml: YAML merge-key chains can force quadratic CPU consumption CVSS 3.1HIGH 7.5
- TI-2013-04085 The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the… CVSS 2.0MEDIUM 6.8
- TI-2026-38621 js-yaml: Quadratic-complexity DoS in merge key handling via repeated aliases CVSS 3.1MEDIUM 5.3
- TI-2025-40064 js-yaml has prototype pollution in merge (<<) CVSS 3.1MEDIUM 5.3
Sources
- CVE-2026-59870 · CVE Program
- CVE-2026-59870 · NVD
- FIRST EPSS
- GHSA-724g-mxrg-4qvm · GitHub Advisory Database · CC BY 4.0
- CVE-2026-59870 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences