图像安全洞察
通过Docker Hub的镜像安全洞察功能,增强您的Docker镜像的安全性。Docker Hub允许您使用Docker Scout进行静态漏洞扫描或始终保持最新的镜像分析。
Docker Scout 镜像分析
开启Docker Scout镜像分析后,Docker Scout会自动分析您Docker Hub仓库中的镜像。
图像分析提取软件物料清单(SBOM)和其他图像元数据,并根据安全公告中的漏洞数据对其进行评估。
以下部分描述了如何为Docker Hub仓库开启或关闭Docker Scout镜像分析。有关镜像分析的更多详细信息,请参阅 Docker Scout。
开启 Docker Scout 镜像分析
登录到 Docker Hub.
选择存储库。
您的仓库列表显示出来。
选择一个仓库。
仓库的常规页面显示出来。
选择设置标签。
在图像安全洞察设置下,选择Docker Scout 图像分析。
选择保存。
关闭 Docker Scout 镜像分析
登录到 Docker Hub.
选择存储库。
您的仓库列表显示出来。
选择一个仓库。
仓库的常规页面显示出来。
选择设置标签。
在图像安全洞察设置下,选择无。
选择保存。
静态漏洞扫描
注意
Docker Hub 静态漏洞扫描需要 Docker Pro、Team 或 Business 订阅。
当您在启用静态扫描后向Docker Hub仓库推送镜像时,Docker Hub会自动扫描镜像以识别漏洞。扫描结果显示扫描运行时镜像的安全状态。
扫描结果包括:
- 漏洞的来源,例如操作系统(OS)包和库
- 引入该功能的版本
- 推荐的固定版本(如果有),用于修复发现的漏洞。
Docker Hub 中静态扫描的更改
自2023年2月27日起,Docker更改了支持Docker Hub静态扫描功能的技术。静态扫描现在由Docker原生支持,而不是第三方。
由于这一变化,扫描现在比以前更细致地检测漏洞。这反过来意味着漏洞报告可能会显示更多的漏洞数量。如果您在2023年2月27日之前使用过漏洞扫描,您可能会发现新的漏洞报告列出了更多的漏洞数量,这是由于更彻底的分析。
您无需采取任何行动。扫描将继续正常运行,不会中断或改变价格。历史数据仍然可用。
开启静态漏洞扫描
仓库所有者和管理员可以在仓库上启用静态漏洞扫描。如果您是团队或企业订阅的成员,请确保您想要启用扫描的仓库是团队或企业层级的一部分。
当在仓库上激活扫描时,任何具有推送权限的人都可以通过将镜像推送到Docker Hub来触发扫描。
启用静态漏洞扫描:
注意
静态漏洞扫描支持扫描AMD64架构、Linux操作系统且大小小于10 GB的镜像。
登录到 Docker Hub.
选择存储库。
您的仓库列表显示出来。
选择一个仓库。
仓库的常规页面显示出来。
选择设置标签。
在图像安全洞察设置下,选择静态扫描。
选择保存。
扫描图像
要扫描镜像中的漏洞,请将镜像推送到Docker Hub,推送到您已启用扫描的仓库。
查看漏洞报告
查看漏洞报告:
登录到 Docker Hub.
选择存储库。
您的仓库列表显示出来。
选择一个仓库。
仓库的常规页面显示。 可能需要几分钟时间,漏洞报告才会出现在您的仓库中。

选择标签选项卡,然后选择摘要,再选择漏洞以查看详细的扫描报告。
扫描报告显示由扫描识别的漏洞,根据其严重性进行排序,最严重的列在顶部。它显示包含漏洞的包的信息、引入漏洞的版本以及漏洞是否在后续版本中得到修复。

有关此视图的更多信息,请参阅 图像详情视图。
检查漏洞
漏洞报告根据漏洞的严重性进行排序。它显示包含漏洞的包的信息、引入漏洞的版本以及漏洞是否在后续版本中已修复。
漏洞扫描报告还允许开发团队和安全负责人比较不同标签的漏洞数量,以查看漏洞是否随着时间的推移而减少或增加。
修复漏洞
一旦识别出一系列漏洞,您可以采取几种措施来修复这些漏洞。例如,您可以:
- 在Dockerfile中指定更新的基础镜像,检查您的应用程序级依赖项,重新构建Docker镜像,然后将新镜像推送到Docker Hub。
- 重新构建Docker镜像,在操作系统包上运行更新命令,并将新版本的镜像推送到Docker Hub。
- 编辑Dockerfile以手动删除或更新包含漏洞的特定库,重新构建镜像,并将新镜像推送到Docker Hub
Docker Scout 可以为您提供具体且上下文相关的修复步骤,以改善镜像安全性。有关更多信息,请参阅 Docker Scout。
关闭静态漏洞扫描
仓库所有者和管理员可以禁用仓库的静态漏洞扫描。要禁用扫描:
登录到 Docker Hub.
选择存储库。
您的仓库列表显示出来。
选择一个仓库。
仓库的常规页面显示出来。
选择设置标签。
在图像安全洞察设置下,选择无。
选择保存。