Kubernetes现重大安全漏洞:唯一方法是升级

现在有一种不留痕迹的方式可以黑入非常流行的云容器编排系统Kubernetes。

Kubernetes是一系列开源项目,用于使容器化应用程序的部署、扩展和管理实现自动化。

借助一个精心设计的网络请求,任何用户都可以通过Kubernetes应用编程接口(API)服务器与后端服务器建立连接。一旦连接建立起来,攻击者可以通过网络连接直接向该后端发送任意请求。问题更加严重的是,这些请求是用Kubernetes API服务器的传输层安全(TLS)登录信息来验证身份的。

你可以说是root权限吗?可以这么说。

更为糟糕的是,“在默认配置中,允许所有用户(身份经过验证的用户和身份未经验证的用户)都可以执行允许此升级的发现API调用。”所以,没错,凡是了解这个漏洞的人都可以控制你的Kubernetes集群。

雪上加霜的是:“目前没有简单的方法来检测该安全漏洞是否已被人利用。由于未经授权的请求是通过已建立的连接进行的,因此它们并不出现在Kubernetes API服务器审核日志或服务器日志中。请求确实出现在kubelet(每个节点上运行的主节点代理)或聚合的API服务器日志中,但是无法与通过Kubernetes API服务器正确授权和代理的请求区别开来。”

换句话说,Red Hat表示“这个权限升级漏洞使得任何用户都可以全面获得在Kubernetes pod中运行的任何计算节点上的管理员权限。这是重大问题。不法分子不仅可以窃取敏感数据或注入恶意代码,他们还可以从企业组织的防火墙里面肆意破坏生产应用程序和服务。”

幸好有一个解决办法,但一些人不会喜欢这个办法:必须升级Kubernetes,赶紧升级。具体来说,Kubernetes v1.10.11、v1.11.5、v1.12.3和v1.13.0-rc.1这些版本已有相应的补丁。

如果你仍在使用Kubernetes v1.0.x-1.9.x,赶紧住手。更新到已有补丁的版本。如果由于某种原因你无法升级,有一些补救方法,但这些补丁方法比问题本身还要糟糕。你必须暂停使用聚合的API服务器,针对不该全面访问kubelet API的用户删除其pod执行/连接/端口转发等权限。谷歌软件工程师乔丹•利格特(Jordan Liggitt)表示,这些应对方法可能具有破坏性。你认为呢?

唯一真正的解决方法就是升级Kubernetes。

任何包含Kubernetes的程序都很容易受到攻击。Kubernetes发行商已经在发布修复程序。

Red Hat报告其所有“基于Kubernetes的服务和产品(包括Red Hat OpenShift容器平台、Red Hat OpenShift Online和Red Hat OpenShift Dedicated)都受到影响。”Red Hat已经开始向受影响的用户提供补丁和服务更新。

目前还没有人利用该安全漏洞攻击任何人。Rancher Labs的首席架构师兼联合创始人谢达伦•谢泼德(Darren Shepard)发现了该漏洞,并使用Kubernetes漏洞报告流程报告了漏洞。

但要提醒的一点是,钻这个漏洞的空子在日志中不会留下任何明显的痕迹。而且,鉴于关于Kubernetes权限升级漏洞的消息现已传开来,该漏洞早晚会被人钻空子。

因此,赶紧升级Kubernetes系统,免得贵公司到头来摊上大麻烦。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181204A1Q29900?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券