Vulnerability · Published Apr 9, 2024 · Assigned by hackerone

CVE-2024-27983

High 8.2

In plain English

A high-severity race condition in Node from NodeJS. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 87.2% (higher than 99.8% of all known vulnerabilities). Ready-made attack tooling exists: public proof-of-concept code. Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.0)8.2High
Exploit odds (30 days)87.2%top 0.2% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack tooling1Public PoC

Official 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.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
AlmaLinux:8nodejs1:18.20.2-1.module_el8.9.0+3828+c9fa9644ALSA-2024:2780
AlmaLinux:8nodejs1:20.12.2-2.module_el8.9.0+3827+11b91f3eALSA-2024:2778
AlmaLinux:9nodejs1:20.12.2-2.module_el9.4.0+100+71fc9528ALSA-2024:2853
AlmaLinux:9nodejs1:18.20.2-2.module_el9.4.0+99+a01f7676ALSA-2024:2779
AlmaLinux:9nodejs1:16.20.2-8.el9_4ALSA-2024:2910
AlmaLinux:8nodejs-devel1:20.12.2-2.module_el8.9.0+3827+11b91f3eALSA-2024:2778
AlmaLinux:8nodejs-devel1:18.20.2-1.module_el8.9.0+3828+c9fa9644ALSA-2024:2780
AlmaLinux:9nodejs-devel1:18.20.2-2.module_el9.4.0+99+a01f7676ALSA-2024:2779
AlmaLinux:9nodejs-devel1:20.12.2-2.module_el9.4.0+100+71fc9528ALSA-2024:2853
AlmaLinux:8nodejs-docs1:18.20.2-1.module_el8.9.0+3828+c9fa9644ALSA-2024:2780
AlmaLinux:8nodejs-docs1:20.12.2-2.module_el8.9.0+3827+11b91f3eALSA-2024:2778
AlmaLinux:9nodejs-docs1:16.20.2-8.el9_4ALSA-2024:2910
AlmaLinux:9nodejs-docs1:18.20.2-2.module_el9.4.0+99+a01f7676ALSA-2024:2779
AlmaLinux:9nodejs-docs1:20.12.2-2.module_el9.4.0+100+71fc9528ALSA-2024:2853
AlmaLinux:8nodejs-full-i18n1:18.20.2-1.module_el8.9.0+3828+c9fa9644ALSA-2024:2780
AlmaLinux:8nodejs-full-i18n1:20.12.2-2.module_el8.9.0+3827+11b91f3eALSA-2024:2778
AlmaLinux:9nodejs-full-i18n1:20.12.2-2.module_el9.4.0+100+71fc9528ALSA-2024:2853
AlmaLinux:9nodejs-full-i18n1:16.20.2-8.el9_4ALSA-2024:2910
AlmaLinux:9nodejs-full-i18n1:18.20.2-2.module_el9.4.0+99+a01f7676ALSA-2024:2779
AlmaLinux:9nodejs-libs1:16.20.2-8.el9_4ALSA-2024:2910
AlmaLinux:8nodejs-nodemon3.0.1-1.module_el8.8.0+3613+1ed8c91dALSA-2024:2780
AlmaLinux:8nodejs-nodemon3.0.1-1.module_el8.9.0+3731+490e3ce5ALSA-2024:2778
AlmaLinux:9nodejs-nodemon3.0.1-1.module_el9.2.0+36+853e48f5ALSA-2024:2779
AlmaLinux:9nodejs-nodemon3.0.1-1.module_el9.3.0+47+c33bc288ALSA-2024:2853
AlmaLinux:8nodejs-packaging2021.06-4.module_el8.9.0+3684+11b9e959ALSA-2024:2778
AlmaLinux:8nodejs-packaging2021.06-4.module_el8.7.0+3343+ea2b7901ALSA-2024:2780
AlmaLinux:9nodejs-packaging2021.06-4.module_el9.1.0+13+d9a595eaALSA-2024:2779
AlmaLinux:9nodejs-packaging2021.06-4.module_el9.3.0+88+29afeaa2ALSA-2024:2853
AlmaLinux:8nodejs-packaging-bundler2021.06-4.module_el8.7.0+3343+ea2b7901ALSA-2024:2780
AlmaLinux:8nodejs-packaging-bundler2021.06-4.module_el8.9.0+3684+11b9e959ALSA-2024:2778
AlmaLinux:9nodejs-packaging-bundler2021.06-4.module_el9.1.0+13+d9a595eaALSA-2024:2779
AlmaLinux:9nodejs-packaging-bundler2021.06-4.module_el9.3.0+88+29afeaa2ALSA-2024:2853
AlmaLinux:8npm1:10.5.0-1.18.20.2.1.module_el8.9.0+3828+c9fa9644ALSA-2024:2780
AlmaLinux:8npm1:10.5.0-1.20.12.2.2.module_el8.9.0+3827+11b91f3eALSA-2024:2778
AlmaLinux:9npm1:10.5.0-1.20.12.2.2.module_el9.4.0+100+71fc9528ALSA-2024:2853
AlmaLinux:9npm1:10.5.0-1.18.20.2.2.module_el9.4.0+99+a01f7676ALSA-2024:2779
AlmaLinux:9npm1:8.19.4-1.16.20.2.8.el9_4ALSA-2024:2910
Alpine:v3.20nodejs20.12.1-r0ALPINE-CVE-2024-27983
Alpine:v3.21nodejs20.12.1-r0ALPINE-CVE-2024-27983
Alpine:v3.22nodejs20.12.1-r0ALPINE-CVE-2024-27983
Alpine:v3.23nodejs20.12.1-r0ALPINE-CVE-2024-27983
Alpine:v3.24nodejs20.12.1-r0ALPINE-CVE-2024-27983
Alpine:v3.20nodejs-current21.7.2-r0ALPINE-CVE-2024-27983
Alpine:v3.21nodejs-current21.7.2-r0ALPINE-CVE-2024-27983
Alpine:v3.22nodejs-current21.7.2-r0ALPINE-CVE-2024-27983
Alpine:v3.23nodejs-current21.7.2-r0ALPINE-CVE-2024-27983
Alpine:v3.24nodejs-current21.7.2-r0ALPINE-CVE-2024-27983
Debian:12nodejs18.20.4+dfsg-1~deb12u1DEBIAN-CVE-2024-27983
Debian:12nodejs18.20.4+dfsg-1~deb12u1DSA-5991-1
Debian:13nodejs18.20.1+dfsg-1DEBIAN-CVE-2024-27983
Debian:14nodejs18.20.1+dfsg-1DEBIAN-CVE-2024-27983
Rocky Linux:8nodejs1:18.20.2-1.module+el8.9.0+1803+9ac8b495RLSA-2024:2780
Rocky Linux:8nodejs1:20.12.2-2.module+el8.9.0+1804+2708cc21RLSA-2024:2778
Rocky Linux:9nodejs1:16.20.2-8.el9_4RLSA-2024:2910
Rocky Linux:8nodejs-nodemon0:3.0.1-1.module+el8.8.0+1459+02651ab6RLSA-2024:2780
Rocky Linux:8nodejs-nodemon0:3.0.1-1.module+el8.8.0+1459+02651ab6RLSA-2024:2778
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32045+2e5d342dRLSA-2024:2779
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32322+a8b1fd01RLSA-2024:2779
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.5.0+31770+0da7192dRLSA-2024:2779
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32143+ae966e5bRLSA-2024:2779
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32144+1d29a396RLSA-2024:2779
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32185+bd121a25RLSA-2024:2779
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.5.0+31770+0da7192dRLSA-2024:2853
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32322+a8b1fd01RLSA-2024:2853
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32045+2e5d342dRLSA-2024:2853
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32143+ae966e5bRLSA-2024:2853
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32144+1d29a396RLSA-2024:2853
Rocky Linux:9nodejs-nodemon0:3.0.1-1.module+el9.6.0+32185+bd121a25RLSA-2024:2853
Rocky Linux:8nodejs-packaging0:2021.06-4.module+el8.7.0+1072+5b168780RLSA-2024:2780
Rocky Linux:8nodejs-packaging0:2021.06-4.module+el8.7.0+1072+5b168780RLSA-2024:2778
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32144+1d29a396RLSA-2024:2853
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32143+ae966e5bRLSA-2024:2853
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32048+5323bb50RLSA-2024:2853
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32045+2e5d342dRLSA-2024:2853
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.5.0+31770+0da7192dRLSA-2024:2853
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32322+a8b1fd01RLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32185+bd121a25RLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32144+1d29a396RLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32143+ae966e5bRLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32048+5323bb50RLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32045+2e5d342dRLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.5.0+31770+0da7192dRLSA-2024:2779
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32322+a8b1fd01RLSA-2024:2853
Rocky Linux:9nodejs-packaging0:2021.06-4.module+el9.6.0+32185+bd121a25RLSA-2024:2853
Ubuntu:24.04:LTSnodejsno fix listedUBUNTU-CVE-2024-27983

Affected products (as reported)

VendorProductVersions
NodeJS Node 4.0 – before 4.*5.0 – before 5.*6.0 – before 6.*7.0 – before 7.*8.0 – before 8.*9.0 – before 9.*10.0 – before 10.*11.0 – before 11.*

Weakness: CWE-362 · Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H

References