Description
js-yaml is a JavaScript YAML parser and dumper. From 5.0.0 before 5.2.0, when merge keys are enabled, js-yaml can spend quadratic CPU time parsing a document whose size grows only linearly when a chain of mappings uses merge keys where each mapping merges the previous one. This issue is fixed in version 5.2.0.
Published: 2026-07-08
Score: 5.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Js‑yaml, a JavaScript YAML parser and dumper, contains a flaw that causes the parser to consume quadratic amounts of CPU time when processing documents that use a chained merging of mappings. The flaw arises only when merge keys are enabled and the document contains a sequence where each mapping merges the previous one. As a result, a YAML file whose size grows linearly can lead to an exponential growth in processing time, exhausting CPU resources and potentially rendering the service unavailable.

Affected Systems

Nodeca js‑yaml versions from 5.0.0 up to, but not including, 5.2.0 are affected. Systems that run RedHat’s Hummingbird component are also impacted.

Risk and Exploitability

The CVSS score of 5.3 indicates a moderate severity issue. Its EPSS score of < 1 % reflects a low but non‑zero probability of exploitation, and it is not listed in the CISA KEV catalog. Based on the description, it is inferred that attackers can exploit the flaw by supplying a specially crafted YAML document to any running service that parses external YAML with merge key support enabled, thereby causing CPU exhaustion and service degradation.

Generated by OpenCVE AI on August 13, 2026 at 12:14 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade js‑yaml to version 5.2.0 or later
  • Disable merge key support in js‑yaml when parsing untrusted YAML input
  • Audit and sanitize existing YAML data to remove merge‑key chains before parsing

Generated by OpenCVE AI on August 13, 2026 at 12:14 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-g796-fgmg-93mv js-yaml: YAML merge-key chains can force quadratic CPU consumption in js-yaml
History

Fri, 10 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
First Time appeared Redhat
Redhat hummingbird
Weaknesses CWE-1333
CPEs cpe:/a:redhat:hummingbird:1
Vendors & Products Redhat
Redhat hummingbird
References
Metrics threat_severity

None

threat_severity

Important


Thu, 09 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 08 Jul 2026 17:00:00 +0000

Type Values Removed Values Added
First Time appeared Nodeca
Nodeca js-yaml
Vendors & Products Nodeca
Nodeca js-yaml

Wed, 08 Jul 2026 15:45:00 +0000

Type Values Removed Values Added
Description js-yaml is a JavaScript YAML parser and dumper. From 5.0.0 before 5.2.0, when merge keys are enabled, js-yaml can spend quadratic CPU time parsing a document whose size grows only linearly when a chain of mappings uses merge keys where each mapping merges the previous one. This issue is fixed in version 5.2.0.
Title js-yaml: YAML merge-key chains can force quadratic CPU consumption
Weaknesses CWE-407
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L'}


Subscriptions

Nodeca Js-yaml
Redhat Hummingbird
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-09T13:42:54.035Z

Reserved: 2026-07-07T15:41:53.607Z

Link: CVE-2026-59868

cve-icon Vulnrichment

Updated: 2026-07-09T13:42:46.163Z

cve-icon NVD

Status : Analyzed

Published: 2026-07-08T16:16:33.270

Modified: 2026-07-13T15:06:34.173

Link: CVE-2026-59868

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-08T15:18:19Z

Links: CVE-2026-59868 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T12:15:17Z

Weaknesses
  • CWE-1333

    Inefficient Regular Expression Complexity

  • CWE-407

    Inefficient Algorithmic Complexity

  • CWE-770

    Allocation of Resources Without Limits or Throttling