Skip to content
OpenAdvisories
High · 8.2 Public exploit CVE-2024-27983 EUVD-2024-25157GHSA-j65r-8hrg-qc6x

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 …

Published Apr 9, 2024 · Updated Nov 4, 2025 · Assigned by hackerone

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 products

VendorProductAffectedFixed
NodeJS Node 4.0 – < 4.*, 5.0 – < 5.*, 6.0 – < 6.*, 7.0 – < 7.*, 8.0 – < 8.*, 9.0 – < 9.*, 10.0 – < 10.*, 11.0 – < 11.*, 12.0 – < 12.*, 13.0 – < 13.*, 14.0 – < 14.*, 15.0 – < 15.*, 16.0 – < 16.*, 17.0 – < 17.*, 18.0 – < 18.20.1, 19.0 – < 19.*, 20.0 – < 20.12.1, 21.0 – < 21.7.2 4.*

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 nodejs 18.20.1+dfsg-1 —
Debian 13 nodejs 18.20.1+dfsg-1 —
Debian 12 nodejs 18.20.4+dfsg-1~deb12u1 DSA-5991-1
Debian 11 nodejs 12.22.12~dfsg-1~deb11u5 DLA-3886-1
ReleasePackageFixed inAdvisory
Ubuntu 24.04 LTS nodejs No fix yet —
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 22.04 LTS nodejs No fix yet —
Ubuntu Pro 20.04 LTS nodejs No fix yet —
ReleasePackageFixed inAdvisory
RHEL 9 nodejs +3 1:16.20.2-8.el9_4 RHSA-2024:2910, RHSA-2024:2853, RHSA-2024:2779
RHEL 9 nodejs-devel 1:18.20.2-2.module+el9.4.0+21742+692df1ea RHSA-2024:2853, RHSA-2024:2779
RHEL 9 nodejs-nodemon 3.0.1-1.module+el9.3.0.z+20478+84a9f781 RHSA-2024:2853, RHSA-2024:2779
RHEL 9 nodejs-packaging +1 2021.06-4.module+el9.1.0+15718+e52ec601 RHSA-2024:2853, RHSA-2024:2779
RHEL 9 npm 1:8.19.4-1.16.20.2.8.el9_4 RHSA-2024:2910, RHSA-2024:2853, RHSA-2024:2779
RHEL 8 nodejs +3 1:18.20.2-1.module+el8.9.0+21767+537f34ee RHSA-2024:2780, RHSA-2024:2778
RHEL 8 nodejs-nodemon 3.0.1-1.module+el8.9.0+20473+c4e3d824 RHSA-2024:2780, RHSA-2024:2778
RHEL 8 nodejs-packaging +1 2021.06-4.module+el8.9.0+19519+e25b965a RHSA-2024:2780, RHSA-2024:2778
RHEL 8 npm 1:10.5.0-1.18.20.2.1.module+el8.9.0+21767+537f34ee RHSA-2024:2780, RHSA-2024:2778
RHEL 3 rh-nodejs14-nodejs +3 14.21.3-7.el7 RHSA-2024:3472
RHEL 3 rh-nodejs14-npm 6.14.18-14.21.3.7.el7 RHSA-2024:3472
Show 6 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
RHEL 9.2 EUS nodejs +3 1:16.20.2-5.el9_2.3 RHSA-2024:3544, RHSA-2024:2937
RHEL 9.2 EUS nodejs-devel 1:18.20.2-2.module+el9.2.0+21812+f1e61652 RHSA-2024:3544
RHEL 9.2 EUS nodejs-nodemon 3.0.1-1.module+el9.2.0.z+19753+58118bc0 RHSA-2024:3544
RHEL 9.2 EUS nodejs-packaging +1 2021.06-4.module+el9.1.0+15718+e52ec601 RHSA-2024:3544
RHEL 9.2 EUS npm 1:8.19.4-1.16.20.2.5.el9_2.3 RHSA-2024:3544, RHSA-2024:2937
RHEL 9.0 EUS nodejs +3 1:16.20.2-6.el9_0 RHSA-2024:3545
RHEL 9.0 EUS npm 1:8.19.4-1.16.20.2.6.el9_0 RHSA-2024:3545
RHEL 8.8 EUS nodejs +3 1:16.20.2-4.module+el8.8.0+21791+70c4808d.1 RHSA-2024:4824, RHSA-2024:4353
RHEL 8.8 EUS nodejs-nodemon 3.0.1-1.module+el8.8.0+19757+8ca87034 RHSA-2024:4824, RHSA-2024:4353
RHEL 8.8 EUS nodejs-packaging 26-1.module+el8.8.0+19857+6d2a104d RHSA-2024:4824, RHSA-2024:4353
RHEL 8.8 EUS nodejs-packaging-bundler 2021.06-4.module+el8.7.0+15582+19c314fa RHSA-2024:4824
RHEL 8.8 EUS npm 1:8.19.4-1.16.20.2.4.module+el8.8.0+21791+70c4808d.1 RHSA-2024:4824, RHSA-2024:4353
RHEL 8.6 TUS nodejs +3 1:16.20.2-5.module+el8.6.0+21811+5a4561ff RHSA-2024:3553
RHEL 8.6 TUS nodejs-nodemon 3.0.1-1.module+el8.6.0+19765+366b9144 RHSA-2024:3553
RHEL 8.6 TUS nodejs-packaging 26-1.module+el8.6.0+19856+c0c87259 RHSA-2024:3553
RHEL 8.6 TUS npm 1:8.19.4-1.16.20.2.5.module+el8.6.0+21811+5a4561ff RHSA-2024:3553
RHEL 8.6 E4S nodejs +3 1:16.20.2-5.module+el8.6.0+21811+5a4561ff RHSA-2024:3553
RHEL 8.6 E4S nodejs-nodemon 3.0.1-1.module+el8.6.0+19765+366b9144 RHSA-2024:3553
RHEL 8.6 E4S nodejs-packaging 26-1.module+el8.6.0+19856+c0c87259 RHSA-2024:3553
RHEL 8.6 E4S npm 1:8.19.4-1.16.20.2.5.module+el8.6.0+21811+5a4561ff RHSA-2024:3553
RHEL 8.6 AUS nodejs +3 1:16.20.2-5.module+el8.6.0+21811+5a4561ff RHSA-2024:3553
RHEL 8.6 AUS nodejs-nodemon 3.0.1-1.module+el8.6.0+19765+366b9144 RHSA-2024:3553
RHEL 8.6 AUS nodejs-packaging 26-1.module+el8.6.0+19856+c0c87259 RHSA-2024:3553
RHEL 8.6 AUS npm 1:8.19.4-1.16.20.2.5.module+el8.6.0+21811+5a4561ff RHSA-2024:3553

AlmaLinux

Errata ↗
ReleasePackageFixed inAdvisory
AlmaLinux 9 nodejs +3 1:16.20.2-8.el9_4 ALSA-2024:2910, ALSA-2024:2853, ALSA-2024:2779
AlmaLinux 9 nodejs-devel 1:18.20.2-2.module_el9.4.0+99+a01f7676 ALSA-2024:2853, ALSA-2024:2779
AlmaLinux 9 nodejs-nodemon 3.0.1-1.module_el9.2.0+36+853e48f5 ALSA-2024:2853, ALSA-2024:2779
AlmaLinux 9 nodejs-packaging +1 2021.06-4.module_el9.1.0+13+d9a595ea ALSA-2024:2853, ALSA-2024:2779
AlmaLinux 9 npm 1:8.19.4-1.16.20.2.8.el9_4 ALSA-2024:2910, ALSA-2024:2853, ALSA-2024:2779
AlmaLinux 8 nodejs +3 1:18.20.2-1.module_el8.9.0+3828+c9fa9644 ALSA-2024:2780, ALSA-2024:2778
AlmaLinux 8 nodejs-nodemon 3.0.1-1.module_el8.8.0+3613+1ed8c91d ALSA-2024:2780, ALSA-2024:2778
AlmaLinux 8 nodejs-packaging +1 2021.06-4.module_el8.7.0+3343+ea2b7901 ALSA-2024:2780, ALSA-2024:2778
AlmaLinux 8 npm 1:10.5.0-1.18.20.2.1.module_el8.9.0+3828+c9fa9644 ALSA-2024:2780, ALSA-2024:2778

Rocky Linux

Errata ↗
ReleasePackageFixed inAdvisory
Rocky Linux 9 nodejs 1:16.20.2-8.el9_4 RLSA-2024:2910
Rocky Linux 9 nodejs-nodemon 3.0.1-1.module+el9.5.0+31770+0da7192d RLSA-2024:2853, RLSA-2024:2779
Rocky Linux 9 nodejs-packaging 2021.06-4.module+el9.5.0+31770+0da7192d RLSA-2024:2853, RLSA-2024:2779
Rocky Linux 8 nodejs 1:18.20.2-1.module+el8.9.0+1803+9ac8b495 RLSA-2024:2780, RLSA-2024:2778
Rocky Linux 8 nodejs-nodemon 3.0.1-1.module+el8.8.0+1459+02651ab6 RLSA-2024:2780, RLSA-2024:2778
Rocky Linux 8 nodejs-packaging 2021.06-4.module+el8.7.0+1072+5b168780 RLSA-2024:2780, RLSA-2024:2778
ReleasePackageFixed inAdvisory
SLES 15 SP5 nodejs18 18.20.1-150400.9.21.3 SUSE-SU-2024:1309-1
SLES 15 SP5 nodejs20 20.12.1-150500.11.9.2 SUSE-SU-2024:1301-1
SLES 15 SP4 nodejs16 16.20.2-150400.3.33.1 SUSE-SU-2024:1308-1
SLES 15 SP4 nodejs18 18.20.1-150400.9.21.3 SUSE-SU-2024:1309-1
SLES 15 SP3 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SLES 15 SP3 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SLES 15 SP3 nodejs16 16.20.2-150300.7.36.2 SUSE-SU-2024:1306-1
SLES 15 SP2 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SLES 15 SP2 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SLES 12 nodejs16 16.20.2-8.42.1 SUSE-SU-2024:1305-1
SLES 12 nodejs18 18.20.1-8.21.1 SUSE-SU-2024:1307-1
Show 8 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 15 SP4 nodejs16 16.20.2-150400.3.33.1 SUSE-SU-2024:1308-1
SLES for SAP 15 SP4 nodejs18 18.20.1-150400.9.21.3 SUSE-SU-2024:1309-1
SLES for SAP 15 SP3 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SLES for SAP 15 SP3 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SLES for SAP 15 SP3 nodejs16 16.20.2-150300.7.36.2 SUSE-SU-2024:1306-1
SLES for SAP 15 SP2 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SLES for SAP 15 SP2 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SLE HPC 15 SP4 nodejs16 16.20.2-150400.3.33.1 SUSE-SU-2024:1308-1
SLE HPC 15 SP4 nodejs18 18.20.1-150400.9.21.3 SUSE-SU-2024:1309-1
SLE HPC 15 SP3 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SLE HPC 15 SP3 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SLE HPC 15 SP3 nodejs16 16.20.2-150300.7.36.2 SUSE-SU-2024:1306-1
SLE HPC 15 SP2 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SLE HPC 15 SP2 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SUSE Manager Server 4.3 nodejs16 16.20.2-150400.3.33.1 SUSE-SU-2024:1308-1
SUSE Manager Server 4.3 nodejs18 18.20.1-150400.9.21.3 SUSE-SU-2024:1309-1
SUSE Enterprise Storage 7.1 nodejs12 12.22.12-150200.4.59.1 SUSE-SU-2024:1346-1
SUSE Enterprise Storage 7.1 nodejs14 14.21.3-150200.15.58.1 SUSE-SU-2024:1355-1
SUSE Enterprise Storage 7.1 nodejs16 16.20.2-150300.7.36.2 SUSE-SU-2024:1306-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed nodejs20 20.12.1-1.1 openSUSE-SU-2024:13851-1
openSUSE Tumbleweed nodejs21 21.7.2-1.1 openSUSE-SU-2024:13852-1
openSUSE Leap 15.5 nodejs18 18.20.1-150400.9.21.3 SUSE-SU-2024:1309-1
openSUSE Leap 15.5 nodejs20 20.12.1-150500.11.9.2 SUSE-SU-2024:1301-1
ReleasePackageFixed inAdvisory
Alpine v3.24 nodejs 20.12.1-r0 —
Alpine v3.24 nodejs-current 21.7.2-r0 —
Alpine v3.23 nodejs 20.12.1-r0 —
Alpine v3.23 nodejs-current 21.7.2-r0 —
Alpine v3.22 nodejs 20.12.1-r0 —
Alpine v3.22 nodejs-current 21.7.2-r0 —
Alpine v3.21 nodejs 20.12.1-r0 —
Alpine v3.21 nodejs-current 21.7.2-r0 —
Alpine v3.20 nodejs 20.12.1-r0 —
Alpine v3.20 nodejs-current 21.7.2-r0 —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Alpine v3.19 nodejs 20.12.1-r0 —
Alpine v3.19 nodejs-current 21.7.2-r0 —
Alpine v3.18 nodejs 18.20.1-r0 —
Alpine v3.17 nodejs 18.20.1-r0 —

Amazon Linux

ReleasePackageFixed inAdvisory
Amazon Linux 2023 nodejs +4 1:18.18.2-1.amzn2023.0.4 ALAS2023-2024-593
Amazon Linux 2023 nodejs-npm 1:9.8.1-1.18.18.2.1.amzn2023.0.4 ALAS2023-2024-593
Amazon Linux 2023 nodejs20 +4 1:20.12.2-1.amzn2023.0.2 ALAS2023-2024-594
Amazon Linux 2023 nodejs20-npm 1:10.5.0-1.20.12.2.1.amzn2023.0.2 ALAS2023-2024-594
Amazon Linux 2023 v8-10.2-devel 3:10.2.154.26-1.18.18.2.1.amzn2023.0.4 ALAS2023-2024-593
Amazon Linux 2023 v8-11.3-devel 3:11.3.244.8-1.20.12.2.1.amzn2023.0.2 ALAS2023-2024-594

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 nodejs 20.14.0-1 —
Azure Linux 2 (CBL-Mariner) nodejs18 18.18.2-7 —

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 9 nodejs +3 1:16.20.2-8.0.1.el9_4 ELSA-2024-2910, ELSA-2024-2853, ELSA-2024-2779
Oracle Linux 9 nodejs-devel 1:18.20.2-1.module+el9.4.0+90321+c72a88c5 ELSA-2024-2853, ELSA-2024-2779
Oracle Linux 9 nodejs-nodemon 3.0.1-1.module+el9.3.0+90066+12d4a8d7 ELSA-2024-2853, ELSA-2024-2779
Oracle Linux 9 nodejs-packaging +1 2021.06-4.module+el9.1.0+20762+f52d7401 ELSA-2024-2853, ELSA-2024-2779
Oracle Linux 9 npm 1:8.19.4-1.16.20.2.8.0.1.el9_4 ELSA-2024-2910, ELSA-2024-2853, ELSA-2024-2779
Oracle Linux 8 nodejs +3 1:18.20.2-1.module+el8.9.0+90319+0b1e7189 ELSA-2024-2780, ELSA-2024-2778
Oracle Linux 8 nodejs-nodemon 3.0.1-1.module+el8.9.0+90082+b6a613a6 ELSA-2024-2780, ELSA-2024-2778
Oracle Linux 8 nodejs-packaging +1 2021.06-4.module+el8.9.0+90082+b6a613a6 ELSA-2024-2780, ELSA-2024-2778
Oracle Linux 8 npm 1:10.5.0-1.18.20.2.1.module+el8.9.0+90319+0b1e7189 ELSA-2024-2780, ELSA-2024-2778

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling nodejs-16 No fix yet —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

  • lirantal/CVE-2024-27983-nodejs-http2 ★ 7 · Apr 14, 2024

    CVE-2024-27983 this repository builds up a vulnerable HTTP2 Node.js server (`server-nossl.js`) based on CVE-2024-27983 which exploits a continuation flood vulnerability in HTTP2 servers.

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Advisories 50

References