乐趣区

Kubernetes新近kubectl及CNI漏洞修复,Rancher 2.2.1发布

今天,Kubernetes 发布了一系列补丁版本,修复新近发现的两个安全漏洞 CVE-2019-1002101(kubectl cp 命令安全漏洞)和 CVE-2019-9946(CNI 端口映射插件漏洞)。Rancher 也紧急更新,发布一系列新版以支持 Kubernetes 补丁版本。
本文将介绍 CVE-2019-1002101 和 CVE-2019-9946 的详情、原理、受影响版本及升级建议,以及 Rancher 提供给用户的应对之策。

CVE-2019-1002101
漏洞详情及原理
CVE-2019-1002101 是 kubectl cp 命令中存在的安全漏洞,严重等级为【高】,攻击者可以使用 kubectl cp 命令替换或删除用户工作站上的文件,在用户计算机的任何路径上写入恶意文件。
kubectl cp 命令允许在容器和用户计算机之间复制文件。为了从容器中复制文件,Kubernetes 会在容器内创建一个 tar,通过网络复制它,然后 kubectl 会在用户的机器上解压缩它。
而如果容器中的 tar 二进制文件是恶意的,它可以运行任何代码并输出意外的恶意结果。在用户调用 kubectl cp 时,攻击者可以使用它将文件写入用户计算机上的任何路径,只有本地用户的系统权限有可能限制这一操作。
受影响的版本及升级建议
什么版本用户会被此次漏洞影响?试着运行 kubectl version—client 进行查看,除了 1.11.9、1.12.7、1.13.5、1.14.0 或更新版本之外,其他均为易受攻击的版本。
所有使用易受攻击版本的用户,都被建议升级至 Kubernetes 今天发布的补丁版本:1.11.9、1.12.7、1.13.5、1.14.0。
kubectl 的安装和设置方法,可以参照这一链接的说明教程:
https://kubernetes.io/docs/ta…
CVE-2019-9946
漏洞详情及原理
CVE-2019-9946 是 Kubernetes CNI 框架中的安全漏洞,0.7.5 之前版本的 CNI 插件端口映射和 Kubernetes 之间的交互中发现了安全问题,严重等级为【中等】。因为 CNI 端口映射插件是嵌入到 Kubernetes 版本中的,只有升级至新版本的 Kubernetes 才能解决此问题。
在此修复之前,当我们配置 HostPorts 端口映射方式时 CNI 插件会在 iptables nat 链之前插入规则,这将优先于 KUBE- SERVICES 链。因此,传入流量时,流量会优先经过 HostPort 的规则,即使之后在链中出现了更适合、更具体的服务定义规则(例如 NodePorts),依然会由 HostPort 的规则来匹配传入的流量。
现在修复之后,将端口映射插件的规则由“最优先”变为“附加”,则可以让流量优先由 KUBE-SERVICES 规则处理。只有当流量与服务不匹配时,才会考虑使用 HostPorts。
受影响的版本及升级建议
因为这会影响插件界面,因此如果你不完全了解自己的 Kubernetes 配置,很难确定自己是否会受此漏洞影响。IPVS 模式下的 kube-proxy 配置加上使用 HostPort 端口映射类型的 pod,是肯定会被这一漏洞影响的。但同样需要注意的是,其他网络配置方式也有可能使用了 CNI 的 portmap 端口映射插件。
运行 kubectl version –short | grep Server,如果它显示你使用的不是 1.11.9、1.12.7、1.13.5 和 1.14.0 或更新的版本,且如果你的 Kubernetes 与使用了端口映射插件的 CNI 配置配对,那么你极有可能会受这一漏洞影响。
但无需特别担心的是,只需按照管理工具或供应商的说明,升级到最新补丁版本的 Kubernetes(1.11.9、1.12.7、1.13.5 和 1.14.0)即可。
Rancher 已发布最新版本应对此次漏洞
此次也一如既往,在 Kubernetes 自身爆出漏洞之后,Rancher Labs 团队都第一时间响应,保障使用 Rancher 平台管理 Kubernetes 集群的用户的安全。
如果你是使用 Rancher 平台管理 Kubernetes 集群,不用担心,Rancher 已于今日发布了最新版本,支持包含漏洞修复的 Kubernetes 版本(1.11.9、1.12.7 和 1.13.5),保障所有 Rancher 用户的 Kubernetes 集群不受此次漏洞困扰。
若您使用的版本可能受此次两个漏洞影响,可以升级至今天发布的以下三个最新 Rancher 版本:

Rancher 2.2.1
Rancher 2.1.8
Rancher 2.0.13

对于 Rancher 1.6.x 的用户,我们已在 Rancher v1.6.26 的 Catalog(应用程序目录)中添加了对 Kubernetes v1.11.9 和 v1.12.7 的支持。您可以升级至 Rancher v1.6.26,新版本将在下一次目录自动刷新时可用。
为用户的 Docker & K8S 之旅护航
Rancher Kubernetes 平台拥有着超过一亿次下载量,我们深知安全问题对于用户而言的重要性,更遑论那些通过 Rancher 平台在生产环境中运行 Docker 及 Kubernetes 的数千万用户。
2018 年年底 Kubernetes 被爆出的首个严重安全漏洞 CVE-2018-1002105,就是由 Rancher Labs 联合创始人及首席架构师 Darren Shepherd 发现的。
2019 年 1 月 Kubernetes 被爆出仪表盘和外部 IP 代理安全漏洞 CVE-2018-18264 时,Rancher Labs 也是第一时间向用户响应,确保所有 Rancher 2.x 和 1.6.x 的用户都完全不被漏洞影响。
2019 年 2 月爆出的严重的 runc 容器逃逸漏洞 CVE-2019-5736,影响到大多数 Docker 与 Kubernetes 用户,Rancher Kubernetes 管理平台和 RancherOS 操作系统均在不到一天时间内紧急更新,是业界第一个紧急发布新版本支持 Docker 补丁版本的平台,还帮忙将修复程序反向移植到所有版本的 Docker 并提供给用户,且提供了连 Docker 官方都不支持的针对 Linux 3.x 内核的修复方案。
负责、可靠、快速响应、以用户为中心,是 Rancher 始终不变的初心;在每一次业界出现问题时,严谨踏实为用户提供相应的应对之策,也是 Rancher 一如既往的行事之道。未来,Rancher 也将一如既往支持与守护在用户的 Kubernetes 之路左右,确保所有企业用户都能安全、稳妥、无虞地继续前进。

退出移动版