ISTIO-SECURITY-2021-007

Istio 包含一个可远程利用的漏洞,可以从不同的命名空间访问 Gateway 和 DestinationRule credentialName 字段中指定的身份凭据。

Jun 24, 2021

安全漏洞详情
CVE(s)CVE-2021-34824
CVSS 影响评分9.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:L
受影响的版本All 1.8 patch releases
1.9.0 to 1.9.5
1.10.0 to 1.10.1

问题

Istio GatewayDestinationRule 可以通过 credentialName 配置从 Kubernetes 密钥中加载私钥和证书。 对于 Istio 1.8 及更高版本,密钥通过 XDS API 从 Istiod 传送到网关或工作负载。

在上述方法中,网关或工作负载部署应该只能访问存储在其命名空间内的 Kubernetes 密钥中的凭证(TLS 证书和私钥)。 但是,Istiod 中的一个错误允许授权客户端访问和检索缓存在 Istiod 中的任何 TLS 证书和私钥。

对我的影响?

如果您的集群符合以下所有条件,您的集群就会受到影响:

防范

将您的集群更新到支持的最新版本:

如果升级不可行,可以通过禁用 Istiod 缓存来缓解此漏洞。 通过设置 Istiod 环境变量 PILOT ENABLE XDS CACHE=false 禁用缓存。 系统和 Istiod 的性能可能会受到影响,因为这禁用了 XDS 缓存。

鸣谢

我们要感谢 Sopra Banking SoftwareNishant Virmani, Stephane MercierAntonin Nycz)以及 John Howard(谷歌)报告了这个问题。