Istio
1.31.2Networking & Messaging보안 문제와 동작 오류를 바로잡고 연결 및 라우팅 제어를 확장한 유지 보수 릴리스입니다. 운영자가 확인할 기본값과 제약 조건도 일부 바뀌었습니다.
조치 필요 (3)
security워크로드 인증서 TTL 상한 추가
새로운
MAX_RA_WORKLOAD_CERT_TTL환경 변수가 추가되었으며 기본값은48h입니다. 이 값이 인증서 TTL 상한을 정해 도난된istio-token의 영향 범위를 제한합니다.security
istiod디버그 엔드포인트의proxyID일치 수정istiod디버그 엔드포인트인/debug/config_dump,/debug/edsz와 XDS의istio.형식이io/debug/config_dump proxyID를 부분 문자열로 잘못 일치시키던 문제가 수정되었습니다.breaking클라이언트 측 요청 시간 초과 동작 변경
클라이언트 측 요청 시간 초과가 적용되어 멈춘 요청이 취소되고 구성 요소가 스스로 복구합니다. 관련 시간 초과 설정은
ISTIO_KUBE_HEADER_TIMEOUT과ISTIO_KUBE_REQUEST_TIMEOUT이며, 만료 횟수는kube_client_deadline_fired_total로 확인할 수 있습니다.
영향 확인 (7)
security
OAuth2 HTTP filter의 원격 충돌 수정OAuth2 HTTP filter를 사용하는 경우에 적용됩니다.GHSA-8vc2-jrm4-835w와 관련해,
:path헤더가 없는CONNECT요청에서OAuth2 HTTP filter가 인증되지 않은 원격 충돌을 일으키던 문제가 수정되었습니다.security
api_key_auth HTTP filter의 충돌 수정api_key_auth HTTP filter를 사용하는 경우에 적용됩니다.GHSA-47vj-9r25-wv5j와 관련해,
:path헤더가 없는CONNECT요청에서api_key_auth HTTP filter가 충돌하던 문제가 수정되었습니다.securityHTTP/2
AuthorizationPolicy메서드 규칙 우회 수정적용 대상이 릴리스 노트에 명시되지 않았습니다.
HTTP/2에서 메서드의 대소문자를 바꾸면
AuthorizationPolicy의 메서드 규칙을 우회할 수 있던 문제가 수정되었습니다. 관련 보안 권고는 GHSA-w44g-8m76-8gc5입니다.securityambient 모드
istiod충돌 수정적용 대상이 릴리스 노트에 명시되지 않았습니다.
IP 주소를 사용하는 웨이포인트의 주소를
ServiceEntry나 다른 서비스가 차지하면 ambient 모드의istiod가 충돌하던 문제가 수정되었습니다. 관련 보안 권고는 GHSA-7p2q-4xvg-vxc6입니다.security
istioctl의istiod인증서 검증 수정적용 대상이 릴리스 노트에 명시되지 않았습니다.
서비스 계정 토큰으로 XDS에 연결할 때
istioctl이istiod인증서 검증을 건너뛰던 문제가 수정되었습니다.security
CreateCertificate의 Kubernetes API 오류 처리 수정EXTERNAL_CA=ISTIOD_RA_KUBERNETES_API를 구성한 경우에 적용됩니다.실험적 Kubernetes CSR RA 경로에서
CreateCertificate가 Kubernetes API의 원시 오류 내용을 호출자에게 그대로 반환하던 문제가 수정되었습니다.security허용된 레지스트리로 평문 재시도 제한
WASM_INSECURE_REGISTRIES를 구성한 경우에 적용됩니다.평문 재시도는 운영자가
WASM_INSECURE_REGISTRIES로 명시적으로 허용 목록에 넣은 레지스트리에만 수행됩니다.
미리 준비 (1)
deprecated
overload.사용 중단global_downstream_max_connections overload.를 구성한 경우에 적용됩니다.global_downstream_max_connections overload.런타임 플래그가 더 이상 사용되지 않는 설정으로 지정되었습니다.global_downstream_max_connections
그 외 기록된 변경 17건 전체fixes 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.
조치가 필요한 릴리스가 나왔을 때 주간 메일로 알려드립니다. 이번 릴리스의 보안 패치와 브레이킹 체인지 같은 것들입니다.