Недостаток в HTTP-клиенте Node.js может привести к десинхронизации запроса для пересылающих прокси-серверов на основе Node.js, которые перестраивают исходящие заголовки из видимых заголовков IncomingMessage при передаче исходного тела по каналам повторно используемого внутреннего соединения.
Node.js может опускать заголовки, выходящие за пределы maxHeadersCount/maxHeaderPairs, из req.headers, req.rawHeaders и req.headersDistinct, при этом по-прежнему используя эти пропущенные заголовки внутри для формирования кадров HTTP-сообщений. В частности, Content-Length может быть скрыт от пользователя, пока тело запроса все еще доставлено.
Эта уязвимость затрагивает все поддерживаемые версии выпусков: **Node.js 22**, **Node.js 24** и **Node.js 26**.
Показать оригинальное описание (EN)
A flaw in Node.js HTTP client can cause a request desynchronization for Node.js-based forwarding proxies that rebuild outbound headers from the visible `IncomingMessage` headers while piping the original body to a reused backend connection. Node.js can omit headers beyond `maxHeadersCount` / `maxHeaderPairs` from `req.headers`, `req.rawHeaders`, and `req.headersDistinct`, while still using those omitted headers internally for HTTP message framing. In particular, `Content-Length` can be hidden from userland while the request body is still delivered. This vulnerability affects all supported release lines: **Node.js 22**, **Node.js 24**, and **Node.js 26**.
Характеристики атаки
Последствия
Строка CVSS v3.0