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 这样的容器引擎,现在也会受到研究人员和潜在恶意行为者的额外关注。
参考: zdnet , theregister , 高效开发运维
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 研究发现,近一半生产容器存在漏洞
- CVE-2019-5736:runc容器逃逸漏洞预警
- CVE-2019-5736: runc容器逃逸漏洞警报
- 新近爆出的runC容器逃逸漏洞,用户如何面对?
- CVE-2019-5736 runc容器逃逸漏洞分析
- runC 爆严重漏洞,使用容器的快打补丁
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Programming Amazon Web Services
James Murty / O'Reilly Media / 2008-3-25 / USD 49.99
Building on the success of its storefront and fulfillment services, Amazon now allows businesses to "rent" computing power, data storage and bandwidth on its vast network platform. This book demonstra......一起来看看 《Programming Amazon Web Services》 这本书的介绍吧!