Ad

CVE-2026-16728

MEDIUM CVSS 3.1: 6,5 EPSS 0.18%
Обновлено 4 августа 2026
Node.js
Параметр Значение
CVSS 6,5 (MEDIUM)
Уязвимые версии 7.0.0 — 8.9.0
Устранено в версии 6.28.0
Тип уязвимости CWE-444
Поставщик Node.js
Публичный эксплойт Нет

Перехватчик повторов undici может доставить ответ, длина тела которого не соответствует заголовку Content-Length, предоставляемому приложению после повторной попытки или возобновления частичного ответа. В версиях undici до 6.28.0, с 7.0.0 до 7.29.0 и с 8.0.0 до 8.9.0 злонамеренный или ошибочный восходящий поток может вернуть частичный ответ с несовпадающим заголовком кадра, досрочно закрыть сокет и заставить перехватчик повторных попыток собрать тело другой длины, в то время как исходный Content-Length остается прикрепленным. Приложения, которые используют перехватчик повторных попыток и пересылают заголовки и тела восходящего потока в нисходящий поток, такие как прокси-серверы или шлюзы, могут затем выдать недопустимый ответ HTTP с устаревшим Content-Length, что приводит к десинхронизации ответа в нисходящем направлении, зависанию соединения или повреждению ответа.

Для эксплуатации требуется включенный перехватчик повторных попыток, восходящий поток, возвращающий несовпадающий частичный ответ, и нисходящий сервер пересылки, который не удаляет и не пересчитывает Content-Length. Проблема исправлена ​​в версиях undici 6.28.0, 7.29.0 и 8.9.0.

Показать оригинальное описание (EN)

undici's retry interceptor can deliver a response whose body length does not match the Content-Length header exposed to the application after a retry or resume of a partial response. In undici before 6.28.0, from 7.0.0 up to before 7.29.0, and from 8.0.0 up to before 8.9.0, a malicious or faulty upstream can return a partial response with a mismatched framing header, close the socket early, and have the retry interceptor assemble a body of a different length while the original Content-Length stays attached. Applications that use the retry interceptor and forward upstream headers and bodies downstream, such as proxies or gateways, may then emit an invalid HTTP response with a stale Content-Length, leading to downstream response desynchronization, connection hangs, or response corruption. Exploitation requires the retry interceptor enabled, an upstream returning a mismatched partial response, and a downstream forwarder that does not remove or recalculate Content-Length. The issue is fixed in undici 6.28.0, 7.29.0, and 8.9.0.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Нужны права
Не требуются
Права не нужны
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Нет
Нет утечки данных
Целостность
Низкое
Частичная модификация данных
Доступность
Низкое
Частичное нарушение работы

Строка CVSS v3.1

Тип уязвимости (CWE)

Уязвимые продукты 3

Конфигурация От (включительно) До (исключительно)
Nodejs Undici
cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:*
6.28.0
Nodejs Undici
cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:*
7.0.0 7.29.0
Nodejs Undici
cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:*
8.0.0 8.9.0