{"id":"CVE-2026-59879","summary":"Immutable.js `List` 32-bit trie overflow → unrecoverable DoS","details":"Immutable.js provides many Persistent Immutable data structures. Prior to 4.3.9 and 5.1.8, List#set, List#setSize, List#setIn, List#updateIn, and the functional set, setIn, and updateIn mishandle an index or size in the range 2 ** 30 to 2 ** 31 in setListBounds in src/List.js, causing an empty List to enter an uncatchable infinite loop, a populated List to allocate without bound until process abort, or setSize to silently wrap large values. This issue is fixed in versions 4.3.9 and 5.1.8.","aliases":["GHSA-v56q-mh7h-f735"],"modified":"2026-07-15T01:48:53.536719011Z","published":"2026-07-08T15:47:24.885Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-1284","CWE-190","CWE-400","CWE-835"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59879.json"},"references":[{"type":"WEB","url":"https://github.com/immutable-js/immutable-js/releases/tag/v4.3.9"},{"type":"WEB","url":"https://github.com/immutable-js/immutable-js/releases/tag/v5.1.8"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59879.json"},{"type":"ADVISORY","url":"https://github.com/immutable-js/immutable-js/security/advisories/GHSA-v56q-mh7h-f735"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-59879"},{"type":"FIX","url":"https://github.com/immutable-js/immutable-js/commit/a1a1ee412dcaa380ab325196283d06594ffe4b84"},{"type":"FIX","url":"https://github.com/immutable-js/immutable-js/commit/f0bc997d8eb9886aff2236635aa210a95a04304a"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/immutable-js/immutable-js","events":[{"introduced":"0"},{"fixed":"5da7919616a015cc03173f8f0bd3ee7101ab27f2"},{"introduced":"c90cdc263d94553b2439bbff4f761f4df7f361af"},{"fixed":"6496539bd1e9dfa75ce11b053e7d70d79e9ac6f7"},{"fixed":"a1a1ee412dcaa380ab325196283d06594ffe4b84"},{"fixed":"f0bc997d8eb9886aff2236635aa210a95a04304a"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"4.3.9"},{"introduced":"5.0.0"},{"fixed":"5.1.8"}],"source":["CPE_RANGE","REFERENCES"],"cpe":"cpe:2.3:a:immutable-js:immutable:*:*:*:*:*:node.js:*:*"}}],"versions":["v5.1.7","v5.1.6","v4.3.8","v5.1.5","v4.3.7","v5.1.4","v5.1.3","v5.1.2","v5.1.1","v5.0.2","v5.0.1","v4.3.6","v4.3.5","v4.3.4","v4.3.3","v4.3.1","v4.3.0","v4.2.2","v4.2.1","v4.2.0","v4.0.0","v4.0.0-rc.15","v4.0.0-rc.14","v4.0.0-rc.13","v4.0.0-rc.12","v4.0.0-rc.11","v4.0.0-rc.10","v4.0.0-rc.9","v4.0.0-rc.8","v4.0.0-rc.7","v4.0.0-rc.6","v4.0.0-rc.4","v3.8.1","v4.0.0-rc.3","v4.0.0-rc.2","v4.0.0-rc.1","v3.8.0","3.7.6","3.7.5","3.7.4","3.7.3","3.7.2","3.7.1","3.7.0","3.6.4","3.6.3","3.6.2","3.6.1","3.6.0","3.5.0","3.4.1","3.4.0","3.3.0","3.2.1","3.2.0","3.1.0","3.0.3","3.0.2","3.0.1","3.0.0","2.6.2","2.6.1","2.6.0","2.5.1","2.5.0","2.3.2","2.3.1","2.3.0","2.2.2","2.2.1","2.2.0","2.1.0","2.0.17","2.0.16","2.0.15","2.0.14","2.0.13","2.0.12","2.0.11","2.0.10","2.0.9","2.0.8","2.0.7","2.0.6","2.0.5","2.0.4"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-59879.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"}]}