Socket.IO: Engine.IO Polling Transport Connection Exhaustion
Collected exploitation and prediction evidence
Risk source coverageCISA KEV is observed exploitation evidence. FIRST EPSS is a dated prediction of exploitation in the next 30 days. Missing scores are unknown. This collector requests predictions only for explicit CVE aliases in the public NuGet archive; Microsoft release views retain their existing prediction scope.
No collected risk observation for these identifiers. This does not establish absence of exploitation or a zero probability.
cve-program · CVE-2026-59725
PublishedSocket.IO enables bidirectional and low-latency communication for every platform. From 4.1.0 before 6.6.7, Engine.IO protocol v4 polling transport does not properly close the HTTP response for invalid binary POST requests with Content-Type: application/octet-stream, allowing an unauthenticated attacker to exhaust server-side connections and sockets. This issue is fixed in version 6.6.7.
- Source published
- 8 Jul 2026 15:37:52 UTC
- Source modified
- 14 Oct 2026 18:46:37 UTC
- Observed here
- 23 Oct 2026 15:48:27 UTC
- Source terms
- CVE Program Terms of Use
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: cve-program · CVE Program Terms of Use. Source text is retained; field grouping and change labels are provided by ChangeIntel.
CVSS 3.1 · 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
euvd · EUVD-2026-42313
PublishedSocket.IO enables bidirectional and low-latency communication for every platform. From 4.1.0 before 6.6.7, Engine.IO protocol v4 polling transport does not properly close the HTTP response for invalid binary POST requests with Content-Type: application/octet-stream, allowing an unauthenticated attacker to exhaust server-side connections and sockets. This issue is fixed in version 6.6.7.
EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON.
Original publisher date fields
datePublished: Jul 8, 2026, 3:37:52 PM
dateUpdated: Oct 14, 2026, 6:46:37 PM
2 related source bulletins · separate from aliases
RHSA-2026:37577: Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update
CVE-2026-39243 · CVE-2026-39245 · CVE-2026-59725 · CVE-2026-59869
RHSA-2026:42986: Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update
CVE-2026-59725
- Source published
- Jul 8, 2026, 3:37:52 PM (timezone not stated)
- Source modified
- Oct 14, 2026, 6:46:37 PM (timezone not stated)
- Observed here
- 7 Nov 2026 13:25:14 UTC
- Source terms
- ENISA EUVD · source terms and attribution apply
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: euvd · ENISA EUVD · source terms and attribution apply. Source text is retained; field grouping and change labels are provided by ChangeIntel.
EUVD CVSS 3.1 · 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
nvd · CVE-2026-59725
PublishedSocket.IO enables bidirectional and low-latency communication for every platform. From 4.1.0 before 6.6.7, Engine.IO protocol v4 polling transport does not properly close the HTTP response for invalid binary POST requests with Content-Type: application/octet-stream, allowing an unauthenticated attacker to exhaust server-side connections and sockets. This issue is fixed in version 6.6.7.
NVD analysis and CPE criteria are source context, not proof that a package or your environment is affected. Complete affected data, logical configurations and SSVC are retained in the original JSON.
Source analysis status: Analyzed
Weakness classifications: CWE-404
Original publisher date fields
published: 2026-07-08T16:16:33.133
lastModified: 2026-10-25T20:10:00.147
1 source CPE criteria · context only
- cpe:2.3:a:socket:engine.io:*:*:*:*:*:node.js:*:*
The original JSON retains the logical configuration operators, exclusions and version bounds.
- Source published
- 8 Jul 2026 16:16:33 UTC
- Source modified
- 25 Oct 2026 20:10:00 UTC
- Observed here
- 27 Oct 2026 15:15:33 UTC
- Source terms
- NIST NVD usage terms; underlying source attribution retained
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: nvd · NIST NVD usage terms; underlying source attribution retained. Source text is retained; field grouping and change labels are provided by ChangeIntel.
CVSS 3.1 · [email protected] · Secondary · 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
osv · GHSA-r635-g3xr-vw7x
Published### Impact An unauthenticated remote attacker can cause a denial of service in affected versions of **engine.io** by opening Engine.IO polling sessions and sending an invalid binary `POST` request with: ``` Content-Type: application/octet-stream ``` against an Engine.IO protocol v4 polling transport. In the vulnerable code path, the server reports a transport error but does not properly close the HTTP response associated with the malformed request. As a result, the underlying HTTP connection may remain open, consuming one server-side socket/resource per crafted request. An attacker can repeat this with many sessions to exhaust available HTTP connections, sockets, file descriptors, or related server resources, potentially preventing legitimate clients from connecting. ### Patches The issue was fixed in: - **engine.io `6.6.7`** The fix ensures that invalid binary polling `POST` requests are explicitly rejected with an HTTP response and closed properly. Users should upgrade to: ```sh npm install engine.io@^6.6.7 ``` or a later fixed version. If using Socket.IO through the monorepo/packages, update to a Socket.IO release that depends on a fixed `engine.io` version. ### Workarounds If upgrading immediately is not possible, possible mitigations include: - Block or reject polling `POST` requests with `Content-Type: application/octet-stream` for Engine.IO protocol v4 at a reverse proxy, load balancer, WAF, or application middleware. - Disable HTTP long-polling if your deployment can use WebSocket-only transport. - Enforce strict request/connection timeouts at the HTTP server, reverse proxy, or load balancer. - Apply per-IP rate limits and connection limits for Engine.IO endpoints. - Restrict access to the Socket.IO/Engine.IO endpoint where feasible. Example Socket.IO configuration to disable polling, if compatible with your clients: ```js const io = new Server(httpServer, { transports: ["websocket"], }); ``` ## References - Fix commit: https://github.com/socketio/socket.io/commit/fc11285e14964c2132d122164bf130c355f60671 - engine.io changelog entry for `6.6.7`: https://github.com/socketio/socket.io/blob/main/packages/engine.io/CHANGELOG.md#667-2026-04-27 - socket.io repository: https://github.com/socketio/socket.io - engine.io package: https://www.npmjs.com/package/engine.io
- Source published
- 20 Jul 2026 21:49:54 UTC
- Source modified
- 10 Sep 2026 03:51:11 UTC
- Observed here
- 24 Oct 2026 13:17:17 UTC
- Source terms
- GitHub Advisory Database · CC-BY-4.0
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: osv · GitHub Advisory Database · CC-BY-4.0. Source text is retained; field grouping and change labels are provided by ChangeIntel.
CVSS_V3 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Publisher rating · HIGH