Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci(deps): Update dependency socket.io to v2 [SECURITY] #13

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Apr 13, 2021

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
socket.io ~1.3.7 -> ~2.5.1 age adoption passing confidence
socket.io ~1.7.4 -> ~2.5.1 age adoption passing confidence

⚠️ MAJOR MAJOR MAJOR ⚠️

GitHub Vulnerability Alerts

CVE-2020-28481

The package socket.io before 2.4.0 are vulnerable to Insecure Defaults due to CORS Misconfiguration. All domains are whitelisted by default.

CVE-2024-38355

Impact

A specially crafted Socket.IO packet can trigger an uncaught exception on the Socket.IO server, thus killing the Node.js process.

node:events:502
    throw err; // Unhandled 'error' event
    ^

Error [ERR_UNHANDLED_ERROR]: Unhandled error. (undefined)
    at new NodeError (node:internal/errors:405:5)
    at Socket.emit (node:events:500:17)
    at /myapp/node_modules/socket.io/lib/socket.js:531:14
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11) {
  code: 'ERR_UNHANDLED_ERROR',
  context: undefined
}

Affected versions

Version range Needs minor update?
4.6.2...latest Nothing to do
3.0.0...4.6.1 Please upgrade to socket.io@4.6.2 (at least)
2.3.0...2.5.0 Please upgrade to socket.io@2.5.1

Patches

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.io package, you can attach a listener for the "error" event:

io.on("connection", (socket) => {
  socket.on("error", () => {
    // ...
  });
});

For more information

If you have any questions or comments about this advisory:

  • Open a discussion here

Thanks a lot to Paul Taylor for the responsible disclosure.

References


Release Notes

socketio/socket.io (socket.io)

v2.5.1

Compare Source

Bug Fixes
  • add a noop handler for the error event (d30630b)
Links:

v2.5.0

Compare Source

⚠️ WARNING ⚠️

The default value of the maxHttpBufferSize option has been decreased from 100 MB to 1 MB, in order to prevent attacks by denial of service.

Security advisory: GHSA-j4f2-536g-r55m

Bug Fixes
  • fix race condition in dynamic namespaces (05e1278)
  • ignore packet received after disconnection (22d4bdf)
  • only set 'connected' to true after middleware execution (226cc16)
  • prevent the socket from joining a room after disconnection (f223178)
Dependencies

4.5.1 (2022-05-17)

Bug Fixes
  • forward the local flag to the adapter when using fetchSockets() (30430f0)
  • typings: add HTTPS server to accepted types (#​4351) (9b43c91)
Dependencies

v2.4.1

Compare Source

Reverts
  • fix(security): do not allow all origins by default (a169050)

v2.4.0

Compare Source

Bug Fixes
  • security: do not allow all origins by default (f78a575)
  • properly overwrite the query sent in the handshake (d33a619)

3.0.4 (2020-12-07)

3.0.3 (2020-11-19)

3.0.2 (2020-11-17)

Bug Fixes
  • merge Engine.IO options (43705d7)

3.0.1 (2020-11-09)

Bug Fixes
  • export ServerOptions and Namespace types (#​3684) (f62f180)
  • typings: update the signature of the emit method (50671d9)

v2.3.0

Compare Source

This release mainly contains a bump of the engine.io and ws packages, but no additional features.

v2.2.0

Compare Source

Features
  • add cache-control header when serving the client source (#​2907) (b00ae50)
Bug fixes
  • throw an error when trying to access the clients of a dynamic namespace (#​3355) (a7fbd1a)

v2.1.1

Compare Source

Features
socket.local.to('room101').emit(/* */);

v2.1.0

Compare Source

Features
// by default, the object is recursively scanned to check whether it contains some binary data
// in the following example, the check is skipped in order to improve performance
socket.binary(false).emit('plain-object', object);

// it also works at the namespace level
io.binary(false).emit('plain-object', object);
io.of(/^\/dynamic-\d+$/).on('connect', (socket) => {
  // socket.nsp.name = '/dynamic-101'
});

// client-side
const client = require('socket.io-client')('/dynamic-101');
Bug fixes
Important note ⚠️ from Engine.IO 3.2.0 release

There are two non-breaking changes that are somehow quite important:

  • ws was reverted as the default wsEngine (https://github.com/socketio/engine.io/pull/550), as there was several blocking issues with uws. You can still use uws by running npm install uws --save in your project and using the wsEngine option:
var engine = require('engine.io');
var server = engine.listen(3000, {
  wsEngine: 'uws'
});

v2.0.4

Compare Source

Bug fixes

  • do not throw when receiving an unhandled error packet (#​3038)
  • reset rooms object before broadcasting from namespace (#​3039)
Links:

v2.0.3

Compare Source

Bug fixes

  • reset rooms object before broadcasting (#​2970)
  • fix middleware initialization (#​2969)
Links:

v2.0.2

Compare Source

Bug fixes

  • fix timing issues with middleware (#​2948)
Links:

v2.0.1

Compare Source

Bug fixes

- update path of client file (#​2934)

Links:

v2.0.0

Compare Source

This major release brings several performance improvements:

  • uws is now the default Websocket engine. It should bring significant improvement in performance (particularly in terms of memory consumption) (https://github.com/socketio/engine.io/releases/tag/2.0.0)

  • the Engine.IO and Socket.IO handshake packets were merged, reducing the number of roundtrips necessary to establish a connection. (#​2833)

  • it is now possible to provide a custom parser according to the needs of your application (#​2829). Please take a look at the example for more information.

Please note that this release is not backward-compatible, due to:

Please also note that if you are using a self-signed certificate, rejectUnauthorized now defaults to true (https://github.com/socketio/engine.io-client/pull/558).

Finally, the API documentation is now in the repository (here), and the content of the website here. Do not hesitate if you see something wrong or missing!

The full list of changes:

Besides, we are proud to announce that Socket.IO is now a part of open collective: https://opencollective.com/socketio. More on that later.

v1.7.4

Compare Source

  • [chore] Bump engine.io to version 1.8.4

v1.7.3

Compare Source

  • [chore] Bump engine.io-client to version 1.8.3

v1.7.2

Compare Source

  • [chore] Bump engine.io to version 1.8.2 (#​2782)
  • [fix] Fixes socket.use error packet (#​2772)

v1.7.1

Compare Source

(following socket.io-client update)

v1.7.0

Compare Source

  • [docs] Comment connected socket availability for adapters (#​2081)
  • [docs] Fixed grammar issues in the README.md (#​2159)
  • [feature] serve sourcemap for socket.io-client (#​2482)
  • [feature] Add a local flag (#​2628)
  • [chore] Bump engine.io to version 1.8.1 (#​2765)
  • [chore] Update client location and serve minified file (#​2766)

v1.6.0

Compare Source

  • [fix] Make ETag header comply with standard. (#​2603)
  • [feature] Loading client script on demand. (#​2567)
  • [test] Fix leaking clientSocket (#​2721)
  • [feature] Add support for all event emitter methods (#​2601)
  • [chore] Update year to 2016 (#​2456)
  • [feature] Add support for socket middleware (#​2306)
  • [feature] add support for Server#close(callback) (#​2748)
  • [fix] Don't drop query variables on handshake (#​2745)
  • [example] Add disconnection/reconnection logs to the chat example (#​2675)
  • [perf] Minor code optimizations (#​2219)
  • [chore] Bump debug to version 2.3.3 (#​2754)
  • [chore] Bump engine.io to version 1.8.0 (#​2755)
  • [chore] Bump socket.io-adapter to version 0.5.0 (#​2756)

v1.5.1

Compare Source

  • [fix] Avoid swallowing exceptions thrown by user event handlers (#​2682)
  • [test] Use client function to unify client in test script (#​2731)
  • [docs] Add link to LICENSE (#​2221)
  • [docs] Fix JSDoc of optional parameters (#​2465)
  • [docs] Fix typo (#​2724)
  • [docs] Link readme npm package badge to npm registry page (#​2612)
  • [docs] Minor fixes (#​2526)
  • [chore] Bump socket.io-parser to 2.3.0 (#​2730)
  • [chore] Add Github issue and PR templates (#​2733)
  • [chore] Bump engine.io to 1.7.2 (#​2729)
  • [chore] Bump socket.io-parser to 2.3.1 (#​2734)

v1.5.0

Compare Source

  • [feature] stop append /# before id when no namespace (#​2509)
  • [feature] Add a 'disconnecting' event to access to socket.rooms upon disconnection (#​2332)
  • [fix] Fix query string management (#​2422)
  • [fix] add quote to exec paths, prevent error when spaces in path (#​2508)
  • [docs] Prevent mixup for new programmers (#​2599)
  • [example] Fix chat display in Firefox (#​2477)
  • [chore] Add gulp & babel in the build process (#​2471)
  • [chore] Bump engine.io to 1.7.0 (#​2707)
  • [chore] Remove unused zuul-ngrok dependency (#​2708)
  • [chore] Point towards current master of socket.io-client (#​2710)
  • [chore] Restrict files included in npm package (#​2709)
  • [chore] Link build badge to master branch (#​2549)

v1.4.8

Compare Source

v1.4.7

Compare Source

v1.4.6

Compare Source

v1.4.5

Compare Source

v1.4.4

Compare Source

v1.4.3

Compare Source

v1.4.2

Compare Source

v1.4.1

Compare Source

v1.4.0

Compare Source


Configuration

📅 Schedule: Branch creation - "" in timezone America/Lima, Automerge - At any time (no schedule defined).

🚦 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 these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 7b5e89e to 5d3c8d1 Compare April 13, 2021 18:00
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Apr 13, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch 2 times, most recently from d509309 to 8eab458 Compare April 19, 2021 15:18
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Apr 19, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 8eab458 to c4e7097 Compare April 19, 2021 21:53
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Apr 19, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from c4e7097 to d5f5194 Compare April 20, 2021 13:12
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Apr 20, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from d5f5194 to 5a77e8f Compare April 22, 2021 11:13
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Apr 22, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 5a77e8f to 2d5f707 Compare April 22, 2021 14:14
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Apr 22, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 2d5f707 to 74be335 Compare April 30, 2021 02:23
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Apr 30, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 74be335 to 9b22c06 Compare April 30, 2021 04:01
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Apr 30, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 9b22c06 to 3cf46aa Compare May 2, 2021 20:11
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] May 2, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 3cf46aa to a3feb0e Compare May 2, 2021 21:41
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] May 2, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from a3feb0e to 4135796 Compare May 6, 2021 23:58
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] May 6, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 4135796 to 82084fb Compare May 7, 2021 00:39
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] May 7, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 82084fb to d901df4 Compare May 7, 2021 13:47
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] May 7, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from d901df4 to 2746291 Compare May 7, 2021 16:09
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] May 7, 2021
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 0320145 to edcbeea Compare April 21, 2024 07:21
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Apr 21, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from edcbeea to c5b7e41 Compare April 21, 2024 11:02
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Apr 21, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from c5b7e41 to e6c9635 Compare April 25, 2024 10:21
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Apr 25, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from e6c9635 to 049ac0a Compare April 25, 2024 14:27
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Apr 25, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 049ac0a to 23cbd54 Compare May 1, 2024 09:03
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] May 1, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 23cbd54 to 75dba6a Compare May 1, 2024 12:18
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] May 1, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 75dba6a to e58027d Compare May 9, 2024 10:41
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] May 9, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from e58027d to f44d665 Compare May 9, 2024 12:49
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] May 9, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from f44d665 to 541a147 Compare May 15, 2024 11:17
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] May 15, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 541a147 to 49e731d Compare May 15, 2024 21:10
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] May 15, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 49e731d to b6810a3 Compare June 4, 2024 10:15
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Jun 4, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from b6810a3 to 75ccca1 Compare June 4, 2024 14:11
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Jun 4, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from 75ccca1 to f0182e0 Compare June 20, 2024 02:09
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from f0182e0 to e734af1 Compare June 27, 2024 07:13
@renovate renovate bot changed the title ci(deps): Update dependency socket.io to v2 [SECURITY] ci(deps): Update dependency socket.io [SECURITY] Jun 27, 2024
@renovate renovate bot force-pushed the renovate/npm-socket.io-vulnerability branch from e734af1 to 4545fef Compare June 27, 2024 10:18
@renovate renovate bot changed the title ci(deps): Update dependency socket.io [SECURITY] ci(deps): Update dependency socket.io to v2 [SECURITY] Jun 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

0 participants