- cnnvd编号:未知
- 危害等级: 高危
- cve编号:cve-2021-30465
- 漏洞类型: 容器逃逸漏洞
- 威胁类型:本地
- 厂 商:未知
- 漏洞来源:深信服
- 发布时间:2021-06-03
- 更新时间:2021-06-03
漏洞简介
1、组件介绍
runc的主要作用是使用linux kernel提供的诸如namespaces,cgroup等进程隔离机制以及selinux等security功能,构建供容器运行的隔离环境,从而保证主机的安全。
2021年6月1日,深信服安全团队监测到一则runc组件存在容器逃逸漏洞的信息,漏洞编号:cve-2021-30465,漏洞威胁等级:高危。
该漏洞是由于挂载卷时,runc不信任目标参数,并将使用“filepath-securejoin”库来解析任何符号链接并确保解析的目标在容器根目录中,但是如果用符号链接替换检查的目标文件时,可以将主机文件挂载到容器中。攻击者可利用该漏洞在未授权的情况下,构造恶意数据造成容器逃逸,最终造成服务器敏感性信息泄露。
3、漏洞分析
以kubernetes为例,攻击者首先创建磁盘卷中的符号链接到根目录,其中卷使用该符号链接作为安装的目标。因为安装的源是攻击者控制的目录,因此后续的挂载将出现在攻击者控制的目录。
因此,攻击者可以首先在他们的恶意源目录中放置一个带有卷名称的符号链接,之后容器的后续挂载将绑定到容器中。因为用于音量管理的主机文件路径是相对固定的,如果攻击者以音量配置文件启动容器,并且能够在与该配置共享的磁盘卷的容器中运行恶意代码,那么攻击者能轻松完成此次攻击。
漏洞公示
参考网站
受影响实体
runc是一个轻量级通用容器运行环境,它允许一个简化的探针到运行和调试的底层容器的功能,不需要整个docker守护进程的接口。runc可面向有安全需求的公司等部署大型docker集群,在github上的订阅量为8000 ,使用量较大。
目前受影响的runc版本:
runc <= 1.0.0-rc94
补丁
1、如何检测组件版本
输入runc -v即可查看版本:
2、官方修复建议
当前官方已发布最新版本,建议受影响的用户及时更新升级到最新版本。链接如下: