Docker 推出强化镜像以增强容器安全性
Docker 推出了Docker Hardened Images,这是一个企业级、安全强化的容器镜像目录,旨在防御软件供应链威胁。Docker 表示,通过减轻 DevOps 团队自行保护容器安全的繁琐工作,强化镜像提供了一种更简便的方式来满足企业级安全和合规性标准。
强化镜像旨在增强团队对镜像组件未被篡改且不包含恶意代码的信心。此外,开发人员通常从基础镜像开始,然后逐步添加软件包,这往往会扩大攻击面,引入不必要或过时的依赖项。
Docker Hardened Images 在构建时就考虑到了安全性,而不仅仅是“现有容器的精简版本”:
这些镜像远不止是精简或极简。Docker 强化镜像从一开始就大幅减少了攻击面,最多可减少 95%,从而从一开始就限制了暴露。
为此,Docker 解释道,Docker Hardened Images 剥离了不必要的组件,例如 Shell、包管理器和调试工具,这些组件在开发过程中很有用,但在生产环境中却扩大了攻击面。开发人员仍然可以选择使用 Docker UI 添加证书、包、脚本和配置文件来自定义这些镜像。
举例来说,与普通 Node 镜像相比,Node 强化镜像将整体包数量减少了 98%。
减少软件包数量还可以降低遵守“零漏洞”策略所需的工作量。根据Sysdig 在其《2023 年云原生安全和使用情况报告》中的说法,只有 15% 的未修补关键和高危漏洞会影响运行时使用的软件包。然而,未使用的易受攻击的软件包仍然会计入总体漏洞总数,导致高达 87% 的容器镜像包含关键或高危漏洞。正如 Hacker News 用户所指出的,与仅包含严格必需软件包的镜像相比,koblas
这增加了必须修补的镜像数量。
典型的 UNIX 问题是 LPT 打印机守护进程出了问题(它有很多问题)。虽然你的系统都没有运行 LPT,但你仍然需要为数千个系统打补丁,仅仅是为了维护安全策略。
完整的 UNIX 系统和 Docker 的区别在于,Docker 可以基于临时镜像部署代码。想象一下,如果一个系统只包含生产环境中运行所需的组件,你的安全异常报告将会为零。
此外,Docker 承诺,每当发布更新或依赖项出现新的 CVE 时,都会重建强化镜像。所有新构建版本均会获得符合 Docker SLSA Build Level 3 标准的全新认证。
我们在 7 天内修补严重性和高严重性 CVE(比典型的行业响应时间更快),并以企业级 SLA 为后盾,让您更加安心。
Docker 声称,对于大多数开发人员来说,迁移到 Hardened Images 非常简单,只需更改FROM
Dockerfile 中的子句即可。已经使用基于 Debian 或 Alpine 的镜像的开发人员也会感到轻松自在,因为 Hardened Images 既支持 Debian 镜像,也支持 Alpine 镜像。
Docker 并非唯一一家提供强化镜像的供应商。安全解决方案提供商 Chainguard 也提供了超过 1300 个强化镜像的目录。
使用强化的基础镜像只是保护容器安全的一部分。您可能还想更全面地探索强化容器的关键最佳 实践。