影響: undici WebSocketクライアントはフレームごとのmaxPayloadSizeを強制していますが、フラグメント化された非圧縮メッセージの累積サイズを強制していません。悪意のあるWebSocketサーバーは、多数の小さなフラグメントをストリーム送信し、それぞれはフレームごとの検証を通過しますが、合計すると設定された制限を超え、クライアントプロセスでメモリが無制限に増加する原因となります。その結果、メモリ不足とサービス拒否が発生します。影響を受けるアプリケーションは、undici WebSocketクライアント(new WebSocket(...))を使用し、攻撃者が制御するか侵害されたWebSocketエンドポイントに接続させられる可能性のあるものです。これはundici 8.1.0に特有のリグレッションです。6.25.0系では初めから同等の累積チェックが導入されており影響を受けません。7.x系はmaxPayloadSize機能自体が存在しないため影響を受けません。対策: undiciを8.5.0以上にアップグレードしてください。回避策: 回避策はありません。修正はアップグレードによってのみ適用可能です。
|