首页 > 新闻中心 > 互联网 > 动态 > 正文

阻击RunC逃逸漏洞,华为云容器为您支招
2019-02-14 16:55   雪球      我要评论()
字号:T|T

RunC容器逃逸漏洞(CVE-2019-5736)暴露这几天,各云容器服务供应商纷纷提供了各自的解决方案,相对于业内普遍要求用户中断业务,升级Docker最新版本的有损升级方案,华为云容器服务提供了最省心的在线无损升级解决方案。

背景信息

基于RunC运行时的容器存在安全漏洞,攻击者可以通过恶意容器镜像等方式获取宿主机root执行权限。

漏洞原理分析

本次漏洞典型的攻击方式是通过恶意镜像:在恶意镜像中,将攻击函数隐藏在恶意动态库如(libseccomp.so.2)中,并使执行命令指向/proc/self/exe。当RunC动态编译时,会从容器镜像中载入动态链接库,导致加载恶意动态库;当打开/proc/self/exe即RunC时,会执行恶意动态链接库中的恶意程序,由于恶意程序继承RunC打开的文件句柄,可以通过该文件句柄替换host上的RunC。此后,再次执行RunC相关的命令,则会产生逃逸。

影响范围

本次漏洞对所有采用RunC的容器引擎均生效,RunC是Docker容器的核心组件,因此对绝大部分容器均会产生影响。其中主要影响的是多用户共享节点的场景,可导致某用户通过渗透进而控制节点并攻击整集群。

华为云CCE容器服务:CCE容器服务创建的Kubernetes集群属于单租户专属,不存在跨租户共享,影响范围较小,对于多用户场景需要关注。

CCE采用的是华为自研的iSula Docker容器,其中RunC采用静态编译方式载入依赖库,因此目前公开披露的攻击方式无法入侵。

但为确保容器服务运行更安全,CCE容器服务仍将在近日完成现网Docker容器的自动热升级,用户无需任何手动操作,且升级过程对运行中的容器业务无影响。

华为云CCI容器实例服务:CCI引擎采用华为iSula Kata容器引擎,提供单节点上多容器高安hypervisor级别的隔离能力,并没有采用RunC容器,因此本次漏洞将不会对CCI产生影响。

修复方法

华为云CCE容器服务:

近日CCE容器服务会对运行的Docker进行无损热升级,包含正在运行的1.11.2, 17.06等历史版本均会提供对应补丁版本,无需更新到18.09版本,已运行容器将不受影响,请各位关注升级公告。

自建Kubernetes或使用开源容器引擎:

升级Docker到18.09.2版本, 由于开源Docker在17.06之后的版本做了较大变更,涉及架构解耦重构,该办法可能会导致用户容器业务中断,建议做好充分验证,并按节点逐步滚动升级。

仅升级RunC,对于17.06等Docker版本,可以不中断已运行业务,当前RunC官方尚未发布包含漏洞修复补丁的新版本,如果要单独升级RunC,用户可自行编译。

另特别提醒,本次Docker官方补丁使用了高版本Linux内核的系统调用,在低版本内核部分版本上可能会失效,若补丁失效时,建议升级至3.17以上内核。华为云CCE容器服务提供的补丁针对官方补丁进行了优化适配,已验证在多版本内核上均可生效。

投稿:news@newhua.com

关键词: 华为云

责任编辑:新闻中心

我要评论

已有位网友参与评论

网站地图

牛华网

华军下载 | 牛华网 | 盒子 | pcsoft | 论坛

实用工具

关于我们 | 新闻投稿 | 软件发布 | 版权声明 | 意见建议 | 网站地图 | 友情连接 | RSS订阅 | 总编信箱 | 诚聘英才 | 联系我们

苏ICP备11016551号-2  苏公网安备 32132202000111号 本站特聘法律顾问:于国富律师

Copyright (C) 1997-2018 newhua.com 宿迁市牛华网络科技有限公司 版权所有