常用容器管理器易受危险 exploit 攻击

 聚焦源代码安全,网罗国内外最新资讯!

编译:奇安信代码卫士团队

一个常见的容器管理组件生成服务 “shim” 的方式中存在一个漏洞,可导致未获授权的第三方以任意内容和任意权限级别初始化容器。

该漏洞是由 NCC 集团的研究员发现的,存在于核心容器运行时 containerd中。具体而言,containerd-shim 监听 Unix 域套接字种是否存在和其管理的容器相关的信息。这是近期为 Docker 和其它容器管理系统披露的多个弱点和漏洞之一。

Containerd-shim 是由containerd生成的一个二进制,作为容器的parent。它负责执行容器的生命周期和侦察逻辑。之后使用 containerd shim API 作为containerd 的网络连接。一般而言,containerd-shim 将使用抽象的 Unix 域套接字监听并创建该容器。这些抽象的 Unix 域套接字和 Unix 命名空间而非特定的文件路径绑定。而这种宽泛的绑定即是麻烦的源头。

鉴于命名空间绑定,containerd-shim 将暴露可从容器种逃逸的 API 并在主机服务器上执行权限命令。该漏洞可导致攻击者相对容易地获得 root 访问权限。当然运行容器的最佳实践是通过降低的权限集运行,即使用非0 UID 并且通过隔离的命名空间运行。确实,containerd 维护人员强烈反对和主机共享命名空间的行为。话虽如此,但太多的容器都以 root 权限运行。

Red Hat 发布安全公告表示,即使 OpenShift 使用了 cri-o 容器运行时因此而免疫,但“这样做可导致在同样网络命名空间中以 shim 运行的恶意容器,实际上的 UID 为0 但却以降低后的权限运行,从而导致新进程以提升后的权限运行。该漏洞带来的最大威胁是威胁到数据的机密性和完整性以及系统的可用性。” 因此,Red Hat 给该漏洞的CVSS评分是8.8。虽然并不属于“马上修复“的级别,但确实应引起足够重视。

NCC 集团发布了加固 containerd 安全的多个建议,并指出该漏洞已在 containerd 1.3.9 和 1.4.3 中修复。不过在部署修复方案之前必须重启任意正在运行的容器,原因在于老旧的正在运行的容器即使在升级后仍然易受攻击。

从现在开始,停止以 root 身份或在 root 网络命名空间中运行容器。即使现在打补丁消除这个问题,但当下次又出现严重的 containerd 漏洞时,或许我们并不会如此幸运。

推荐阅读

Canonical 在 Docker Hub 上发布安全容器应用镜像

这个容器逃逸 exploit 获得首届年度谷歌云平台大奖10万美元

原文链接

https://www.darkreading.com/cloud/common-container-manager-is-vulnerable-to-dangerous-exploit/d/d-id/1339607

https://thenewstack.io/new-containerd-security-hole-needs-to-be-patched-asap/

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

    觉得不错,就点个 “在看” 或 "赞” 吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值