CVE-2026-33151: socket.io Allows Unbounded Number of Binary Attachments Leading to Memory Exhaustion
Summary
CVE-2026-33151: socket.io allows an unbounded number of binary attachments. Affects socket.io-parser across 3 version ranges.
< 3.3.5
>= 3.4.0, < 3.4.4
>= 4.0.0, < 4.2.6
Fixed in 3.3.5, 3.4.4 or 4.2.6, depending on the release line you run. How to fix ↓
Also tracked for
- socket.io-parser · ghsa
The same CVE-2026-33151 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
Socket.IO is a popular JavaScript library that enables real-time, bidirectional communication between web clients and servers. It is widely used for building interactive web applications, enabling features like chat, notifications, and live updates. However, a vulnerability has been identified that allows an attacker to exploit the handling of binary attachments, potentially leading to server memory exhaustion.
Vulnerability Detail
The vulnerability arises from the way Socket.IO processes binary attachments in packets. A specially crafted Socket.IO packet can cause the server to wait for an unbounded number of binary attachments, leading to excessive memory consumption. This can result in the server running out of memory, causing it to crash or become unresponsive. The issue is particularly concerning as it can be exploited without authentication, making it a high-risk vulnerability.
How To Fix
Fixed versions by release line
The minimum fixed version depends on the release line you run.
-
< 3.3.53.3.5npm install socket.io-parser@3.3.5 -
>= 3.4.0, < 3.4.43.4.4npm install socket.io-parser@3.4.4 -
>= 4.0.0, < 4.2.64.2.6npm install socket.io-parser@4.2.6
Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →
Workaround
There are no known workarounds for this vulnerability other than upgrading to a safe version of the affected packages.
Conclusion
The CVE-2026-33151 vulnerability in Socket.IO poses a significant risk due to its potential to exhaust server memory through unbounded binary attachments. It is crucial for developers to update their packages to the latest patched versions to mitigate this risk and ensure the stability of their applications.
See every vulnerability recorded for socket.io-parser →
FAQ
CVE-2026-33151 is a vulnerability in the Socket.IO library that allows an unbounded number of binary attachments, potentially leading to server memory exhaustion.
If exploited, this vulnerability can cause your server to run out of memory, leading to crashes or unresponsiveness, which can severely impact user experience.
Affected versions include socket.io@4.x (>=4.0.0 <4.2.6), socket.io@2.x (>=3.4.0 <3.4.4), and socket.io-client@2.x (<3.3.5).
You can check if your application is affected by using Vulert, which monitors and alerts for open-source vulnerabilities in real-time. You can use the Vulert playground without signup to test your application.
The CVSS score for this vulnerability is 8.7, indicating a high severity level.
References
Related vulnerabilities
Recent vulnerabilities recorded for socket.io-parser.