背景信息

基于runc运行时的容器存在安全漏洞,攻击者可以通过恶意容器镜像等方式获取宿主机root执行权限。漏洞CVE-2019-5736的详细信息,请参见

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5736

漏洞原理分析

本次漏洞典型的攻击方式是通过恶意镜像:在恶意镜像中,将攻击函数隐藏在恶意动态库如(libseccomp.so.2)中,并使执行命令指向/proc/self/exe。

当runc动态编译时,会从容器镜像中载入动态链接库,导致加载恶意动态库;当打开/prco/self/exe即runc时,会执行恶意动态链接库中的恶意程序,由于恶意程序继承runc打开的文件句柄,可以通过该文件句柄替换host上的runc。

此后,再次执行runc相关的命令,则会产生逃逸。

影响范围

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

  2. 华为云CCE容器服务:
    CCE容器服务创建的Kubernetes集群属于单租户专属,不存在跨租户共享,影响范围较小,对于多用户场景需要关注。
    当前CCE采用华为优化的iSula Docker容器,其中RUNC采用静态编译,目前公开披露的攻击方法无法成功入侵。为确保容器服务安全稳定运行,CCE容器服务将会在近日对在运行Docker容器进行热升级。

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

修复方法

    1. 华为云CCE容器服务:

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

    2. 自建kubernetes或使用开源容器引擎:

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

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

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

面对runc逃逸漏洞,华为云容器为您保驾护航的更多相关文章

  1. Forrester:华为云容器是容器混合云最佳选择

    近日,国际权威咨询机构Forrester发布<The Forrester New WaveTM: Public Cloud Enterprise Container Platforms, Q3 ...

  2. 华为云Volcano:让企业AI算力像火山一样爆发

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

  3. 华为云对Kubernetes在Serverless Container产品落地中的实践经验

    华为云容器实例服务,它基于 Kubernetes 打造,对最终用户直接提供 K8S 的 API.正如前面所说,它最大的优点是用户可以围绕 K8S 直接定义运行应用. 这里值得一提是,我们采用了全物理机 ...

  4. 自动驾驶轻松开发?华为云ModelArts赋能智慧出行

    作为战略新兴产业,人工智能已经开始广泛应用于多个领域.近几年,科技公司.互联网公司等各领域的企业纷纷布局自动驾驶.那么,自动驾驶技术究竟发展得如何了?日前,华为云携手上海交通大学创新中心举办的华为云人 ...

  5. 本科阶段就挑战自动驾驶开发?华为云ModelArts帮你轻松实现!

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

  6. 华为云PaaS首席科学家:Cloud Native +AI,企业数字化转型的最佳拍档

    近日,在2019华为全球分析师大会期间,华为云PaaS首席科学家熊英博士在+智能,见未来(华为云&大数据)的分论坛上,从云计算行业发展谈起,深入云原生发展趋势,对华为云智能应用平台做了深度解读 ...

  7. 腾讯云发布runC容器逃逸漏洞修复公告

    尊敬的腾讯云客户,您好:  近日,腾讯云安全中心监测发现轻量级容器运行环境runc被爆存在容器逃逸漏洞,攻击者可以在利用该漏洞覆盖Host上的runc文件,从而在Host上以root权限执行代码. 为 ...

  8. RunC容器逃逸漏洞席卷业界,网易云如何做到实力修复?

    近日,业界爆出的runC容器越权逃逸漏洞CVE-2019-5736,席卷了整个基于runC的容器云领域,大量云计算厂商和采用容器云的企业受到影响.网易云方面透露,经过技术团队的紧急应对,网易云上的容器 ...

  9. 华为云软件开发云:容器DevOps,原来如此简单!

    当开发团队把代码提交到 Git 应用仓库的那一刻,他们心里在想什么? 祈祷没有bug?渴望回家补觉?产品经理Go Die? 对,也不对.因为这只是最终发布万里长征的一小步,接下来要面对测试环境.生产环 ...

随机推荐

  1. iOS-UITextField和UITextView隐藏键盘

    UITextField和UITextView隐藏键盘 71 views, IOS DEV, by admin. self._textField.returnKeyType=UIReturnKeyDon ...

  2. iOS-UIImageView和UIImage

    UIImage self.imageView.contentMode = UIViewContentModeCenter;// 图片的内容模式 [self.imageView setFrame:CGR ...

  3. springmvc+mybatis多数据源配置,AOP注解动态切换数据源

    springmvc与springboot没多大区别,springboot一个jar包配置几乎包含了所有springmvc,也不需要繁琐的xml配置,springmvc需要配置多种jar包,需要繁琐的x ...

  4. Moq中判断方法是否被执行时,参数中有列表的情况

    如果参数中有列表,列表项为引用类型时,则会判断列表项是否为同一引用 列表本身不判断

  5. cisco 各类子网的划分

    C类地址子网划分 /25 子网掩码为128: 1位的取值为1,其他7位的取值为0(10000000): 块大小128: (256-128): 2个子网,每个子网最多包含126台主机: /26 子网掩码 ...

  6. 最新 东方财富java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.东方财富等10家互联网公司的校招Offer,因为某些自身原因最终选择了东方财富.6.7月主要是做系统复习.项目复盘.Leet ...

  7. 多线程调用有参数的方法---c# Thread 与 Task

    C#实现多线程的方式:Task——任务   简介 .NET 4包含新名称空间System.Threading.Tasks,它 包含的类抽象出了线程功能. 在后台使用ThreadPool. 任务表示应完 ...

  8. 后ARM时代,嵌入式工程师的自我修养

    1 嵌入式学习的一些概念理解误区 很多嵌入式初学者认为,学嵌入式,就是学习ARM,就是学习开发板.买一块开发板,然后在上面“移植”u-boot.Linux内核,再使用busybox制作一个根文件系统, ...

  9. IO-file-07 递归

    package com.bwie.io; /** * 递归: * 方法自己调用自己 * 递归头:何时结束递归 * 递归体:重复调用 * @author Allen17805272076 * */ pu ...

  10. NPM的安装和使用权限问题

    npm之前在默认情况下装过@angular/cli, 安装和使用都没有任何问题, 但是有的包全局安装的时候会提示权限不足, 于是网上搜索了修复此问题的方法, 就是将npm的全局安装目录搬到有权限的文件 ...