腾讯分分彩平台

 腾讯分分彩     |      2022-07-04 14:27

使用 Trivy 检查 Docker 镜像的安全性

容器安全是网络安全最重要的方面之一。在本文中,我将向您介绍 Docker 容器安全工具。我们将看看如何安装和使用 Trivy。

有关该主题的更多信息:使用 Vulscan 来自 Nmap 的漏洞扫描程序

使用 Trivy 检查 Docker 镜像的安全性

Aquasecurity Trivy 是一个 Docker 镜像漏洞扫描器。Trivy 可以扫描存储库中的图像和本地图像。它针对两种类型的漏洞 - 操作系统构建问题(由 Alpine、RedHat (EL)、CentOS、Debian GNU、Ubuntu 支持)和依赖问题(Gemfile.lock、Pipfile.lock、composer.lock、package-lock.json、yarn .lock,货物.lock)。

虽然市场上有许多容器安全测试工具,但这是迄今为止最轻、功能最丰富的工具之一。

Trivy 可以在不同的 Linux 平台上运行,包括 RHEL、CentOs、Ubuntu、Debian、Arch Linux、MacOS、Nix 等。我们将在 Ubuntu 18.04 上安装和使用 Bionic Beaver LTS。

安装 Trivy

在不同的平台上安装 Trivy 有不同的方法。要在 Ubuntu 上安装 Trivy,请使用以下命令:

使用 Trivy 检查 Docker 镜像的安全性

安装完成后,我们开始搜索和扫描漏洞。

使用 Trivy 漏洞扫描程序

要运行 Docker 映像漏洞扫描,请使用以下命令:

例如,我们要运行 nginx 图像漏洞扫描:

使用 Trivy 检查 Docker 镜像的安全性
如您所见,存在很多漏洞。现在让我们尝试运行 Alpine 检查:

使用 Trivy 检查 Docker 镜像的安全性

我们还可以使用 Trivy 来检测 IaC、Dockerfile 和 Kubernetes 清单中的安全错误配置。

检测不正确的安全设置

您可以在文件系统和 git 存储库上运行不正确的安全设置检查。让我们尝试运行文件系统扫描。为此,您需要克隆存储库

git 存储库包含一个 Dockerfile 和 deployment.yaml k8s 清单文件。

Dockerfile 看起来像这样:

请注意,我们从基本 nginx 映像开始,并将用户设置为 root。但是,这不是最佳做法。不建议使用 root 用户运行容器。

部署文件 yaml看起来像这样:

在这个清单中,作为实验,我们有目的地将 securityContext中的 privileged 属性设置为 true这当然是做不到的。

现在,让我们尝试运行扫描,看看它是否能找到这个关键的(就安全性而言)配置设置:

使用 Trivy 检查 Docker 镜像的安全性

如您所见,扫描仪在配置中发现了这个问题。

结论

Trivy 作为容器镜像及其相关配置的综合静态安全分析工具运行良好,并且与 CI 配合得很好。有效实施后,可以大大提高容器的安全性。