CVE-2026-16728

Medium

Description

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.

SeverityMedium
CVSS4.8
Exploit probability—
ProductNodejs Undici
PublishedJul 29, 2026
First seenJul 29, 2026
Weakness typeCWE-444CWE-444

How to fix

Update
  • nodejs undici6.28.0, 7.29.0, 8.9.0 or later
  • undici6.28.0, 7.29.0, 8.9.0 or later

Affected products

ProductAffected versionsFixed in
nodejs undiciv < 6.28.0, 7.0.0 ≤ v < 7.29.0, 8.0.0 ≤ v < 8.9.06.28.0, 7.29.0, 8.9.0
undicinpmv < 6.28.0, 7.0.0 ≤ v < 7.29.0, 8.0.0 ≤ v < 8.9.06.28.0, 7.29.0, 8.9.0

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.