In vulnerable versions of ws, the issue can be mitigated in the following ways:
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.
the ClusterAdapter class, which manages the messages sent between the server instances of the cluster
the ClusterAdapterWithHeartbeat class, which extends the ClusterAdapter and adds a heartbeat mechanism in order to check the healthiness of the other instances
Other adapters can then just extend those classes and only have to implement the pub/sub mechanism (and not the internal chit-chat protocol):
Besides, the number of "timeout reached: only x responses received out of y" errors (which can happen when a server instance leaves the cluster) should be greatly reduced by this commit.
Bug Fixes
cluster: fix count in fetchSockets() method (80af4e9)
cluster: notify the other nodes when closing (0e23ff0)
the ClusterAdapter class, which manages the messages sent between the server instances of the cluster
the ClusterAdapterWithHeartbeat class, which extends the ClusterAdapter and adds a heartbeat mechanism in order to check the healthiness of the other instances
Other adapters can then just extend those classes and only have to implement the pub/sub mechanism (and not the internal chit-chat protocol):
Besides, the number of "timeout reached: only x responses received out of y" errors (which can happen when a server instance leaves the cluster) should be greatly reduced by this commit.
Bumps the npm_and_yarn group with 9 updates:
7.20.10
7.24.7
4.2.1
4.2.3
4.18.2
4.19.2
1.15.2
1.15.6
4.6.1
4.7.5
5.3.3
5.3.4
8.11.0
8.17.1
4.6.1
4.7.5
2.5.2
2.5.5
Updates
@babel/traverse
from 7.20.10 to 7.24.7Release notes
Sourced from
@babel/traverse
's releases.... (truncated)
Changelog
Sourced from
@babel/traverse
's changelog.... (truncated)
Commits
bf1e9a3
v7.24.74463aa5
fix: incorrectconstantViolations
with destructuring (#16522)07bd000
ImprovegetBindingIdentifiers
(#16544)17a5502
[Babel 8] Removeextra.shorthand
(#16521)7934963
Usetype: module
in allpackage.json
s (#16535)9630250
v7.24.61f010df
Explicitly defineNodePath.prototype.*
(#16488)6e3539b
[babel 8] Publish.d.ts
files for every package (#16416)e37e64d
Use eslint v9 (#16479)3ff20b9
Statically generate boilerplate for bitfield accessors (#16482)Updates
browserify-sign
from 4.2.1 to 4.2.3Changelog
Sourced from browserify-sign's changelog.
Commits
bf2c3ec
v4.2.39247adf
[patch] widen support to 0.12f427270
[Deps] update `parse-asn187f3a35
[Dev Deps] updateaud
,npmignore
,tape
fb261ce
[Deps] updateelliptic
4d0ee49
[patch] drop minimum node support to v19e2bf12
[Deps] pinhash-base
to ~3.0, due to a breaking change168e16f
[Deps] pinelliptic
due to a breaking change37a4758
[actions] remove redundant finisher4af5a90
v4.2.2Maintainer changes
This version was pushed to npm by ljharb, a new releaser for browserify-sign since your current version.
Updates
express
from 4.18.2 to 4.19.2Release notes
Sourced from express's releases.
... (truncated)
Changelog
Sourced from express's changelog.
Commits
04bc627
4.19.2da4d763
Improved fix for open redirect allow list bypass4f0f6cc
4.19.1a003cfa
Allow passing non-strings to res.location with new encoding handling checks f...a1fa90f
fixed un-edited version in history.md for 4.19.011f2b1d
build: fix build due to inconsistent supertest behavior in older versions084e365
4.19.00867302
Prevent open redirect allow list bypass due to encodeurl567c9c6
Add note on how to update docs for new release (#5541)69a4cf2
deps: cookie@0.6.0Maintainer changes
This version was pushed to npm by wesleytodd, a new releaser for express since your current version.
Updates
follow-redirects
from 1.15.2 to 1.15.6Commits
35a517c
Release version 1.15.6 of the npm package.c4f847f
Drop Proxy-Authorization across hosts.8526b4a
Use GitHub for disclosure.b1677ce
Release version 1.15.5 of the npm package.d8914f7
Preserve fragment in responseUrl.6585820
Release version 1.15.4 of the npm package.7a6567e
Disallow bracketed hostnames.05629af
Prefer native URL instead of deprecated url.parse.1cba8e8
Prefer native URL instead of legacy url.resolve.72bc2a4
Simplify _processResponse error handling.Updates
socket.io
from 4.6.1 to 4.7.5Release notes
Sourced from socket.io's releases.
... (truncated)
Changelog
Sourced from socket.io's changelog.
... (truncated)
Commits
5017681
chore(release): 4.7.5bf64870
fix: close the adapters when the server is closed748e18c
ci: test with older TypeScript versionb9ce6a2
refactor: create specific adapter for parent namespaces (#4950)54dabe5
ci: upgrade to actions/checkout@4 and actions/setup-node@4e426f3e
fix: remove duplicate pipeline when serving bundlee36062c
docs: update the webtransport example0bbe8ae
docs: only execute the passport middleware once914a8bd
docs: add example with JWTd943c3e
docs: update the Passport.js exampleUpdates
webpack-dev-middleware
from 5.3.3 to 5.3.4Release notes
Sourced from webpack-dev-middleware's releases.
Changelog
Sourced from webpack-dev-middleware's changelog.
Commits
86071ea
chore(release): 5.3.4189c4ac
fix(security): do not allow to read files above (#1779)Updates
ws
from 8.11.0 to 8.17.1Release notes
Sourced from ws's releases.
... (truncated)
Commits
3c56601
[dist] 8.17.1e55e510
[security] Fix crash when the Upgrade header cannot be read (#2231)6a00029
[test] Increase code coverageddfe4a8
[perf] Reduce the amount ofcrypto.randomFillSync()
callsb73b118
[dist] 8.17.029694a5
[test] Use thehighWaterMark
variable934c9d6
[ci] Test on node 221817bac
[ci] Do not test on node 2196c9b3d
[major] Flip the default value ofallowSynchronousEvents
(#2221)e5f32c7
[fix] Emit at most one event per event loop iteration (#2218)Updates
socket.io-client
from 4.6.1 to 4.7.5Release notes
Sourced from socket.io-client's releases.
... (truncated)
Changelog
Sourced from socket.io-client's changelog.
... (truncated)
Commits
4f6030f
chore(release): 4.7.534cbfbb
fix: discard acknowledgements upon disconnection8cfea8c
chore(release): 4.7.4ca5d50e
chore(release): 4.7.3f9c16f2
fix(typings): fix the type of the socket#id attributeb3f0cab
ci: add Node.js 20 in the test matrix5a3eafe
fix(typings): accept string | undefined as init argument605de78
fix: improve compatibility with node16 module resolution (#1595)d00ccd2
ci: bump appiumVersion for Android tests in SauceLabs928d76d
chore(release): 4.7.2Updates
socket.io-adapter
from 2.5.2 to 2.5.5Release notes
Sourced from socket.io-adapter's releases.
... (truncated)
Changelog
Sourced from socket.io-adapter's changelog.
... (truncated)
Commits
05a190a
chore(release): 6.5.593fe190
chore(deps): bump ws from 8.11.0 to 8.17.1 (#93)5eae5a0
chore(release): 2.5.4005d546
ci: test with older TypeScript version