runC 爆严重漏洞,使用容器的快打补丁

来源: 投稿
作者: 段段段落
2019-02-13

runC 是 Docker,Kubernetes 等依赖容器的应用程序的底层容器运行时,此次爆出的严重安全漏洞可使攻击者以 root 身份在主机上执行任何命令。

容器的安全性一直是容器技术的一个短板。关于容器最大的安全隐患是攻击者可以使用恶意程序感染容器,更严重时可以攻击主机系统。2月11日,安全研究员通过 oss-security 邮件列表披露了 runc 容器逃逸漏洞的详情,而这个漏洞可能让上述情况发生。

runC 由 Docker 公司开发,现在已作为 OCI 规范被广泛使用。如果你正在使用容器,那么有很大的可能是在 runC 上运行它们。此次爆出的漏洞允许恶意容器覆盖主机上的 RunC 二进制文件,以在主机上获取 root 级别的代码执行,让攻击者能够以 root 身份运行任何命令。

攻击方式是将容器中的目标二进制文件替换为返回的 runC 二进制文件,攻击者可以通过附加特权容器(将其连接到终端)或使用恶意镜像启动并使其自行执行。但是 Linux 内核通常不允许在 runC 执行过程中主机上的 runC 二进制文件被覆盖。

这时候攻击者可以使用 O_PATH 标志打开/ proc / self / exe的文件描述符,然后继续通过/ proc / self / fd / <nr>重新打开二进制文件O_WRONLY并在一个单独进程中的繁忙 loop 里尝试写入。Sarai 解释说,最终,当 runC 二进制文件退出时攻击就成功了。

红帽的容器技术产品经理 Scott McCarty 警告大家:

runC 和 Docker 中安全漏洞(CVE-2019-5736)的披露说明了许多 IT 管理员和 CxO 面临着糟糕的情况。容器代表向共享系统的转变,其中来自不同用户的应用程序都在同一 Linux 主机上运行。利用此漏洞意,恶意代码可能会肆意蔓延,不仅影响单个容器,还会影响整个容器主机,最终会破坏主机上运行的成百上千个容器。像这种影响各种互连生产系统的级联漏洞可能会成为企业 IT 的世界末日场景...... 而这正是这个漏洞可能产生的结果。

大多数云容器系统都容易受到这种潜在攻击。除了 runC,报告还说明了这个漏洞还可能会影响到 LXC 和 Apache Mesos。如果你正在运行任何类型的容器,需要尽快打补丁。该安全研究员已经 push 了一个 git 提交来修复这个漏洞。另外,Docker 刚刚发布的 18.09.2 版本也修复了该漏洞;Linux 发行版 Debian 和 Ubuntu 正在修复该漏洞。AWS 和 Google Cloud 已发布安全通知,建议客户更新各种受影响服务的容器。

McCarty 表示,这不是第一个主要的容器运行时安全漏洞,也不会是最后一个。

就像去年 Spectre/Meltdown 代表了安全研究从软件架构向处理器架构转变一样,我们应该期待 runC 这样的低级别容器运行时和 Docker 这样的容器引擎,现在也会受到研究人员和潜在恶意行为者的额外关注。

参考:zdnettheregister高效开发运维

展开阅读全文
7 收藏
分享
加载中
精彩评论

引用来自“行之予之”的评论

安全是容器天生的短板,所以还是回归虚拟化?
如果是在自有机器上,应该还好吧,镜像都是可控的。云上和别人共享的就比较蛋疼了
2019-02-13 10:36
1
举报
所以AWS用RUST写的Firecracker才是未来
2019-02-13 10:17
1
举报
最新评论 (7)

引用来自“行之予之”的评论

安全是容器天生的短板,所以还是回归虚拟化?

引用来自“xxx2xxx”的评论

如果是在自有机器上,应该还好吧,镜像都是可控的。云上和别人共享的就比较蛋疼了

引用来自“crystalsis”的评论

主要是hub上的镜像安不安全的问题
恩,hub上的话主要还是依赖基础镜像,大公司可能完全不依赖外部镜像或只依赖一个系统镜像,docker镜像层级比较少,好审查多了。不像npm,层层依赖,真是不好审查那些代码的安全性。
2019-02-14 11:51
0
回复
举报

引用来自“matrix1986”的评论

所以AWS用RUST写的Firecracker才是未来
或許你可以試試 國產 Cocker (
2019-02-13 14:02
0
回复
举报

引用来自“行之予之”的评论

安全是容器天生的短板,所以还是回归虚拟化?

引用来自“xxx2xxx”的评论

如果是在自有机器上,应该还好吧,镜像都是可控的。云上和别人共享的就比较蛋疼了
主要是hub上的镜像安不安全的问题
2019-02-13 11:04
0
回复
举报

引用来自“行之予之”的评论

安全是容器天生的短板,所以还是回归虚拟化?
如果是在自有机器上,应该还好吧,镜像都是可控的。云上和别人共享的就比较蛋疼了
2019-02-13 10:36
1
回复
举报
所以AWS用RUST写的Firecracker才是未来
2019-02-13 10:17
1
回复
举报
安全是容器天生的短板,所以还是回归虚拟化?
2019-02-13 09:20
0
回复
举报
😡
2019-02-13 08:55
0
回复
举报
更多评论
7 评论
7 收藏
分享
返回顶部
顶部