CVE-2026-123865

Public on 2026-11-11
Modified on 2026-11-11
Description
An unauthenticated HTTP/2 client can permanently leak Node.js server memory and file descriptors. If a peer triggers a protocol error, for example an oversized frame header, while the session is already shutting down, nghttp2 tears the session down internally but Node.js never notices, leaving a dangling session: the socket stays in CLOSE_WAIT and all of Node.js's HTTP/2 state for that connection is held in memory indefinitely, with no further cost to the attacker. The attacker can start the shutdown remotely by sending GOAWAY(NO_ERROR), so it is reliable against default HTTP/2 servers. It is an incomplete-fix case of CVE-2026-48937: that fix detected nghttp2 internal terminations by watching for GOAWAY sent while not shutting down, but missed terminations that arrive while the session is already shutting down. This vulnerability affects Node.js 26.x, 24.x, and 22.x.
Severity
Important severity
Important
See what this means
CVSS v3 Base Score
7.5
See breakdown

Affected Packages

Platform Package Release Date Advisory Status
Amazon Linux 2023 nodejs No Fix Planned
Amazon Linux 2 - Core nodejs-packaging Not Affected
Amazon Linux 2023 nodejs-packaging Not Affected
Amazon Linux 2023 nodejs20 No Fix Planned
Amazon Linux 2023 nodejs20-typescript No Fix Planned
Amazon Linux 2023 nodejs22 Pending Fix
Amazon Linux 2023 nodejs22-typescript Not Affected
Amazon Linux 2023 nodejs24 Pending Fix
Amazon Linux 2027 Preview nodejs24 Pending Fix
Amazon Linux 2023 nodejs24-typescript Not Affected
Amazon Linux 2027 Preview nodejs24-typescript Not Affected

CVSS Scores

Score Type Score Vector
Amazon Linux CVSSv3 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H