返回介绍

2 针对容器软件供应链的攻击案例

发布于 2024-09-13 00:02:18 字数 1074 浏览 0 评论 0 收藏 0

从用户角度来看,容器镜像在获取途径上,我们将其分为“从公共仓库获取”以及“从私有仓库获取”两种,那么对于从公共仓库获取的镜像,最重要的两个脆弱性问题:一方面是镜像中软件的安全漏洞问题;另一方面是镜像内的挖矿程序、后门程序、病毒、木马等恶意程序。

2.1 镜像漏洞利用

镜像漏洞利用指的是镜像本身存在漏洞时,使用镜像创建并运行的容器也通常会存在 相同漏洞,攻击者利用镜像中存在的漏洞去攻击容器,往往具有事半功倍的效果。

例如,Alpine 是一个轻量化的 Linux 发行版,基于 musl libc 和 busybox 构建而成。由 于其体积较小,因此以 Alpine 为基础镜像构建软件是非常流行的。但 Alpine 镜像曾曝出一个漏洞:CVE-2019-5021。在 3.3 ~ 3.9 版本的 Alpine 镜像中,root 用户密码被设置为空,攻击者可能在攻入容器后借此提升到容器内部 root 权限。

官方对此的回应是,Alpine 镜像使用 busybox 作为核心工具链,通过 /etc/security 限制了可以登入 root 用户的 tty 设备。除非是用户主动安装 shadow 和 linux-pam 来代替默认工具链,否则这个漏洞并不好利用。

但是,安全防护注重全面性,具有明显的短板效应。假如用户真的出于某种需求替换了默认工具链呢?那么进入容器的攻击者借助此漏洞就能直接获得容器内部 root 权限了。

FORM alpine:3.5
RUN apk add --no-cache shadow
RUN adduser -S non_root
USER non_root

2.2 镜像投毒

镜像投毒是一个宽泛的话题。它指的是攻击者通过某些方式,如上传恶意镜像到公开 仓库、入侵系统后上传镜像到受害者本地仓库,以及修改镜像名称并假冒正常镜像等,欺骗、诱导受害者使用攻击者指定的恶意镜像创建并运行容器,从而实现入侵或利用受害者的主机进行恶意活动的行为。

根据目的不同,常见的镜像投毒有三种类型:投放恶意挖矿镜像、投放恶意后门镜像和投放恶意 exploit 镜像

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文