Skip to content

chore(deps): update dependency ws@>=7.0.0 <7.5.10 to v8.21.0#276

Open
team-github-bot wants to merge 1 commit into
mainfrom
renovate/ws-=7.0.0-7.5.10-8.x
Open

chore(deps): update dependency ws@>=7.0.0 <7.5.10 to v8.21.0#276
team-github-bot wants to merge 1 commit into
mainfrom
renovate/ws-=7.0.0-7.5.10-8.x

Conversation

@team-github-bot
Copy link
Copy Markdown
Contributor

@team-github-bot team-github-bot commented Apr 24, 2026

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
ws@>=7.0.0 <7.5.10 [8.18.38.21.0](https://renovatebot.com/diffs/npm/ws@>=7.0.0 <7.5.10/8.18.3/8.21.0) age adoption passing confidence

Release Notes

websockets/ws (ws@>=7.0.0 <7.5.10)

v8.21.0

Compare Source

Features

  • Introduced the maxBufferedChunks and maxFragments options (2b2abd4).

Bug fixes

  • Fixed a remote memory exhaustion DoS vulnerability (2b2abd4).

A high volume of tiny fragments and data chunks could be sent by a peer, using
modest network traffic, to crash a ws server or client due to OOM.

import { WebSocket, WebSocketServer } from 'ws';

const wss = new WebSocketServer({ port: 0 }, function () {
  const data = Buffer.alloc(1);
  const options = { fin: false };
  const { port } = wss.address();
  const ws = new WebSocket(`ws://localhost:${port}`);

  ws.on('open', function () {
    (function send() {
      ws.send(data, options, function (err) {
        if (err) return;
        send();
      });
    })();
  });

  ws.on('error', console.error);
  ws.on('close', function (code, reason) {
    console.log(`client close - code: ${code} reason: ${reason.toString()}`);
  });
});

wss.on('connection', function (ws) {
  ws.on('error', console.error);
  ws.on('close', function (code, reason) {
    console.log(`server close - code: ${code} reason: ${reason.toString()}`);
  });
});

The vulnerability was responsibly disclosed and fixed by Nadav Magier.

In vulnerable versions, the issue can be mitigated by lowering the value of the
maxPayload option if possible.

v8.20.1

Compare Source

Bug fixes

  • Fixed an uninitialized memory disclosure issue in websocket.close()
    (c0327ec).

Providing a TypedArray (e.g. Float32Array) as the reason argument for
websocket.close(), rather than the supported string or Buffer types, caused
uninitialized memory to be disclosed to the remote peer.

import { deepStrictEqual } from 'node:assert';
import { WebSocket, WebSocketServer } from 'ws';

const wss = new WebSocketServer(
  { port: 0, skipUTF8Validation: true },
  function () {
    const { port } = wss.address();
    const ws = new WebSocket(`ws://localhost:${port}`, {
      skipUTF8Validation: true
    });

    ws.on('close', function (code, reason) {
      deepStrictEqual(reason, Buffer.alloc(80));
    });
  }
);

wss.on('connection', function (ws) {
  ws.close(1000, new Float32Array(20));
});

The issue was privately reported by Nikita Skovoroda.

v8.20.0

Compare Source

Features

  • Added exports for the PerMessageDeflate class and utilities for the
    Sec-WebSocket-Extensions and Sec-WebSocket-Protocol headers (d3503c1).

v8.19.0

Compare Source

Features

  • Added the closeTimeout option (#​2308).

Bug fixes

  • Handled a forthcoming breaking change in Node.js core (1998485).

Configuration

📅 Schedule: (in timezone Australia/Brisbane)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


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

This PR has been generated by Mend Renovate.

@team-github-bot team-github-bot requested a review from a team as a code owner April 24, 2026 03:23
@team-github-bot team-github-bot force-pushed the renovate/ws-=7.0.0-7.5.10-8.x branch 2 times, most recently from 04b20a6 to e3929a4 Compare May 1, 2026 01:12
@team-github-bot team-github-bot force-pushed the renovate/ws-=7.0.0-7.5.10-8.x branch 2 times, most recently from 6f159b0 to 497ab61 Compare May 15, 2026 01:08
@team-github-bot team-github-bot changed the title chore(deps): update dependency ws@>=7.0.0 <7.5.10 to v8.20.0 chore(deps): update dependency ws@>=7.0.0 <7.5.10 to v8.20.1 May 15, 2026
@team-github-bot team-github-bot force-pushed the renovate/ws-=7.0.0-7.5.10-8.x branch from 497ab61 to 3f3342a Compare May 25, 2026 01:16
@team-github-bot team-github-bot changed the title chore(deps): update dependency ws@>=7.0.0 <7.5.10 to v8.20.1 chore(deps): update dependency ws@>=7.0.0 <7.5.10 to v8.21.0 May 25, 2026
@team-github-bot team-github-bot force-pushed the renovate/ws-=7.0.0-7.5.10-8.x branch from 3f3342a to c3b3d8f Compare May 29, 2026 01:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants