近日,社区发现了 runC 的一个安全漏洞(编号CVE-2019-5736),评分 7.7 分(CVSS v3 指标,总分 10 分)。这个漏洞是由 runC 的维护者 Aleksa Sarai 在 2 月 12 号披露出来。
当容器内的进程是用 root 用户(UID 0)启动的时候,该漏洞会导致恶意容器有机会覆盖主机上的 runC 二进制文件,然后实现容器逃逸,获取该主机和其他容器上根级别别的访问权限。其根因是 runC 在处理 / proc / self / exe 文件描述符时的机制有漏洞。
漏洞介绍与影响
如果容器的镜像来源是可信任的,或者容器内的进程是以非 root 用户运行,在这两种情况下,则不会触发该漏洞。宿主机操作系统的默认 AppArmor 策略和默认 SELinux 策略都不会阻止此漏洞。
虽然这个漏洞不直接来自 DaoCloud Enterprise 平台,但是 DaoCloud Enterprise 平台的依赖组件 Docker 和 runC 都会受到影响。
runC 在 1 月份修复了该漏洞。对于用户来说,最佳解决方案是更新 runC 二进制。Docker 在 2 天前的 v18.09.2 / v18.06.2 版本中更新其依赖组件,修复了这个漏洞,但是其他的 Docker 版本并没有得到修复。
DaoCloud Enterprise平台的安全预案
DaoCloud安全与支持中心在得知此安全漏洞后,迅速响应,对该安全漏洞进行了分析与确认。预计在 2 月 15 日,DaoCloud Enterprise 将会及时提供升级 Docker 的 runC 组件的补丁,以避免该影响。
由于 runC 是容器运行的核心引擎,十分关键,所以具体升级需求,请咨询 DaoCloud 安全与支持中心,我们会第一时间为客户提供更为详细的升级评估以供参考。
重视安全是企业的生命线
DaoCloud 始终重视企业系统平台安全,我们衷心感谢每一位客户对 DaoCloud 产品的信赖和支持,我们也将一如既往地提供最优质,最周到的服务支持。
目前,我们也收到许多用户关于此次 runC 安全漏洞及相关安全问题的咨询,他们或在使用开源产品,或在使用其他的商业平台产品;如果您也有任何容器相关的问题,欢迎随时通过服务热线,邮件,DaoVoice 等方式联系我们,我们期待与您的沟通。
联系方式
- 服务热线 400-002-6898
- 支持邮件 support@daocloud.io
DaoCloud安全与支持中心
2019年2月13日
参考:
- https://kubernetes.io/blog/2019/02/11/runc-and-cve-2019-5736/
- https://github.com/opencontainers/runc/commit/0a8e4117e7f715d5fbeef398405813ce8e88558b
未经允许不得转载:DaoCloud道客博客 » 关于 runC 安全漏洞的声明公告