RATATOSKRATATOSK
로그인

Istio

1.30.4Networking & Messaging
2026년 8월 27일

ACTION 2CHECK 16OTHER 15

`Envoy`와 `Istio`의 보안 취약점을 수정한 유지보수 릴리스입니다. 안정성과 정확성 문제도 바로잡았으며, 일부 동작과 검증 방식, 기본값은 운영 환경에 따라 확인이 필요합니다.

조치 필요 (2)

  • security매개변수 포함 경로 구간의 URL 정규화 수정

    CVE-2026-73551을 수정했습니다. 매개변수가 포함된 점 경로 구간과 상위 경로 구간의 URL 정규화를 바로잡았습니다.

  • security구간별 매개변수 경로 일치 수정

    CVE-2026-73511을 수정했습니다. 구간별 매개변수가 있는 경로의 일치 처리를 바로잡았습니다.

영향 확인 (16)

  • securityHTTP/2 트레일러 처리 중 힙 사용 후 해제 수정

    HTTP/2를 사용하는 경우 적용됩니다.

    CVE-2026-73513을 수정했습니다. END_STREAM 플래그 없이 HTTP/2 트레일러를 받을 때 oghttp2에서 발생하던 힙 사용 후 해제 문제를 해결했습니다.

  • securitysafe_regex의 비정상 헤더 바이트 처리 수정

    safe_regex를 설정한 경우 적용됩니다.

    CVE-2026-73552를 수정했습니다. 음수 일치 RBAC 정책에서 safe_regexUTF-8이 아닌 헤더 바이트를 허용하던 문제를 해결했습니다.

  • securityQUIC HTTP 데이터그램 처리기의 사용 후 해제 수정

    QUIC HTTP 데이터그램 처리기를 사용하는 경우 적용됩니다.

    CVE-2026-73512를 수정했습니다. QUIC HTTP 데이터그램 처리기에서 발생하던 사용 후 해제 문제를 해결했습니다.

  • securityext_authzCONNECT 요청 비정상 종료 수정

    ext_authz를 사용하는 경우 적용됩니다.

    CVE-2026-73547을 수정했습니다. :path 헤더가 없는 CONNECT 요청을 처리할 때 ext_authz가 비정상 종료되던 문제를 해결했습니다.

  • securityHTTP/3의 범위 지정 IPv6 주소 처리 수정

    HTTP/3를 사용하는 경우 적용됩니다.

    CVE-2026-73549를 수정했습니다. HTTP/3에서 범위가 지정된 IPv6 클라이언트 주소를 처리할 때 비정상 종료가 발생하던 문제를 해결했습니다.

  • securityext_authz 원시 HTTP 클라이언트의 사용 후 해제 수정

    ext_authz를 사용하는 경우 적용됩니다.

    CVE-2026-50572를 수정했습니다. ext_authz 원시 HTTP 클라이언트에서 발생하던 사용 후 해제 문제를 해결했습니다.

  • securityHTML 통계 인터페이스의 저장형 사이트 간 스크립팅 수정

    HTML 통계 인터페이스를 외부에 노출하는 경우 적용됩니다.

    CVE-2026-73546을 수정했습니다. HTML 통계 인터페이스에 저장되는 사이트 간 스크립팅 취약점을 해결했습니다.

  • securityALPN 기반 HTTP/3 연결 풀 선택 수정

    HTTP/3를 사용하는 경우 적용됩니다.

    CVE-2026-48521을 수정했습니다. ALPN 기반 HTTP/3 연결 풀을 선택할 때 널 포인터를 역참조하던 문제를 해결했습니다.

  • security일반 HTTP 업그레이드의 사용자 간 응답 오염 수정

    일반 HTTP 업그레이드를 사용하는 경우 적용됩니다.

    CVE-2026-73548을 수정했습니다. 일반 HTTP 업그레이드에서 사용자 간 응답이 오염될 수 있던 문제를 해결했습니다.

  • security중복 Host 헤더로 인한 HTTP/2 메모리 고갈 수정

    HTTP/2를 사용하는 경우 적용됩니다.

    CVE-2026-73550을 수정했습니다. 중복 Host 헤더를 버리는 과정에서 HTTP/2 메모리가 고갈될 수 있던 문제를 해결했습니다.

  • securityignore_path_parameters_in_path_matching을 통한 RBAC 우회 수정

    ignore_path_parameters_in_path_matching을 설정한 경우 적용됩니다.

    CVE-2026-73553을 수정했습니다. ignore_path_parameters_in_path_matching 설정을 이용해 RBAC를 우회할 수 있던 문제를 해결했습니다.

  • security인증 기관 참조 미확인 시 BackendTLSPolicy의 일반 텍스트 허용 수정

    적용 대상이 릴리스 노트에 명시되지 않았습니다.

    GHSA-qm8v-g4f9-qhjx를 수정했습니다. 인증 기관 참조를 확인하지 못한 사이드카 프록시에서 BackendTLSPolicy가 일반 텍스트 연결을 허용하던 문제를 해결했습니다.

  • securityXDS API 생성기의 인증 요구 및 기본값 변경

    XDS API 생성기, 즉 MCP 설정 제공 기능을 실행하는 경우 적용됩니다.

    XDS API 생성기, 즉 MCP 설정 제공 기능이 검증된 컨트롤 플레인 신원을 요구하도록 수정했습니다. 이제 ENABLE_XDS_API_GENERATOR_AUTH=true가 기본값이며, 호환성을 위해 필요한 경우 ENABLE_XDS_API_GENERATOR_AUTH=false로 비활성화할 수 있습니다.

  • security교차 네임스페이스 인증서 참조 권한 확인 순서 수정

    적용 대상이 릴리스 노트에 명시되지 않았습니다.

    Gateway API에서 교차 네임스페이스 certificateRefcaCertificateRef를 확인하기 전에 참조 대상을 조회하던 문제를 수정했습니다. 이제 ReferenceGrant 권한을 먼저 확인하며, 허용되지 않은 참조에는 RefNotPermitted를 반환합니다.

  • securityjwksUri 조회 시 내부 주소 접근 제한

    jwksUri를 설정한 경우 적용됩니다.

    istiodRequestAuthentication에서 jwksUri를 가져올 때 발생하던 서버 쪽 요청 위조 문제를 수정했습니다. 이제 기본적으로 링크 로컬 주소와 알려진 클라우드 메타데이터 주소를 연결 단계에서 차단하고, 가져온 응답이 유효한 JWKS인지 확인합니다. 사설 주소와 루프백 주소는 계속 연결할 수 있으며 BLOCKED_CIDRS_IN_JWKS_URIS로 차단할 수 있습니다.

  • security사이드카 주입 주석 값의 출력 이스케이프 적용

    sidecar.istio.io/* 주석인 proxyImage, bootstrapOverride, logLevel, componentLogLevel, agentLogLevel 중 하나를 설정한 경우 적용됩니다.

    proxyImage, bootstrapOverride, logLevel, componentLogLevel, agentLogLevelsidecar.istio.io/* 주석 값을 사이드카와 게이트웨이 주입 템플릿에 삽입할 때 출력 이스케이프가 빠지던 문제를 수정했습니다. 이제 모든 템플릿 삽입 지점에서 해당 값이 일관되게 이스케이프됩니다.

그 외 기록된 변경 15건 전체fixes 14 · constraints 1

fixes (14)

  • - Fixed a deadlock where the istio-cni node agent pod could fail to start (for example after a node reboot) because the CNI plugin only skipped the Kubernetes client creation for its own agent pod when ambient mode was enabled. The preemptive check now runs in sidecar mode as well, so the agent pod no longer blocks on a kubeconfig it has not written yet. ( Issue #60668 )
  • - Fixed a bug where a remote cluster’s network gateway could disappear from cross-network routing after credential rotation and not recover until istiod restarted. The in-place registry swap now re-wires the new registry to the aggregate controller’s handlers so its future gateway and service events propagate, and reloads gateways once to pick up those discovered during the pre-swap sync. ( Issue #60920 )
  • - Fixed an issue in multicluster deployments where rotating a remote cluster’s istio-remote-secret could permanently wipe endpoint shards for services with stable endpoints in that cluster, making them unreachable across clusters until istiod was restarted. ( Issue #61043 )
  • - Fixed a race condition on istiod startup where the readiness probe could report ready before the dedicated injection and validation webhook server ( --httpsAddr , default :15017 ) was accepting connections, causing intermittent failed calling webhook timeouts when creating resources immediately after istiod became ready. This does not affect deployments where webhooks share the main HTTP server (empty --httpsAddr ). ( Issue #61049 )
  • - Fixed an issue where ingress gateways bypassed waypoint proxies for multi-cluster services when remote workloads were on a different network, causing authorization policies to not be enforced. ( Issue #61092 )
  • - Fixed an issue where gateway proxy Deployment resources could permanently fail to be created during istiod startup. ( Issue #61095 )
  • - Fixed an issue where a pod selected by a ServiceEntry workloadSelector could start up missing that service from its sidecar’s inbound configuration. Traffic to the port was not handled as the protocol declared in the ServiceEntry , and port-level PeerAuthentication was not applied. The pod did not recover on its own; only restarting istiod repaired it. ( Issue #61157 )
  • - Fixed an issue where istio-cni considered hostNetwork pods eligible for ambient enrollment. ( Issue #61168 )
  • - Fixed a file descriptor leak in the istio-cni node agent: when the procfs scan found more than one network namespace for the same pod, the losing candidate’s netns file descriptor was dropped without being closed, pinning the namespace in the kernel until garbage collection.
  • - Fixed external SDS providers configured through extensionProviders to use the configured service hostname as the gRPC authority.
  • - Fixed a goroutine leak in istiod leader election where every election cycle (leadership lost and re-acquired) leaked one goroutine until process exit. ( Issue #60843 )
  • - Fixed an issue where istiod CPU usage increased as the number of AuthorizationPolicy resources increased. ( Issue #61254 )
  • - Fixed ListenerSet conflict resolution for hostname and protocol conflicts. Conflicting listeners are now correctly rejected and ListenerSet status conditions report in compliance with Gateway API 1.5. ( PR #60775 )
  • - Fixed a bug where a ztunnel reconnect (such as the periodic connection recycle from keepaliveMaxServerConnectionAge ) triggered a full workload (WDS) push. Istiod now assigns each WDS resource a content-based version and, when a reconnecting client reports the versions it already holds via initial_resource_versions , re-sends only resources that changed while the client was disconnected. Older ztunnel versions that do not report versions continue to receive the full set. ( Issue #1966 )

constraints (1)

  • - Fixed an EnvoyFilter validation gap where an uncapped proxyVersion match expression could drive excessive istiod memory and CPU during regex compilation. The match expression is now limited to 1024 characters. Credit : This issue was reported by Artem Cherezov .
Istio 스택에 추가

조치가 필요한 릴리스가 나왔을 때 주간 메일로 알려드립니다. 이번 릴리스의 보안 패치 같은 것들입니다.

스택에 추가