您的当前位置:首页 >IT科技 >四款免费、易用的Docker漏洞扫描工具 正文
时间:2025-11-04 13:16:54 来源:网络整理编辑:IT科技
译者 | 陈峻审校 | 重楼最近,我找到了一些既可以扫描Docker镜像中的漏洞,又能够被轻松地集成到CI/CD中的工具。除去那些较为老旧且不太直观的,本文我将向您介绍四种免费、最新且易用的扫描工具。
译者 | 陈峻
审校 | 重楼
最近,款免我找到了一些既可以扫描Docker镜像中的费易漏洞,又能够被轻松地集成到CI/CD中的漏洞工具。除去那些较为老旧且不太直观的扫描,本文我将向您介绍四种免费、工具最新且易用的款免扫描工具。
基本原理所有这些工具的费易工作原理都比较类似。它们使用的漏洞是如下两步流程:
生成软件物料清单(Software Bill of Materials,SBOM)。扫描将SBOM与不同的工具漏洞数据库进行比较。此处的款免SBOM是针对那些Docker镜像中运行的系统和应用而安装的、所有软件依赖包列表。费易由于系统级软件包经常被忽略,漏洞因此在管道中进行Docker扫描是扫描非常重要的。这就引出了第二步,工具即:根据多个漏洞数据库,对SBOM中的每个软件包进行检查,以发现其中是否存在漏洞。站群服务器而且在搜寻和匹配时,软件包的版本也应被考虑在内。
1. Docker Scout该工具由Docker公司开发并已内置到了Docker Desktop应用中。遗憾的是,它并没有与Docker的CLI捆绑,所以您需要手动进行安装。即,在Docker的CLI环境中,您需要使用如下单行命令来完成安装:
复制curl -sSfL https://raw.githubusercontent.com/docker/scout-cli/main/install.sh | sh -s --1.当然,您也可以从其官方的GitHub库处进行复制。一旦您具备了运行docker scout的条件,便可以运行docker scout quickview了。顾名思义,它主要适合于只想获悉Docker中存在着多少漏洞及其严重程度,而无需深究具体漏洞的需求。
复制~❯ docker scout quickview ubuntu:20.04 ✓ Image stored for indexing ✓ Indexed 127 packages Target │ ubuntu:20.04 │ 0C 0H 3M 10L digest │ bf40b7bc7a11 │1.2.3.4.5.6.如上所示,该Ubuntu 20.04镜像并不存在严重或高危的漏洞,不过有着几个中等严重程度的漏洞。若要获取每个漏洞的详细信息,请运行docker scout cves。它将显示与漏洞相关的CVE列表,免费信息发布网并提供相应的链接,以便您了解更多信息。此外,Docker Scout还会告诉你是否有更新版本的受影响软件包修复了该漏洞。例如:
复制~❯ docker scout cves ubuntu:20.04 ... pkg:deb/ubuntu/gnutls28@3.6.13-2ubuntu1.8?os_distro=focal&os_name=ubuntu&os_version=20.04 ✗ MEDIUM CVE-2023-5981 https://scout.docker.com/v/CVE-2023-5981 Affected range : <3.6.13-2ubuntu1.9 Fixed version : 3.6.13-2ubuntu1.9 CVSS Score : 5.9 CVSS Vector : CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N ...1.2.3.4.5.6.7.8.9.10.11.在上述例子中,其中的一个中型漏洞来自版本为3.6.13-2ubuntu1.8的gnutls软件包。该漏洞已在3.6.13-2ubuntu1.9版本中被修复,但该Ubuntu Docker镜像的维护者显然还没有及时更新镜像。
同时,Docker Scout还被内置在了DockerHub中,DockerHub是由Docker公司托管的镜像注册中心。它可以免费为您的3个镜像执行扫描。若要扫描更多的镜像,则需升级到付费计划版本。DockerHub会在每次推送新标签时,都执行一次漏洞扫描。要启用该服务,请打开镜像的repo(存储库),进入“设置”,然后启用Docker Scout镜像分析。
DockerHub上的Docker Scout扫描报告
Trivy是由Aqua Security开发的一款开源工具。相比Docker Scout,它除了能够扫描Docker镜像外,也提供隐蔽检测和对IaC(基础设施即代码)配置错误的扫描。您既可以用多种软件包管理器(如:apt、yum、brew、pacman、port、以及nix)来安装Trivy,也可以通过链接--https://aquasecurity.github.io/trivy/v0.48/getting-started/installation/,直接下载其二进制文件。在首次运行时,它会将所有漏洞数据库都下载到本地环境中。您可以通过运行trivy image来扫描目标镜像。下面,我们将从Dockerfile中创建一个自定义的镜像:
复制FROM alpine:3.18 RUN mkdir /app COPY <<EOF /app/aws-creds [default] aws_access_key_id = AKIA5432112345XXXXPP aws_secret_access_key = P9YXdfASASDfdsfdldFdfdfs4sldkfksfsdle3vg EOF1.2.3.4.5.6.7.8.Dockerfile会使用alpine作为基础镜像,以创建带有硬编码AWS密钥的aws-creds文件。我们可以通过如下命令来构建镜像并运行扫描。
复制~❯ docker build -t test-image -f Dockerfile . ~❯ trivy image test-image test-image (alpine 3.18.5) Total: 0 (UNKNOWN: 0, LOW: 0, MEDIUM: 0, HIGH: 0, CRITICAL: 0) /app/aws-creds (secrets) Total: 2 (UNKNOWN: 0, LOW: 0, MEDIUM: 0, HIGH: 0, CRITICAL: 2) CRITICAL: AWS (aws-access-key-id) ═══════════════════════════════════════════════════════════════════════ AWS Access Key ID ─────────────────────────────────────────────────────────────────────── /app/aws-creds:2 (added by COPY <<EOF /app/aws-creds # buildkit) ─────────────────────────────────────────────────────────────────────── 2 [ aws_access_key_id =解决电脑开机密码错误问题的有效方法(密码错误怎么办?电脑开机密码错误解决方案来了!)2025-11-04 13:07
口袋笔记本(便于携带,助你随时记录)2025-11-04 12:58
魅族MX5(MX5的卓越性能和创新设计使其成为用户首选)2025-11-04 12:55
冰箱使用指南(科学规划冰箱空间,让食物保鲜更持久)2025-11-04 12:50
以建荣SD卡量产工具教程(关键步骤详解,让你快速掌握SD卡量产技巧)2025-11-04 12:41
土豆充电(创新能源之路)2025-11-04 11:31
探索魔兽世界暗黑骑士职业的魅力(深入分析暗黑骑士在魔兽世界中的作用和特点)2025-11-04 11:12
提升路由器穿墙能力,享受稳定网络连接(关键技巧助力强化信号覆盖,畅游网络世界)2025-11-04 11:08
Line电脑版安装教程(简单易懂的Line电脑版安装教程,让你轻松使用)2025-11-04 10:48
魅族Pro6s的出色像素质量(揭秘魅族Pro6s的高像素相机,享受细腻画质的震撼体验)2025-11-04 10:38
解决电脑关键事件错误的有效方法(保护您的电脑免受关键事件错误的影响)2025-11-04 13:11
荣耀引擎2代(性的创新引擎,引领游戏体验进化)2025-11-04 13:10
魅族MX6听歌体验2025-11-04 13:08
TITA净水壶(了解TITA净水壶的性能与效果,保证您的饮水安全)2025-11-04 12:54
一体机系统重装教程(简明易懂的一体机系统重装步骤,帮你重拾流畅体验)2025-11-04 12:30
口袋笔记本(便于携带,助你随时记录)2025-11-04 12:01
电脑关闭程序后发生错误的原因与解决方法(程序异常退出、错误代码和修复措施一览)2025-11-04 12:00
用电脑贴纸将宜家桌子改造一新(打造个性化办公空间,简单又经济的方法)2025-11-04 11:32
通过激情探索学习(以passion为引导,最大化教程的效果与体验)2025-11-04 11:30
揭秘安卓中毒的陷阱(小心!保护你的安卓设备免受恶意软件侵害)2025-11-04 10:34