Node.js <26.9.0 / <24.22.0 HTTP/2 stream UAF (CVE-2026-123866)
CVE-2026-123866 Published on November 11, 2026
Node.js is vulnerable to HTTP/2 response memory disclosure via a use-after-free during stream teardown
A use-after-free in Node.js HTTP/2 stream teardown can leak response memory, including the contents of other connections' response buffers, to a peer. When a stream is torn down while a write is still backpressured, for example by a peer RST_STREAM or by the server's own per-stream timeout destroying the stream, the stream's response buffer is freed but a reference to it is still used, so freed or unrelated heap memory is written to the socket instead of the intended response. On Node.js 26.x and 24.x the teardown can be driven purely by a remote peer once the window-size change from 26.9.0 and 24.22.0 is present, and on all supported lines the same defect is reachable through an application-initiated teardown such as a per-stream idle timeout. This vulnerability affects Node.js 26.x, 24.x, and 22.x.
Weakness Type
What is a Dangling pointer Vulnerability?
Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code.
CVE-2026-123866 has been classified to as a Dangling pointer vulnerability or weakness.
Affected Versions
nodejs node:- Version 0.0.0 and below 22.23.5 is affected.
- Version 23.0.0 and below 24.22.3 is affected.
- Version 25.0.0 and below 26.13.1 is affected.
Exploit Probability
EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.