基本扫描 - Amazon ECR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

基本扫描

改进后的基本扫描功能在 Amazon ECR 的预览版中,可能会发生变化。在此公开预览期间,您只能使用选择 Amazon Web Services Management Console 加入改进版基本扫描版本。

Amazon ECR 提供了两个使用常见漏洞和暴露 (CVE) 数据库的基本扫描版本:使用开源 Clair 项目的当前 GA 版本和使用我们原生技术的新改进版基本扫描(预览版)。 Amazon 在私有注册表上启用任一版本的 Amazon ECR 基本扫描后,您可以配置存储库筛选器以指定哪些存储库设置为推送时扫描,也可以执行手动扫描。Amazon ECR 提供了扫描结果的列表。对于每个容器镜像,可以每 24 小时扫描一次。您可以查看扫描结果,了解有关使用 DescribeImageScanFindings API 或在控制台中部署的容器映像的安全性的信息。有关 Clair 的更多信息,请参阅上的 Clair。 GitHub

Amazon ECR 使用上游分配源中的 CVE 的严重性 (如果可用),否则我们使用通用漏洞评分系统 (CVSS) 评分。CVSS 评分可用于获取 NVD 漏洞严重性评级。有关更多信息,请参阅 NVD 漏洞严重性评级

对于任何不符合推送筛选条件的存储库,都将设置为 manual(手动)扫描频率,这意味着必须手动触发扫描才能执行扫描。可以为每个镜像检索上次完成的镜像扫描结果。图像扫描完成后,Amazon ECR 会向亚马逊发送一个 CloudWatch 事件 EventBridge (以前称为事件)。有关更多信息,请参阅 Amazon ECR 事件和 EventBridge

重要

以下区域支持新版本的基本扫描:

  • 亚太地区(香港)(ap-east-1)

  • 欧洲(斯德哥尔摩)(eu-north-1)

  • 中东(巴林)(me-south-1)

  • 亚太地区(孟买)(ap-south-1)

  • 欧洲(巴黎)(eu-west-3)

  • Amazon GovCloud (美国东部)(us-gov-east-1)

  • 非洲(开普敦)(af-south-1)

  • 亚太地区(雅加达)(ap-southeast-3

  • 欧洲地区(法兰克福)(eu-central-1)

  • 欧洲地区(爱尔兰)(eu-west-1)

  • 南美洲(圣保罗)(sa-east-1)

  • 美国东部(俄亥俄州)(us-east-2)

  • Amazon GovCloud (美国西部)(us-gov-west-1)

  • 亚太地区(东京)(ap-northeast-1)

  • 亚太地区(首尔)(ap-northeast-2)

  • 亚太地区(大阪)(ap-northeast-3)

  • 欧洲(米兰)(eu-south-1)

  • 欧洲(伦敦)(eu-west-2)

  • 美国东部(弗吉尼亚州北部)(us-east-1)

  • 亚太地区(新加坡)(ap-southeast-1)

  • 亚太地区(悉尼)(ap-southeast-2)

  • 加拿大(中部)(ca-central-1)

  • 美国西部(加利福尼亚北部)(us-west-1)

  • 美国西部(俄勒冈州)(us-west-2)

  • 欧洲(苏黎世)(eu-central-2

有关扫描镜像时的常见问题的排查详细信息,请参阅 排查镜像扫描问题

作为安全最佳实践,为了持续提供保障,我们建议您继续使用支持的操作系统版本。根据供应商政策,已停产的操作系统将不再使用补丁进行更新,而且在许多情况下,不再为它们发布新的安全公告。此外,当受影响的操作系统的标准支持期结束时,一些供应商会从他们的信息源中删除现有的安全公告和检测。一旦分发失去其供应商的支持,Amazon ECR 可能不再支持扫描它是否存在漏洞。Amazon ECR 针对已停产的操作系统得出的任何调查结果都应仅用于提供信息。下面列出了当前支持的操作系统和版本。

操作系统 版本
Alpine Linux (Alpine) 3.19
Alpine Linux (Alpine) 3.18
Alpine Linux (Alpine) 3.17
Alpine Linux (Alpine) 3.16
Amazon Linux 2 (AL2) AL2
亚马逊 Linux 2023 (AL2023) AL2023
CentOS Linux (CentOS) 7
Debian 服务器 (Bookworm) 12
Debian 服务器 (Bullseye) 11
Debian 服务器 (Buster) 10
Oracle Linux (Oracle) 9
Oracle Linux (Oracle) 8
Oracle Linux (Oracle) 7
Ubuntu(农历) 23.04
Ubuntu (Jammy) 22.04 (LTS)
Ubuntu (Focal) 20.024 (LTS)
Ubuntu (Bionic) 18.04 (ESM)
Ubuntu (Xenial) 16.04 (ESM)
Ubuntu (Trusty) 14.04 (ESM)
Red Hat Enterprise Linux (RHEL) 7
Red Hat Enterprise Linux (RHEL) 8
Red Hat Enterprise Linux (RHEL) 9

使用基本扫描

Basic scanning with Clair

默认情况下,Amazon ECR 在所有私有注册表上启用基本扫描。因此,除非您更改了私有注册表上的扫描设置,否则不必启用基本扫描。您可以使用以下步骤验证是否启用了基本扫描并在推送筛选条件上定义一个或多个扫描。

为私有注册表开启基本扫描(Amazon Web Services Management Console)

扫描配置在每个区域的私有注册表级别定义。

  1. https://console.aws.amazon.com/ecr/repositories 打开 Amazon ECR 控制台。

  2. 从导航栏中,选择要为其设置扫描配置的区域。

  3. 在导航窗格中,选择 Private registry(私有注册表)、Scanning(扫描)。

  4. Scanning configuration(扫描配置)页面中,为 Scan type(扫描类型)选择 Basic scanning(基本扫描)。

  5. 默认情况下,您的所有存储库都设置为手动扫描。您可以选择通过指定推送时扫描筛选条件来开启推送时扫描。您可以为所有存储库或单个存储库设置推送时扫描。有关更多信息,请参阅 使用筛选条件

Improved basic scanning with Amazon native technology (In preview)

新版本的 Amazon ECR 基本扫描功能现已推出预览版。

为私有注册表开启经过改进的基本扫描 (Amazon Web Services Management Console)

扫描配置在每个区域的私有注册表级别定义。

  1. https://console.aws.amazon.com/ecr/repositories 打开 Amazon ECR 控制台。

  2. 从导航栏中,选择要为其设置扫描配置的区域。

  3. 在导航窗格中,选择 Private registry(私有注册表)、Scanning(扫描)。

  4. 扫描配置页面上,对于扫描类型,选择改进的基本扫描(预览中)-新增

  5. 默认情况下,您的所有存储库都设置为手动扫描。您可以选择通过指定推送时扫描筛选条件来开启推送时扫描。您可以为所有存储库或单个存储库设置推送时扫描。有关更多信息,请参阅 使用筛选条件

手动扫描镜像

当您要扫描存储库中未配置为推送时扫描的镜像时,可以手动开始镜像扫描。每天只能扫描一次镜像。此限额包括初始推送时扫描(如已配置)以及任何手动扫描。

有关扫描镜像时的常见问题的排查详细信息,请参阅 排查镜像扫描问题

Amazon Web Services Management Console

通过 Amazon Web Services Management Console使用以下步骤开始手动镜像扫描。

  1. https://console.aws.amazon.com/ecr/repositories 打开 Amazon ECR 控制台。

  2. 从导航栏中,选择您创建存储库的区域。

  3. 在导航窗格中,选择存储库

  4. 存储库页面上,选择包含要扫描的镜像的存储库。

  5. 镜像页面上,选择要扫描的镜像,然后选择扫描

Amazon CLI
  • start-image-scan (Amazon CLI)

    以下示例使用镜像标签。

    aws ecr start-image-scan --repository-name name --image-id imageTag=tag_name --region us-east-2

    以下示例使用镜像摘要。

    aws ecr start-image-scan --repository-name name --image-id imageDigest=sha256_hash --region us-east-2
Amazon Tools for Windows PowerShell
  • get-ecr () ImageScanFindingAmazon Tools for Windows PowerShell

    以下示例使用镜像标签。

    Start-ECRImageScan -RepositoryName name -ImageId_ImageTag tag_name -Region us-east-2 -Force

    以下示例使用镜像摘要。

    Start-ECRImageScan -RepositoryName name -ImageId_ImageDigest sha256_hash -Region us-east-2 -Force

检索镜像扫描查找结果

您可以检索上次完成的镜像扫描的扫描结果。扫描结果根据常见漏洞和披露 (CVE) 数据库按严重性列出发现的软件漏洞。

有关扫描镜像时的常见问题的排查详细信息,请参阅 排查镜像扫描问题

Amazon Web Services Management Console
  1. https://console.aws.amazon.com/ecr/repositories 打开 Amazon ECR 控制台。

  2. 从导航栏中,选择您创建存储库的区域。

  3. 在导航窗格中,选择存储库

  4. 存储库页面上,选择包含要扫描检索结果的镜像的存储库。

  5. 镜像页面的漏洞列下,选择要检索其扫描结果的镜像的详细信息

Amazon CLI

使用以下 Amazon CLI 命令使用检索图像扫描结果 Amazon CLI。您可以使用 imageTagimageDigest 指定镜像,这两者都可以使用 list-images CLI 命令获取。

  • describe-image-scan-findings (Amazon CLI)

    以下示例使用镜像标签。

    aws ecr describe-image-scan-findings --repository-name name --image-id imageTag=tag_name --region us-east-2

    以下示例使用镜像摘要。

    aws ecr describe-image-scan-findings --repository-name name --image-id imageDigest=sha256_hash --region us-east-2
Amazon Tools for Windows PowerShell
  • get-ecr () ImageScanFindingAmazon Tools for Windows PowerShell

    以下示例使用镜像标签。

    Get-ECRImageScanFinding -RepositoryName name -ImageId_ImageTag tag_name -Region us-east-2

    以下示例使用镜像摘要。

    Get-ECRImageScanFinding -RepositoryName name -ImageId_ImageDigest sha256_hash -Region us-east-2