ISTIO-SECURITY-2026-007
CVEs reported by Envoy, plus Istio security fixes for an AuthorizationPolicy method-case bypass over HTTP/2 and an istiod denial of service in ambient mode.
| Disclosure Details | |
|---|---|
| CVE(s) | |
| CVSS Impact Score | 7.7 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H |
| Affected Releases | 1.31.0 to 1.31.1 1.30.0 to 1.30.5 1.29.0 to 1.29.8 |
CVE
Envoy CVEs
- GHSA-8vc2-jrm4-835w: (CVSS score 7.5): Fixed an unauthenticated remote crash (null pointer dereference) in the OAuth2 HTTP filter when handling a CONNECT request without a
:pathheader. - GHSA-47vj-9r25-wv5j: (CVSS score 6.5): Fixed a crash in the
api_key_authHTTP filter when hiding credentials on a CONNECT request without a:pathheader.
Istio CVEs
- GHSA-w44g-8m76-8gc5 (CVSS score 7.4, High):
AuthorizationPolicymethod rules are bypassed over HTTP/2 by changing the case of the method. Credit: This vulnerability was discovered and reported by izzy0101010101. - GHSA-7p2q-4xvg-vxc6 (CVSS score 7.7, High): istiod crashes (denial of service) in ambient mode when a
ServiceEntryor other service claims the address of an IP-addressed waypoint. Credit: This vulnerability was discovered and reported by yshch.
AuthorizationPolicy method rules bypassed over HTTP/2
An AuthorizationPolicy DENY rule with methods (or an ALLOW rule with notMethods) was compiled to a case-sensitive :method matcher. Over HTTP/2, a request whose method differs only in case (for example post instead of POST) did not match the rule and was forwarded to the workload, bypassing the policy. HTTP/1.1 is not affected because the codec rejects non-uppercase methods before authorization. Method matching is now case-insensitive.
istiod denial of service via waypoint address collision
In ambient mode, istiod resolves the service that owns an IP-addressed waypoint by network and IP address only. When a second service, such as a ServiceEntry in any namespace, claimed the same address, istiod panicked and crash-looped until the colliding resource was removed. A user allowed to create ServiceEntry resources in their own namespace could stop configuration distribution and certificate rotation for the whole mesh. Colliding addresses are now skipped with a warning.
Am I Impacted?
Envoy CVEs: You are potentially impacted if you run an affected Istio release and use the OAuth2 or
api_key_authHTTP filters.AuthorizationPolicymethod bypass: You are impacted if you useAuthorizationPolicyDENYrules withmethods, orALLOWrules withnotMethods, and clients can reach the workload over HTTP/2. Policies that only useALLOWrules with an explicitmethodslist are not affected.istiod denial of service: You are impacted if you run ambient mode with an IP-addressed waypoint (for example a waypoint
Gatewayannotated withnetworking.istio.io/address-type: IPAddress) and users other than mesh administrators can createServiceEntryresources. Waypoints that report a hostname, which is the default, are not affected.
Mitigation
- For Istio 1.31 users: upgrade to 1.31.2 or later.
- For Istio 1.30 users: upgrade to 1.30.6 or later.
- For Istio 1.29 users: upgrade to 1.29.9. This is the final 1.29 release, as 1.29 reached end of life on October 15, 2026. Plan an upgrade to 1.30 or later.
- As an interim measure for the
AuthorizationPolicybypass, useALLOWpolicies with an explicitmethodsallow-list instead ofDENYornotMethodsrules. - As an interim measure for the istiod denial of service, restrict
ServiceEntrycreate and update permissions to trusted administrators using Kubernetes RBAC, or use hostname-addressed waypoints.
Other Istio Security Fixes
This release also includes the following security fixes that were not assigned CVEs. See the release notes for each version for details.
istioctlnow verifies the istiod certificate when connecting to XDS with a service account token. Credit: This issue was reported by Leon Zlobecki.istioctl manifest translatenow escapes values written into generated install shell scripts. Credit: This vulnerability was discovered and reported by OpenSec Intelligence.- Fixed an istiod panic when the OIDC/JWT authenticator received a token with a malformed
subclaim. Credit: This issue was reported by Kaizhe Huang. - Hardened the experimental Kubernetes CSR RA path (
EXTERNAL_CA=ISTIOD_RA_KUBERNETES_API): opaque errors to callers, a bounded watch loop, and a newMAX_RA_WORKLOAD_CERT_TTLcap. Credit: This issue was reported by Juno Im. - The Wasm OCI image fetcher no longer falls back to plaintext HTTP for registries that are not listed in
WASM_INSECURE_REGISTRIES. Credit: This vulnerability was discovered and reported by Adam Korczynski. - istiod debug endpoints now require an exact
proxyIDmatch. Credit: This issue was reported by 박현범. - Added
PILOT_ENABLE_STRICT_GATEWAY_MERGINGto 1.29 and 1.30 to prevent cross-namespace merging of IstioGatewayresources with managed Gateway API gateways. It is disabled by default in 1.29 and 1.30 and enabled by default starting in 1.31.