Node.js HTTP/2 DoS via header frame race condition
CVE-2024-27983 Published on April 9, 2024

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.

NVD

Weakness Type

What is a Race Condition Vulnerability?

The program contains a code sequence that can run concurrently with other code, and the code sequence requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence that is operating concurrently.

CVE-2024-27983 has been classified to as a Race Condition vulnerability or weakness.


Products Associated with CVE-2024-27983

stack.watch emails you whenever new vulnerabilities are published in Oracle or nodejs. Just hit a watch button to start following.

 
 

Affected Versions

NodeJS Node: nodejs:

Exploit Probability

EPSS
75.93%
Percentile
98.91%

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.