Update dependency socket.io to v4 [SECURITY] - #194
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
June 27, 2024 10:53
b86b009 to
e6659e9
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
July 14, 2024 14:26
8c585b5 to
808bb18
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
July 21, 2024 12:31
7900829 to
a842bfa
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
July 28, 2024 17:37
9342b19 to
e77af90
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
October 9, 2024 13:54
9785ef9 to
c28cfa6
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
October 28, 2024 19:29
2616557 to
312a891
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
November 17, 2024 18:27
1deefcf to
cdcaf81
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
December 2, 2024 15:44
8a78096 to
551d0cc
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
4 times, most recently
from
December 22, 2024 19:31
c97d2cd to
7987a47
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
January 15, 2025 02:59
977f687 to
bbb2dea
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
3 times, most recently
from
January 30, 2025 16:45
b4fc32e to
f3305c4
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
from
January 30, 2025 23:12
f3305c4 to
9ad5dcf
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
February 9, 2025 18:38
6ab5105 to
4189a02
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
March 3, 2025 19:26
d95e71f to
8e34005
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
from
April 24, 2025 15:59
426060c to
05749c0
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
4 times, most recently
from
May 13, 2025 14:59
2f22b1f to
8b62d9b
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
May 19, 2025 22:09
60dbebb to
7bceee4
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
3 times, most recently
from
June 4, 2025 08:53
fe6b79e to
a752fc3
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
3 times, most recently
from
June 9, 2025 17:59
5faf6ba to
edb896c
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
4 times, most recently
from
June 22, 2025 16:03
1893bbc to
eceecc1
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
July 3, 2025 00:32
c3f354e to
eea2891
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
4 times, most recently
from
August 13, 2025 19:38
22c839b to
7cfb513
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
August 19, 2025 20:45
9926a4a to
cf1c78a
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
August 31, 2025 15:05
4f91066 to
efbfd08
Compare
renovate
Bot
force-pushed
the
renovate/npm-socket.io-vulnerability
branch
2 times, most recently
from
September 25, 2025 23:27
e56016b to
69495f6
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^3.0.0→^4.6.2socket.io has an unhandled 'error' event
CVE-2024-38355 / GHSA-25hc-qcg6-38wj
More information
Details
Impact
A specially crafted Socket.IO packet can trigger an uncaught exception on the Socket.IO server, thus killing the Node.js process.
Affected versions
4.6.2...latest3.0.0...4.6.1socket.io@4.6.2(at least)2.3.0...2.5.0socket.io@2.5.1Patches
This issue is fixed by socketio/socket.io@15af22f, included in
socket.io@4.6.2(released in May 2023).The fix was backported in the 2.x branch today: socketio/socket.io@d30630b
Workarounds
As a workaround for the affected versions of the
socket.iopackage, you can attach a listener for the "error" event:For more information
If you have any questions or comments about this advisory:
Thanks a lot to Paul Taylor for the responsible disclosure.
References
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
socketio/socket.io (socket.io)
v4.6.2Compare Source
Bug Fixes
typescondition to the top (#4698) (3d44aae)Links
engine.io@~6.4.2(diff)ws@~8.11.0(no change)v4.6.1Compare Source
Bug Fixes
Links
engine.io@~6.4.1(diff)ws@~8.11.0(no change)v4.6.0Compare Source
Bug Fixes
Features
Promise-based acknowledgements
This commit adds some syntactic sugar around acknowledgements:
emitWithAck()serverSideEmitWithAck()Added in 184f3cf.
Connection state recovery
This feature allows a client to reconnect after a temporary disconnection and restore its state:
Usage:
Here's how it works:
idattribute, which is public and can be freely shared)The in-memory adapter already supports this feature, and we will soon update the Postgres and MongoDB adapters. We will also create a new adapter based on Redis Streams, which will support this feature.
Added in 54d5ee0.
Compatibility (for real) with Express middlewares
This feature implements middlewares at the Engine.IO level, because Socket.IO middlewares are meant for namespace authorization and are not executed during a classic HTTP request/response cycle.
Syntax:
A workaround was possible by using the allowRequest option and the "headers" event, but this feels way cleaner and works with upgrade requests too.
Added in 24786e7.
Error details in the disconnecting and disconnect events
The
disconnectevent will now contain additional details about the disconnection reason.Added in 8aa9499.
Automatic removal of empty child namespaces
This commit adds a new option, "cleanupEmptyChildNamespaces". With this option enabled (disabled by default), when a socket disconnects from a dynamic namespace and if there are no other sockets connected to it then the namespace will be cleaned up and its adapter will be closed.
Added in 5d9220b.
A new "addTrailingSlash" option
The trailing slash which was added by default can now be disabled:
In the example above, the clients can omit the trailing slash and use
/socket.ioinstead of/socket.io/.Added in d0fd474.
Performance Improvements
Links:
engine.io@~6.4.0(diff)ws@~8.11.0(diff)v4.5.4Compare Source
This release contains a bump of:
engine.ioin order to fix CVE-2022-41940socket.io-parserin order to fix CVE-2022-2421.Links:
engine.io@~6.2.1(diff)ws@~8.2.3v4.5.3Compare Source
Bug Fixes
Links:
~6.2.0~8.2.3v4.5.2Compare Source
Bug Fixes
Links:
~6.2.0~8.2.3v4.5.1Compare Source
Bug Fixes
Links:
~6.2.0~8.2.3v4.5.0Compare Source
Bug Fixes
Features
This is similar to
onAny(), but for outgoing packets.Syntax:
Syntax:
So that clients in HTTP long-polling can decide how many packets they have to send to stay under the maxHttpBufferSize
value.
This is a backward compatible change which should not mandate a new major revision of the protocol (we stay in v4), as
we only add a field in the JSON-encoded handshake data:
Links:
~6.2.0(diff)~8.2.3v4.4.1Compare Source
Bug Fixes
RemoteSocket.datatype safe (#4234) (770ee59)SocketDatatype to custom namespaces (#4233) (f2b8de7)Links:
~6.1.0(diff)~8.2.3v4.4.0Compare Source
Bug Fixes
Features
socket.data(#4159) (fe8730c)Links:
~6.1.0(diff)~8.2.3v4.3.2Compare Source
Bug Fixes
Links:
~6.0.0~8.2.3v4.3.1Compare Source
Bug Fixes
Links:
~6.0.0~8.2.3v4.3.0Compare Source
For this release, most of the work was done on the client side, see here.
Bug Fixes
Features
Links:
~6.0.0(diff)~8.2.3(diff)v4.2.0Compare Source
Bug Fixes
Features
Links:
~5.2.0~7.4.2v4.1.3Compare Source
Bug Fixes
Links:
~5.1.0~7.4.2v4.1.2Compare Source
Bug Fixes
Links:
~5.1.0~7.4.2v4.1.1Compare Source
Bug Fixes
Links:
~5.1.0~7.4.2v4.1.0Compare Source
Blog post: https://socket.io/blog/socket-io-4-1-0/
Features
engine.io)engine.io)Links:
~5.1.0~7.4.2v4.0.2Compare Source
Bug Fixes
Links:
~5.0.0~7.4.2v4.0.1Compare Source
Bug Fixes
Links:
~5.0.0~7.4.2v4.0.0Compare Source
Blog post: https://socket.io/blog/socket-io-4-release/
Migration guide: https://socket.io/docs/v3/migrating-from-3-x-to-4-0/
Bug Fixes
Features
BREAKING CHANGES
io.to(...)now returns an immutable operatorPreviously, broadcasting to a given room (by calling
io.to()) would mutate the io instance, which could lead to surprising behaviors, like:Calling
io.to()(or any other broadcast modifier) will now return an immutable instance.Links:
~5.0.0~7.4.2v3.1.2Compare Source
Bug Fixes
Links:
~4.1.0~7.4.2v3.1.1Compare Source
Bug Fixes
Links:
~4.1.0~7.4.2v3.1.0Compare Source
In order to ease the migration to Socket.IO v3, the v3 server is now able to communicate with v2 clients:
Note: the
allowEIO3refers to the version 3 of the Engine.IO protocol which is used in Socket.IO v2Features
Bug Fixes
Links:
~4.1.0~7.4.2v3.0.5Compare Source
Bug Fixes
Reverts
Links:
~4.0.6~7.4.2v3.0.4Compare Source
Links:
~4.0.0^7.1.2v3.0.3Compare Source
Links:
~4.0.0^7.1.2v3.0.2Compare Source
Bug Fixes
Links:
~4.0.0^7.1.2v3.0.1Compare Source
Bug Fixes
Links:
~4.0.0^7.1.2Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.