CVE-2024-37890 json
Denial of service when handling a request with many HTTP headers in ws
published 2024-06-17 2 y ago modified 2026-09-10 1 mo ago also EUVD-2024-1899 , GHSA-3h5v-q93c-6h6q
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.4%
- EPSS 1.4% chance of exploitation in 30 days, percentile 71%
- public exploits
- 0
- none known
Summary
ws is an open source WebSocket client and server for Node.js. A request with a number of headers exceeding theserver.maxHeadersCount threshold could be used to crash a ws server. The vulnerability was fixed in ws@8.17.1 (e55e510) and backported to ws@7.5.10 (22c2876), ws@6.2.3 (eeb76d3), and ws@5.2.4 (4abd8f6). In vulnerable versions of ws, the issue can be mitigated in the following ways: 1. Reduce the maximum allowed length of the request headers using the --max-http-header-size=size and/or the maxHeaderSize options so that no more headers than the server.maxHeadersCount limit can be sent. 2. Set server.maxHeadersCount to 0 so that no limit is applied.
Patch / fix
- npm ws 5.2.4, 6.2.3, 7.5.10, 8.17.1
- websockets ws 5.2.4, 6.2.3, 7.5.10, 8.17.1
- node-ws Debian 14, Debian 13 8.18.0+~cs13.7.11-1
debian advisories DEBIAN-CVE-2024-37890
- dotnet8.0 RHEL 10.0 8.0.113-2.el10_0
- dotnet-sdk-8.0 RHEL 10.0 8.0.113-2.el10_0
- dotnet-hostfxr-8.0 RHEL 10.0 8.0.13-2.el10_0
- dotnet-runtime-8.0 RHEL 10.0 8.0.13-2.el10_0
- dotnet-sdk-dbg-8.0 RHEL 10.0 8.0.113-2.el10_0
- dotnet-templates-8.0 RHEL 10.0 8.0.113-2.el10_0
- aspnetcore-runtime-8.0 RHEL 10.0 8.0.13-2.el10_0
- dotnet-runtime-dbg-8.0 RHEL 10.0 8.0.13-2.el10_0
red hat advisories RHBA-2025:4932RHBA-2024:9550RHBA-2024:9549
- github.com/websockets/ws@22c2876 commit
- github.com/websockets/ws@4abd8f6 commit
- github.com/websockets/ws@e55e510 commit
- github.com/websockets/ws@eeb76d3 commit
- github.com/websockets/ws#2231 pull request
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2024-37890 updated cvss 5.9
nodejs-ws: denial of service when handling a request with many HTTP headers
-
Red Hat .NET 6.0 on Red Hat Enterprise Linux rh-dotnet60-dotnet, rh-dotnet60-dotnet-host, rh-dotnet60-dotnet-sdk-6.0, rh-dotnet60-dotnet-hostfxr-6.0, rh-dotnet60-dotnet-runtime-6.0, rh-dotnet60-dotnet-templates-6.0, +6 moreaffected: workaround, no fix planned “Out of support scope”
-
Red Hat Migration Toolkit for Applications 6 nodejs-wsaffected: workaround, no fix planned “Will not fix”
-
Red Hat Migration Toolkit for Applications 7 mta/mta-cli-rhel9affected: workaround, no fix available “Fix deferred”
-
Red Hat Migration Toolkit for Runtimes nodejs-ws Red Hat OpenShift Serverless nodejs-ws nodejs-wsaffected: workaround, no fix planned “Will not fix”
-
Red Hat Ansible Automation Platform 2 ansible-automation-platform-25/lightspeed-rhel8affected: workaround, no fix available
-
Red Hat Ceph Storage 6 thriftaffected: workaround, no fix planned “Will not fix”
-
Red Hat Ceph Storage 7 thriftaffected: workaround, no fix available
-
Red Hat Enterprise Linux 7 dotnet6.0affected: workaround, no fix planned “Out of support scope”
show 14 moreshow fewer
-
Red Hat Enterprise Linux 9 librbd1, dotnet7.0, librados2, dotnet-host, dotnet-sdk-7.0, dotnet-hostfxr-7.0, +8 moreaffected: workaround, no fix available, no fix planned “Out of support scope”
-
Red Hat OpenShift Container Platform 4 openshift4/ose-console Red Hat Openshift Container Storage 4 ocs4/mcg-core-rhel8affected: workaround, no fix planned “Will not fix”
-
Red Hat Openshift Data Foundation 4 odf4/odf-console-rhel9affected: workaround, no fix available
-
Red Hat OpenShift Dev Spaces devspaces/code-rhel8, devspaces/dashboard-rhel8 Red Hat OpenShift GitOps openshift-gitops-1/gitops-operator-bundle Red Hat Quay 3 quay/quay-rhel8affected: workaround, no fix planned “Will not fix”
-
Red Hat Ceph Storage 7.1 rhceph/rhceph-7-rhel9 1791452477fixed: vendor fix RHSA-2026:83548
-
Red Hat CodeReady Linux Builder (v. 9) dotnet-sdk-6.0-source-built-artifacts 6.0.135-2.el9_5, dotnet-sdk-8.0-source-built-artifacts 8.0.110-3.el9_5fixed: vendor fix RHBA-2024:9550
-
Red Hat Developer Hub 1.3 for RHEL 9 rhdh/rhdh-hub-rhel9 1.3-124fixed: vendor fix RHBA-2024:9054
-
Red Hat Enterprise Linux AppStream (v. 9) dotnet6.0 6.0.135-2.el9_5, dotnet8.0 8.0.110-3.el9_5, dotnet-sdk-6.0 6.0.135-2.el9_5, dotnet-sdk-8.0 8.0.110-3.el9_5, dotnet-hostfxr-6.0 6.0.35-2.el9_5, dotnet-hostfxr-8.0 8.0.10-3.el9_5, +15 morefixed: vendor fix RHBA-2024:9550
-
Red Hat Enterprise Linux AppStream (v. 10) dotnet8.0 8.0.113-2.el10_0, dotnet-sdk-8.0 8.0.113-2.el10_0, dotnet-hostfxr-8.0 8.0.13-2.el10_0, dotnet-runtime-8.0 8.0.13-2.el10_0, dotnet-sdk-dbg-8.0 8.0.113-2.el10_0, dotnet-templates-8.0 8.0.113-2.el10_0, +6 more Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) dotnet-sdk-8.0-source-built-artifacts 8.0.113-2.el10_0fixed: vendor fix RHBA-2025:4932
-
Red Hat OpenShift Pipelines 1.15 openshift-pipelines 1772036471fixed: vendor fix RHSA-2026:3710
-
Red Hat RHODF 4.14 for RHEL 9 odf4/odf-console-rhel9 v4.14.18-3fixed: vendor fix RHSA-2025:8551
-
Red Hat RHODF 4.15 for RHEL 9 odf4/odf-console-rhel9 v4.15.14-2fixed: vendor fix RHSA-2025:8544
-
Red Hat RHODF 4.16 for RHEL 9 odf4/mcg-core-rhel9 v4.16.1-2, odf4/mcg-core-rhel9 v4.16.0-60, odf4/odf-console-rhel9 v4.16.2-2fixed: vendor fix RHSA-2024:4591
-
Red Hat Cryostat 2 nodejs-ws nodejs-ws Red Hat Multicluster Engine for Kubernetes multicluster-engine/multicluster-engine-console-mce-rhel9 Red Hat 3scale API Management Platform 2 3scale-system 3scale-system Red Hat Advanced Cluster Management for Kubernetes 2 rhacm2/console-rhel8 Red Hat Ansible Automation Platform 2 automation-controller, automation-eda-controller Red Hat build of Apache Camel - HawtIO 4 nodejs-ws nodejs-wsnot affected: vulnerable code not present
+8 more productsfewer
Red Hat build of Apicurio Registry 2 nodejs-ws nodejs-ws Red Hat Build of Keycloak nodejs-ws nodejs-ws Red Hat build of OptaPlanner 8 nodejs-ws nodejs-ws Red Hat Ceph Storage 5 ceph, cephadm, librbd1, librgw2, rbd-nbd, ceph-mds, +33 more Red Hat Ceph Storage 7.1 rhceph/grafana-rhel9 1791450715, rhceph/keepalived-rhel9 1791453133, rhceph/snmp-notifier-rhel9 1791450035, rhceph/rhceph-haproxy-rhel9 1791452229, rhceph/rhceph-promtail-rhel9 1791451373 Red Hat Data Grid 8 nodejs-ws nodejs-ws Red Hat Developer Hub 1.3 for RHEL 9 rhdh/rhdh-rhel9-operator 1.3-119, rhdh/rhdh-operator-bundle 1.3-118 Red Hat Discovery 1 discovery-server-container
10 more not affected in the full advisory
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
1.36% chance of exploitation in the next 30 days, higher than 71% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | ws | >=2.1.0, <5.2.4 >=6.0.0, <6.2.3 >=7.0.0, <7.5.10 >=8.0.0, <8.17.1 |
5.2.4 6.2.3 7.5.10 8.17.1 |
Affected products
- websockets ws
Classification
- Weakness
-
- CWE-476 NULL Pointer Dereference
References
-
github.com
/websockets/ws/pull/2231
web
-
github.com
/websockets/ws/commit/22c28763234aa75a7e1b76f5c01c181260d7917f
web
-
github.com
/websockets/ws/commit/4abd8f6de4b0b65ef80b3ff081989479ed93377e
web
-
github.com
/websockets/ws/commit/e55e5106f10fcbaac37cfa89759e4cc0d073a52c
web
-
github.com
/websockets/ws/commit/eeb76d313e2a00dd5247ca3597bba7877d064a63
web
-
github.com
/websockets/ws/security/advisories/GHSA-3h5v-q93c-6h6q
web
-
github.com
/websockets/ws/issues/2230
web
- nodejs.org /api/http.html#servermaxheaderscount
-
github.com
/websockets/ws
package
Sources
- CVE List CVE-2024-37890
- GitHub Advisory GHSA-3h5v-q93c-6h6q
- NVD CVE-2024-37890
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.