QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

刚刚,才云发布 runc 容器逃逸漏洞预警

  • 2020-03-03
  • 本文字数:922 字

    阅读完需:约 3 分钟

刚刚,才云发布 runc 容器逃逸漏洞预警


2019 年 2 月 11 日,runc 维护者在 oss-security 邮件列表披露 runc 安全漏洞详情。该漏洞允许恶意用户覆写宿主机上的 runc 二进制文件,并获得宿主机的 root 权限,其恶劣影响波及 Docker, containerd, cri-o 等使用了 runc 的容器运行时。

漏洞详情

此次漏洞的编号为 CVE-2019-5736,它的出现源于运行容器时 runc 处理系统文件描述符的方式存在缺陷。攻击者可以使用指向 runc 二进制文件本身的自定义二进制文件替换容器内的目标二进制文件来完成攻击。


恶意容器可以通过此漏洞覆盖 host 上的 runc 二进制文件,从而在 host 上获取 root 访问权限,进而执行任意攻击代码。攻击代码采取的攻击方式有两种:


  • 使用攻击者控制的镜像创建新容器;

  • 进入到攻击者之前具有写入权限的容器中(docker exec)。

影响范围

目前,Docker 发布的 v18.09.2 已经修复了此漏洞,runc 还未发布包含漏洞修复补丁的新版本。因此 Docker 版本低于 18.09.2 及 runc 版本不高于 1.0.0-rc6 的环境都在影响范围内。

解决方案

截至目前,该问题的最佳解决方法是把 Docker 升级到 18.09.2 或以上版本。由于 runc 新版本尚未发布,如果要单独升级 runc,用户需要自行编译。


缓解办法:


  • 启用 selinux 规则,防止容器内的进程覆盖主机 runc 二进制文件;

  • Host 使用只读文件系统,或至少 runc 文件位置只读;

  • 在容器内使用低权限用户,或将容器内 uid0 用户映射到 host 的普通用户(没有 runc 访问权限的用户)。

漏洞对 Caicloud Compass 的影响

考虑到 runc 的流行度,这个漏洞对容器的影响是普遍的。


该漏洞只需要较小的权限(host runc 的权限)即可完成攻击。默认情况下,容器内进程都是以 root 权限运行的,如果没有做用户 ID 映射,就会对 host 上的 runc 二进制文件有所有权限,因此都会受到该漏洞的影响。


面对这个安全隐患,才云 Caicloud 将从以下三方面为用户提供帮助:


  • 对于在生产环境使用 Caicloud Compass 的用户,才云 Caicloud 工程师团队可以协助完成 Docker 升级;

  • 对于新发布的 Caicloud Compass 2.7.3 版本,我们会通过热补丁修复这个漏洞;

  • 在下个版本中,Caicloud Compass 也会使用 18.09.2 或以上版本的 Docker。


本文转载自才云 Caicloud 公众号。


原文链接:https://mp.weixin.qq.com/s/PxvXCj6cfLslzRlV3mlSYw


2020-03-03 17:29647

评论

发布
暂无评论
发现更多内容

沙龙报名 | 云计算进入多元架构,云原生时代的挑战与机遇

京东科技开发者

云计算 云原生

C语言中“野指针”、“悬空指针”是什么?

不脱发的程序猿

c 指针 编程之路 bug 3月日更

阿里P8大牛亲自讲解!2021年Android网络编程总结篇,醍醐灌顶!

欢喜学安卓

android 程序员 面试 移动开发

Oracle Sql性能优化

大数据技术指南

oracle 大数据 28天写作 3月日更

拍乐云创始人&CEO赵加雨:深耕18载,打造全景式音视频服务

拍乐云Pano

音视频 WebRTC 在线教育 RTC 实时通信

寻找被遗忘的勇气(十七)

Changing Lin

3月日更

电商千万级交易的金手指:分布式事务管理

华为云开发者联盟

微服务 事务 华为云 分布式事务管理 DTM

你遇到过哪些质量很高的 Java 面试?

张小方

Java 面试 阿里 薪资

JVM笔记 -- 来,教你类加载子系统

秦怀杂货店

Java JVM 类加载 虚拟机

多端框架开发 | 拼团商城项目开发说明

YonBuilder低代码开发平台

小程序云开发 大前端 移动终端 APP开发 多端开发

OpenKruise v0.8.0 核心能力解读:管理 Sidecar 容器的利器

阿里巴巴云原生

容器 微服务 云原生 k8s 应用服务中间件

图解堆排序

Silently9527

Java 排序算法 堆排序

JDK8新特性 Fork/Join 的优化

Java小咖秀

Java java8 jdk8 forkjoin fork

“时间”都去哪儿了?性能调优分析方法与案例详解

京东科技开发者

数据库 客户端

一招让Kafka达到最佳吞吐量

万俊峰Kevin

kafka go-zero Go 语言

跟公司新招的这个“同事”搭档,工作搬砖太“自动化”了

华为云开发者联盟

华为 AI RPA 自动化 员工

看故事学Redis:再不懂,我怀疑你是假个开发

华为云开发者联盟

MySQL 数据库 redis 缓存 数据

【LeetCode】不同的子序列Java题解

Albert

算法 LeetCode 28天写作 3月日更

怎么找属于自己最优的2B增长模型?

boshi

销售管理 SaaS 七日更

EGG公链生态项目——EFTalk上的巴莱特定律

币圈那点事

区块链

朋友,你听说过跨域吗

河磨

spring CORS 跨域

智慧公安二维码定位报警系统开发,微警务平台解决方案

源中瑞-龙先生

二维码定位报警系统开发 智慧公安 智慧公安扫码

有道技术沙龙 | AI 语音交互技术在语言学习场景的实践

有道技术团队

人工智能

数据驱动业务:一张大屏掌控城市运行,效率提高95%

一只数据鲸鱼

物联网 数据可视化 智慧城市 智慧园区 智慧交通

LeetCode题解:647. 回文子串,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

电影AI修复,让重温经典有了新的可能

华为云开发者联盟

AI 电影 华为云视频 视频增强 经典

第8周大作业

八达鸟

架构师训练营第十一周作业 - 命题作业

阿德儿

SDK 是如何存储事件数据的?

神策技术社区

ios 大数据 存储 数据采集 神策数据

带你走进与千万数据通信者共成长的“家园”

华为云开发者联盟

华为 开发者 网络 华为数据通信 社区

阿里P8大牛亲自教你!一个三非渣本的Android校招秋招之路,满满干货指导

欢喜学安卓

android 程序员 面试 移动开发

刚刚,才云发布 runc 容器逃逸漏洞预警_行业深度_才云科技_InfoQ精选文章