Intel

AIKIDO-2026-995117

@hono/node-server is vulnerable to Denial of Service (DoS)

Denial of Service (DoS)GHSA-9mqv-5hh9-4cgg Published 4 days ago

53

Medium Risk

This Affects:

JS@hono/node-server
2.0.0 - 2.0.9
Fixed in 2.0.10
Are you affected? Scan for Free

TL;DR

The upgradeWebSocket helper retains each upgrade request's IncomingMessage and a pending waiter promise in an internal map until a successful handshake emits connection or the route guard rejects the request. When ws aborts the handshake because Sec-WebSocket-Key is missing or malformed, no connection event fires, so neither cleanup path runs and the map entry is retained forever. An unauthenticated attacker can flood a public upgrade route with failed pre-handshake requests and gradually exhaust memory until the process becomes unavailable. The fix rejects and deletes the waiter on aborted or failed upgrade paths, including when the underlying socket closes before the handshake completes.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and your application exposes an upgradeWebSocket route.

Background info

@hono/node-server is vulnerable to Denial of Service (DoS) in versions 2.0.0 - 2.0.9.

How to fix this

Upgrade the @hono/node-server library to the patch version.