Advisory Database
  • Advisories
  • Dependency Scanning
  1. npm
  2. ›
  3. immutable
  4. ›
  5. CVE-2026-59879

CVE-2026-59879: Immutable.js `List` 32-bit trie overflow → unrecoverable DoS

July 21, 2026

List#set, List#setSize, List#setIn, List#updateIn (and the functional set / setIn / updateIn) mishandle an index or size in the range [2 ** 30, 2 ** 31):

  • On an empty List the operation enters an uncatchable infinite loop (a tight CPU spin; a surrounding try/catch never regains control). Only killing the worker recovers it.
  • On a populated List (≥ 32 elements — i.e. any array of ≥ 32 items turned into a List by fromJS) the loop allocates without bound → heap exhaustion → the process aborts (SIGABRT, exit 134, or kernel OOM-kill 137). A real crash, not a recoverable error.

The index may be a numeric string, so it can come straight from a request body, URL, or key-path. A single small unauthenticated request is enough.

There is also a companion silent data-corruption issue in setSize:

List([1, 2, 3]).setSize(2 ** 31); // before fix => size 0  (silently cleared)
List([1, 2, 3]).setSize(2 ** 32 + 5); // before fix => size 5  (huge value wraps to 5)

References

  • github.com/advisories/GHSA-v56q-mh7h-f735
  • github.com/immutable-js/immutable-js/commit/a1a1ee412dcaa380ab325196283d06594ffe4b84
  • github.com/immutable-js/immutable-js/commit/f0bc997d8eb9886aff2236635aa210a95a04304a
  • github.com/immutable-js/immutable-js/releases/tag/v4.3.9
  • github.com/immutable-js/immutable-js/releases/tag/v5.1.8
  • github.com/immutable-js/immutable-js/security/advisories/GHSA-v56q-mh7h-f735
  • nvd.nist.gov/vuln/detail/CVE-2026-59879

Code Behaviors & Features

Detect and mitigate CVE-2026-59879 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions before 4.3.9, all versions starting from 5.0.0-beta.1 before 5.1.8

Fixed versions

  • 4.3.9
  • 5.1.8

Solution

Upgrade to versions 4.3.9, 5.1.8 or above.

Impact 7.5 HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Learn more about CVSS

Weakness

  • CWE-1284: Improper Validation of Specified Quantity in Input
  • CWE-190: Integer Overflow or Wraparound
  • CWE-400: Uncontrolled Resource Consumption
  • CWE-835: Loop with Unreachable Exit Condition ('Infinite Loop')

Source file

npm/immutable/CVE-2026-59879.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 22 Jul 2026 00:17:13 +0000.