CVE-2026-21717CWE-328

CVE-2026-21717

Medium · published March 31, 2026

CVSS v3.1
5.9
EPSS
0%
Percentile
17.9
In the wild
Unconfirmed
What it is

A flaw in V8's string hashing mechanism causes integer-like strings to be hashed to their numeric value, making hash collisions trivially predictable. By crafting a request that causes many such collisions in V8's internal string table, an attacker can significantly degrade performance of the Node.js process.

The most common trigger is any endpoint that calls `JSON.parse()` on attacker-controlled input, as JSON parsing automatically internalizes short strings into the affected hash table.

This vulnerability affects **20.x, 22.x, 24.x, and 25.x**.

The record
Technical detail
CVSS v3.1
5.9 · MEDIUM
Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00268 · 17.9th percentile
Weakness
CWE-328 · Use of Weak Hash
Published
2026-03-31T00:16Z
Affected products (4)
ProductVersionsFixed in
nodejs/node.js≤ 20.20.1—
nodejs/node.js≥ 22.0.0, ≤ 22.22.1—
nodejs/node.js≥ 24.0.0, ≤ 24.14.0—
nodejs/node.js≥ 25.0.0, ≤ 25.8.1—
References (1)
EPSS history
Timeline
  • 30 MAR 19:07Z
    A flaw in V8's string hashing mechanism causes integer-like strings to be hashed to their numeric value, making hash collisions trivially predictable
    cvelistv5