Announcing Istio 1.29.4
Istio 1.29.4 patch release.
This release contains bug fixes to improve robustness. This release note describes what’s different between Istio 1.29.3 and 1.29.4.
BEFORE YOU UPGRADE
Things to know and prepare before upgrading.
DOWNLOAD
Download and install this release.
DOCS
Visit the documentation for this release.
SOURCE CHANGES
Inspect the full set of source code changes.
Security Update
- CVE-2026-47774 (CVSS score 7.5, High): An unauthenticated remote attacker can cause denial of service by exhausting memory in the Envoy process. Cookie header bytes are not fully accounted for during request header size validation, and HPACK header block limits are enforced on encoded bytes without a corresponding limit on total decoded header size, allowing attackers to trigger excessive memory consumption through specially crafted HTTP/2 requests.
Changes
Added an initialization check that verifies the bundled
nftbinary supports JSON output. The native nftables backend requires JSON to read configuration during pod removal. On hosts whosenftbinary doesn’t support JSON, those calls fail withError: JSON support not compiled-inon every removal, and the CNI agent retries indefinitely. The new check detects this error at startup and falls back to the iptables backend. (Issue #60328)Fixed an issue where HTTPS listeners defined via
ListenerSetfailed to deliver TLS certificates when the parentGatewayused manual deployment. (Issue #59535)Fixed an issue where
HTTPRouteandGRPCRoutefilters with invalid header values were silently dropped from the Envoy config instead of reporting an invalid filter status. (Issue #59933)Fixed an issue where multi-network ambient did not route to the waypoint when the ingress on one network called a service on a different network, even when the
Servicewas configured withistio.io/ingress-use-waypoint.Fixed a fatal
concurrent map writespanic in the istio-cni agent when two pods were added to the ambient mesh on the same node at the same time. (Issue #60328)Fixed an ambient mode bug where a single
ServicecombiningpublishNotReadyAddresses: truewith aPreferSameZoneorPreferSameNodetraffic distribution caused ztunnel to receivehealthPolicy: AllowAllfor every otherServiceusing the same traffic-distribution preset, leading to traffic being routed to not-ready endpoints cluster-wide. (Issue #60422)