← Back to browse · API

CVE-2024-27983

Severity
HIGH
CVSS
8.2
EPSS
0.87211
Risk score
63.32
CISA KEV
No
PoC
No
Published
2024-04-09
Modified
2025-11-04
First seen
2026-08-07
Aliases
EUVD-2024-25157, GHSA-J65R-8HRG-QC6X
Products
nodejs:Node 10.0 <10.*, nodejs:Node 11.0 <11.*, nodejs:Node 12.0 <12.*, nodejs:Node 13.0 <13.*, nodejs:Node 14.0 <14.*, nodejs:Node 15.0 <15.*, nodejs:Node 16.0 <16.*, nodejs:Node 17.0 <17.*, nodejs:Node 18.0 <18.20.1, nodejs:Node 19.0 <19.*, nodejs:Node 20.0 <20.12.1, nodejs:Node 21.0 <21.7.2, nodejs:Node 4.0 <4.*, nodejs:Node 5.0 <5.*, nodejs:Node 6.0 <6.*, nodejs:Node 7.0 <7.*, nodejs:Node 8.0 <8.*, nodejs:Node 9.0 <9.*
Sources
euvd EUVD-2024-25157

Description

An attacker can make the Node.js HTTP/2 server completely unavailable by sending a small amount of HTTP/2 frames packets with a few HTTP/2 frames inside. It is possible to leave some data in nghttp2 memory after reset when headers with HTTP/2 CONTINUATION frame are sent to the server and then a TCP connection is abruptly closed by the client triggering the Http2Session destructor while header frames are still being processed (and stored in memory) causing a race condition.

References