# Istio 1.31.1

> Networking & Messaging · 2026-09-21

보안 취약점과 정확성 문제를 수정한 유지보수 릴리스이며, 성능 개선과 Kiali 업데이트도 포함합니다. 운영 환경에서 관련 기능을 사용하는 경우 보안 동작과 설정 처리를 확인할 수 있습니다.

## 영향 확인
- **[security]** `BackendTLSPolicy`의 평문 연결 허용 수정
  - `BackendTLSPolicy`를 사용하는 경우 적용됩니다.
  - CA 참조를 확인하지 못하면 사이드카 프록시에서 평문 연결이 허용되던 `BackendTLSPolicy` 동작을 수정했습니다. `GHSA-qm8v-g4f9-qhjx`에 해당하는 문제입니다.
- **[security]** `istioctl analyze`의 멀티클러스터 시크릿 처리 보완
  - `istioctl analyze`를 사용하는 경우 적용됩니다.
  - `istio-system` 멀티클러스터 시크릿에서 검증 없이 `kubeconfig`를 만들어 Kubernetes 클라이언트를 생성하던 `istioctl analyze` 동작을 수정했습니다. 이제 `istiod`와 같은 방식으로 `kubeconfig`를 정제하므로, 조작된 시크릿이 `exec` 인증 플러그인을 실행하거나 로컬 파일을 읽는 문제가 차단됩니다.
- **[security]** 카나리 웨이포인트의 네임스페이스 격리 적용
  - `istio.io/use-waypoint-canary`와 `serviceEntryVisibility`를 함께 사용하는 경우 적용됩니다.
  - `istio.io/use-waypoint-canary` 레이블이 `serviceEntryVisibility`의 `NAMESPACE` 격리를 우회하던 문제를 수정했습니다. 이제 카나리 웨이포인트에도 기본 웨이포인트와 같은 네임스페이스 간 접근 거부가 적용됩니다.
- **[security]** `jwksUri` 조회의 SSRF 차단 보완
  - `jwksUri`를 사용하는 경우 적용됩니다.
  - `istiod`의 `RequestAuthentication` `jwksUri` 조회에서 발생하던 SSRF 허점을 수정했습니다. 이제 연결 단계에서 링크 로컬 주소와 `169.254.169.254` 같은 클라우드 메타데이터 주소를 기본 차단하고, 유효한 `JWKS`가 아닌 응답도 거부합니다. 사설 주소와 루프백 주소는 계속 접근할 수 있으며, `BLOCKED_CIDRS_IN_JWKS_URIS`로 차단 범위를 설정할 수 있습니다.
- **[security]** `sidecar.istio.io/*` 애너테이션 출력 이스케이프 적용
  - `sidecar.istio.io/*` 애너테이션을 사용하는 경우 적용됩니다.
  - `sidecar.istio.io/*` 애너테이션의 `proxyImage`, `bootstrapOverride`, `logLevel`, `componentLogLevel`, `agentLogLevel` 값이 사이드카와 게이트웨이 주입 템플릿에 출력 이스케이프 없이 삽입되던 문제를 수정했습니다. 이제 모든 템플릿 삽입 지점에서 값을 일관되게 이스케이프하므로, 조작된 값으로 생성되는 파드나 배포 사양에 필드를 추가하는 문제가 차단됩니다.

## 그 밖에 기록된 변경
- 22 (defect_corrected 20, value_changed 2)

[분석 자세히 보기](https://ratatosk.io/ko/releases/istio/1.31.1)

[원본 릴리스 노트](https://github.com/istio/istio/releases/tag/1.31.1)
