CVE-2021-30465 runc 符号链接条件竞争容器逃逸漏洞

漏洞案例全球 CVE 记录
CVE-2021-30465
runc 符号链接条件竞争容器逃逸漏洞

对于K8s集群,攻击者将目标挂载路径设置为一个容器Volume在主机上的根目录的软链接(比如,emptyDir卷对应的软链接路径为 /var/lib/kubelet/pods/$MY_POD_UID/volumes/kubernetes.io~empty-dir ),以此来获取主机上的挂载点。由于挂载的源路径是攻击者可以控制的目录,攻击者可以将源路径中的子目录软链接到主机根目录上,并通过条件竞争TOCTTOU(Time Of Check To Time Of Use)的特定手段在一定条件让恶意容器中的指定目录挂载到主机的根目录。 CVE-2021-30465漏洞为高危漏洞,CVSS漏洞评分为7.6。更多信息,请参见 官方公告 。

漏洞概览

CVE 编号
CVE-2021-30465
文章标题
CVE-2021-30465 runc 符号链接条件竞争容器逃逸漏洞
影响产品或组件
未命名漏洞案例
漏洞类型
以原文描述为准,未单独列出 CWE
原文字符数
1963
资料核验日期
2026-09-18

安全风险等级评估

对于K8s集群,攻击者将目标挂载路径设置为一个容器Volume在主机上的根目录的软链接(比如,emptyDir卷对应的软链接路径为 /var/lib/kubelet/pods/$MY_POD_UID/volumes/kubernetes.io~empty-dir ),以此来获取主机上的挂载点。由于挂载的源路径是攻击者可以控制的目录,攻击者可以将源路径中的子目录软链接到主机根目录上,并通过条件竞争TOCTTOU(Time Of Check To Time Of Use)的特定手段在一定条件让恶意容器中的指定目录挂载到主机的根目录。 CVE-2021-30465漏洞为高危漏洞,CVSS漏洞评分为7.6。更多信息,请参见 官方公告 。

影响范围与修复版本

产品或分支受影响范围历史修复边界或说明
未命名漏洞案例runC小于等于1按厂商公告与产品矩阵核对
未命名漏洞案例0-rc94的版本均包含该漏洞按厂商公告与产品矩阵核对
未命名漏洞案例该漏洞的修复版本为runC 1按原文或厂商公告核对修复边界
未命名漏洞案例0-rc95按厂商公告与产品矩阵核对
未命名漏洞案例更多信息,请参见 runC v1按厂商公告与产品矩阵核对

原文范围说明:runC小于等于1.0.0-rc94的版本均包含该漏洞。 该漏洞的修复版本为runC 1.0.0-rc95。更多信息,请参见 runC v1.0.0-rc95 。

漏洞详情

漏洞机制

对于K8s集群,攻击者将目标挂载路径设置为一个容器Volume在主机上的根目录的软链接(比如,emptyDir卷对应的软链接路径为 /var/lib/kubelet/pods/$MY_POD_UID/volumes/kubernetes.io~empty-dir ),以此来获取主机上的挂载点。由于挂载的源路径是攻击者可以控制的目录,攻击者可以将源路径中的子目录软链接到主机根目录上,并通过条件竞争TOCTTOU(Time Of Check To Time Of Use)的特定手段在一定条件让恶意容器中的指定目录挂载到主机的根目录。 CVE-2021-30465漏洞为高危漏洞,CVSS漏洞评分为7.6。更多信息,请参见 官方公告 。

触发条件与权限边界

runC小于等于1.0.0-rc94的版本均包含该漏洞。 该漏洞的修复版本为runC 1.0.0-rc95。更多信息,请参见 runC v1.0.0-rc95 。

场景与影响

对于K8s集群,攻击者将目标挂载路径设置为一个容器Volume在主机上的根目录的软链接(比如,emptyDir卷对应的软链接路径为 /var/lib/kubelet/pods/$MY_POD_UID/volumes/kubernetes.io~empty-dir ),以此来获取主机上的挂载点。由于挂载的源路径是攻击者可以控制的目录,攻击者可以将源路径中的子目录软链接到主机根目录上,并通过条件竞争TOCTTOU(Time Of Check To Time Of Use)的特定手段在一定条件让恶意容器中的指定目录挂载到主机的根目录。 CVE-2021-30465漏洞为高危漏洞,CVSS漏洞评分为7.6。更多信息,请参见 官方公告 。 runC小于等于1.0.0-rc94的版本均包含该漏洞。 该漏洞的修复版本为runC 1.0.0-rc95。更多信息,请参见 runC v1.0.0-rc95 。

检测与排查

资产、配置与日志核查

围绕 CVE-2021-30465 盘点实际资产、软件包或插件版本、启用组件、访问入口和相关日志;修复后回读运行版本与补丁状态,复核业务功能、访问控制和异常进程。不要在生产环境通过投递恶意样本或反复认证失败来验证漏洞。

防范措施与修复验证

修复与缓解

手动升级Containerd至最新版本,关于Containerd的最新版本信息,请参见 v1.0.0-rc95

修复后的验证

完成变更后回读 未命名漏洞案例 的实际版本、补丁和配置,确认已落在厂商修复范围;需要重启的服务应验证重启结果,再检查相关业务功能、访问控制与日志。临时缓解应单独标注并跟踪正式修复。

参考来源

英文技术描述已按原文语义整理为中文,产品名、协议名、版本号、命令、路径和官方链接予以保留。涉及多 CVE 的文章维持为一篇,不拆分原文章。

© 版权声明
THE END
喜欢就支持一下吧!
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容