Istio
1.31.2Networking & MessagingA security-focused maintenance release with vulnerability fixes and correctness repairs. It also adds connection and routing controls and changes several operator-visible defaults and constraints.
Action needed (3)
security
MAX_RA_WORKLOAD_CERT_TTLworkload certificate TTL capThe new
MAX_RA_WORKLOAD_CERT_TTLenvironment variable caps the workload certificate TTL at a default of48h. This constraint limits the certificate lifetime configured through the RA settings, includingMAX_WORKLOAD_CERT_TTLandEXTERNAL_CA=ISTIOD_RA_KUBERNETES_API.security
istioddebug endpointproxyIDmatchingistioddebug endpoints, including/debug/config_dump,/debug/edsz, and the XDSistio.type, no longer matchio/debug/config_dump proxyIDas a substring. The fix ships inistioddebug endpoint matching.breakingClient-side request timeout behavior
Requests now time out on the client side, so a stuck request is canceled and the component can recover on its own. The behavior is associated with
ISTIO_KUBE_HEADER_TIMEOUT,ISTIO_KUBE_REQUEST_TIMEOUT, and thekube_client_deadline_fired_totalmetric.
Check if affected (7)
securityGHSA-8vc2-jrm4-835w OAuth2 HTTP filter crash fix
Applies if you use the
OAuth2 HTTP filter.GHSA-8vc2-jrm4-835w fixes an unauthenticated remote crash in the
OAuth2 HTTP filterwhen aCONNECTrequest lacks a:pathheader. The fix ships in theOAuth2 HTTP filter.securityGHSA-47vj-9r25-wv5j API key authentication filter crash fix
Applies if you use the
api_key_auth HTTP filter.GHSA-47vj-9r25-wv5j fixes a crash in the
api_key_auth HTTP filterwhen aCONNECTrequest lacks a:pathheader. The fix ships in theapi_key_auth HTTP filter.securityGHSA-w44g-8m76-8gc5
AuthorizationPolicymethod-rule enforcementApplicability is not stated in the release notes.
GHSA-w44g-8m76-8gc5 fixes an
AuthorizationPolicybypass overHTTP/2when the request method case is changed. The correction applies toAuthorizationPolicymethod rules.securityGHSA-7p2q-4xvg-vxc6 ambient-mode
istiodcrash fixApplicability is not stated in the release notes.
GHSA-7p2q-4xvg-vxc6 fixes an
istiodcrash in ambient mode when aServiceEntryor another service claims the address of an IP-addressed waypoint. The fix ships inistiod.security
istioctlscript command-injection fixApplicability is not stated in the release notes.
istioctlno longer permits crafted values to inject additional shell commands when generated scripts are run. The correction ships inistioctlscript handling.security
CreateCertificateKubernetes CSR RA error handlingApplies if you configure
EXTERNAL_CA=ISTIOD_RA_KUBERNETES_API.CreateCertificateno longer returns raw Kubernetes API error text to callers on the experimental Kubernetes CSR RA path. The correction applies to theEXTERNAL_CA=ISTIOD_RA_KUBERNETES_APIconfiguration.security
WASM_INSECURE_REGISTRIESplaintext retry restrictionApplies if you configure
WASM_INSECURE_REGISTRIES.Plaintext retries now occur only for registries explicitly allowlisted through
WASM_INSECURE_REGISTRIES. The restriction ships in WASM image registry retry handling.
Plan ahead (1)
deprecatedThe
overload.runtime flag, deprecatedglobal_downstream_max_connections Applies if you configure
overload..global_downstream_max_connections The
overload.runtime flag is deprecated. The deprecation applies to this runtime configuration flag.global_downstream_max_connections
All 17 other recorded changesfixes 12 · additions 4 · value changes 1
fixes (12)
- Fixed a panic in istiod when the OIDC/JWT authenticator received a token with a malformed sub claim.
- Fixed the Kubernetes CSR watch loop using an abandoned time.After timer that could leave a goroutine running past request completion
- Fixed an HTTPRoute rule with several InferencePool backendRefs configuring only one endpoint picker.
- Fixed two HTTPRoute s sharing a rules[].name on the same gateway overwriting each other’s endpoint picker.
- Fixed a route rule losing its InferencePool endpoint picker when it also carried a CORS filter.
- Fixed sidecar proxy UID/GID resolution on OpenShift for workloads bound to a custom SecurityContextConstraint
- Fixed an issue where, with PILOT_FILTER_GATEWAY_CLUSTER_CONFIG enabled, incremental CDS pushes removed gateway clusters
- Fixed an issue where the pre-marshaled workload used for change detection and versioning in ambient was not stable when a workload had more than one service
- Fixed an issue where the network gateway selected for a workload was picked in a random order when a network had more than one gateway entry
- Fixed configuration dependency filtering for gateways to exclude unrelated configuration updates.
- Fixed removing a single event handler from a CRD-backed informer removing every handler on that informer.
- Fixed an issue where EDS-irrelevant configuration updates coalesced with an endpoint update caused full EDS generation instead of updating only the affected endpoint assignments.
additions (4)
- Added support for cluster-level connection buffer limits ( clusterPerConnectionBufferLimitBytes ) via connectionSettings in ProxyConfig
- Added support for globalDownstreamConnectionLimit in ProxyConfig.connectionSettings , providing a first-class API field for configuring the global downstream connection limit.
- Added a validation warning for ServiceEntry addresses that are catch-all ( 0.0.0.0 , :: ), have an unspecified network ( 0.0.0.0/N , ::/N ), or are a CIDR with a prefix shorter than /8 .
- by adding the PILOT_ENABLE_WDS_DEBOUNCE environment variable, enabled by default.
value changes (1)
- aws-lc-rs is updated to 1.18.2, which retries the read instead of aborting.
A weekly email arrives when a release needs action. Like the security patches and breaking changes in this release.