Kubernetes (简称K8s)是是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署、规划、更新、维护的一种机制。K8s 最早是由谷歌开发的,目前由Cloud Native Computing Foundation 基金会维护。
漏洞概述
研究人员在K8s 中发现一个影响所有K8s版本的设计漏洞,允许租户创建和更新服务的多租户集群成为最易受到攻击的目标。如果攻击者可以创建或编辑服务或pod,可能就可以拦截集群中来自其他pod的流量。如果用任意的外部IP 来创建一个服务,集群中到该IP 的流量就会被路由到该服务,这样有权限利用外部IP 来创建服务的攻击者就可以拦截到任意目标IP的流量。
CVE-2020-8554漏洞是中危漏洞,有创建和编辑服务和pod等基本租户权限的攻击者可以在没有任何用户交互的情况下远程利用该漏洞。
由于External IP (外部IP)服务并没有广泛应用于多租户集群中,而且授予租户LoadBalancer IP 的补丁服务/状态权限并不推荐,因此该漏洞只影响少量的Kubernetes 部署。
如何拦截CVE-2020-8554漏洞利用
虽然Kubernetes 开发团队还没有提供安全补丁,但是Kubernetes产品安全委员会已经就如何临时拦截该漏洞利用提供了建议。建议通过限制对有漏洞的特征的访问来应对CVE-2020-8554漏洞。此外,还可以用admission webhook container来限制对外部IP的使用,源码和部署指南参见 https://github.com/kubernetes-sigs/externalip-webhook
使用Open Policy Agent Gatekeeper 策略控制器来实现对外部IP 的限制,具体参见:https://github.com/open-policy-agent/gatekeeper-library/tree/master/library/general/externalip
本文翻译自:https://www.bleepingcomputer.com/news/security/all-kubernetes-versions-affected-by-unpatched-mitm-vulnerability/如若转载,请注明原文地址。