Docker Scout CLI 发行说明

本页包含有关 Docker Scout CLI 插件docker/scout-action GitHub Action 中新特性、改进、已知问题和错误修复的信息。

1.15.0

2024-10-31

新增

  • docker scout sbom 添加新的 --format=cyclonedx 标志,以便以 CycloneDX 格式输出 SBOM。

改进

  • CVE 摘要使用从高到低的排序顺序。
  • 支持启用和禁用通过 docker scout pushdocker scout watch 启用的仓库。

错误修复

  • 改进分析不带证明的 oci 目录时的消息提示。仅支持单平台镜像和带有证明的多平台镜像。不支持不带证明的多平台镜像。
  • 改进分类器和 SBOM 索引器
    • 添加 Liquibase lpm 的分类器。
    • 添加 Rakudo Star/MoarVM 二进制分类器。
    • 添加 silverpeas 工具的二进制分类器。
  • 改进使用 containerd 镜像存储读取和缓存证明的方式。

1.14.0

2024-09-24

新增

  • docker scout cves 命令中,在 CVE 级别添加抑制信息。

错误修复

  • 修复列出悬空镜像的 CVE 的问题,例如:local://sha256:...
  • 修复分析文件系统输入时(例如使用 docker scout cves fs://.)出现 panic 的问题。

1.13.0

2024-08-05

新增

  • docker scout quickviewdocker scout policydocker scout compare 命令添加 --only-policy 过滤选项。
  • docker scout cvesdocker scout quickview 命令添加 --ignore-suppressed 过滤选项,以过滤掉受 例外 影响的 CVE。

错误修复和改进

  • 在检查中使用条件策略名称。

  • 添加对使用链接器标志设置的 Go 项目版本检测的支持,例如

    $ go build -ldflags "-X main.Version=1.2.3"
    

1.12.0

2024-07-31

新增

  • 仅显示基础镜像中的漏洞

    CLI
    $ docker scout cves --only-base IMAGE
    
    GitHub Action
    uses: docker/scout-action@v1
    with:
      command: cves
      image: [IMAGE]
      only-base: true
  • quickview 命令中考虑 VEX。

    CLI
    $ docker scout quickview IMAGE --only-vex-affected --vex-location ./path/to/my.vex.json
    
    GitHub Action
    uses: docker/scout-action@v1
    with:
      command: quickview
      image: [IMAGE]
      only-vex-affected: true
      vex-location: ./path/to/my.vex.json
  • cves 命令中考虑 VEX (GitHub Actions)。

    GitHub Action
    uses: docker/scout-action@v1
    with:
      command: cves
      image: [IMAGE]
      only-vex-affected: true
      vex-location: ./path/to/my.vex.json

错误修复和改进

  • 更新 github.com/docker/dockerv26.1.5+incompatible 以修复 CVE-2024-41110。
  • 将 Syft 更新至 1.10.0。

1.11.0

2024-07-25

新增

  • 过滤 CISA 已知被利用漏洞目录中列出的 CVE。

    CLI
    $ docker scout cves [IMAGE] --only-cisa-kev
    
    ... (cropped output) ...
    ## Packages and Vulnerabilities
    
    0C     1H     0M     0L  io.netty/netty-codec-http2 4.1.97.Final
    pkg:maven/io.netty/netty-codec-http2@4.1.97.Final
    
    ✗ HIGH CVE-2023-44487  CISA KEV  [OWASP Top Ten 2017 Category A9 - Using Components with Known Vulnerabilities]
      https://scout.docker.com/v/CVE-2023-44487
      Affected range  : <4.1.100
      Fixed version   : 4.1.100.Final
      CVSS Score      : 7.5
      CVSS Vector     : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
    ... (cropped output) ...
    
    GitHub Action
    uses: docker/scout-action@v1
    with:
      command: cves
      image: [IMAGE]
      only-cisa-kev: true
  • 添加新分类器

    • spiped
    • swift
    • eclipse-mosquitto
    • znc

错误修复和改进

  • 在没有子组件时允许 VEX 匹配。
  • 修复附加无效 VEX 文档时出现 panic 的问题。
  • 修复 SPDX 文档根目录。
  • 修复当镜像使用 SCRATCH 作为基础镜像时基础镜像检测的问题。

1.10.0

2024-06-26

错误修复和改进

  • 添加新分类器

    • irssi
    • Backdrop
    • CrateDB CLI (Crash)
    • monica
    • Openliberty
    • dumb-init
    • friendica
    • redmine
  • 修复包上仅包含空白的 originator 导致 BuildKit 导出器中断的问题

  • 修复解析带有摘要的镜像在 SPDX statement 中的镜像引用问题

  • 支持使用 sbom:// 前缀进行镜像比较

    CLI
    $ docker scout compare sbom://image1.json --to sbom://image2.json
    
    GitHub Action
    uses: docker/scout-action@v1
    with:
      command: compare
      image: sbom://image1.json
      to: sbom://image2.json

1.9.3

2024-05-28

错误修复

  • 修复检索缓存的 SBOM 时出现 panic 的问题。

1.9.1

2024-05-27

新增

  • docker scout cves 命令添加对 GitLab 容器扫描文件格式 的支持,通过使用 --format gitlab 标志。

    以下是一个示例管道

       docker-build:
      # Use the official docker image.
      image: docker:cli
      stage: build
      services:
        - docker:dind
      variables:
        DOCKER_IMAGE_NAME: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
      before_script:
        - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
    
        # Install curl and the Docker Scout CLI
        - |
          apk add --update curl
          curl -sSfL https://raw.githubusercontent.com/docker/scout-cli/main/install.sh | sh -s --
          apk del curl
          rm -rf /var/cache/apk/*
        # Login to Docker Hub required for Docker Scout CLI
        - echo "$DOCKER_HUB_PAT" | docker login --username "$DOCKER_HUB_USER" --password-stdin
    
      # All branches are tagged with $DOCKER_IMAGE_NAME (defaults to commit ref slug)
      # Default branch is also tagged with `latest`
      script:
        - docker buildx b --pull -t "$DOCKER_IMAGE_NAME" .
        - docker scout cves "$DOCKER_IMAGE_NAME" --format gitlab --output gl-container-scanning-report.json
        - docker push "$DOCKER_IMAGE_NAME"
        - |
          if [[ "$CI_COMMIT_BRANCH" == "$CI_DEFAULT_BRANCH" ]]; then
            docker tag "$DOCKER_IMAGE_NAME" "$CI_REGISTRY_IMAGE:latest"
            docker push "$CI_REGISTRY_IMAGE:latest"
          fi
      # Run this job in a branch where a Dockerfile exists
      rules:
        - if: $CI_COMMIT_BRANCH
          exists:
            - Dockerfile
      artifacts:
        reports:
          container_scanning: gl-container-scanning-report.json

错误修复和改进

  • 支持 docker scout attest add 命令处理单架构镜像
  • docker scout quickviewdocker scout recommendations 命令中指示镜像出处是否未使用 mode=max 创建。如果未使用 mode=max,基础镜像可能被错误检测,导致结果准确性降低。

1.9.0

2024-05-24

已废弃,转而使用 1.9.1

1.8.0

2024-04-25

错误修复和改进

  • 改进 EPSS 评分和百分位数格式。

    之前

    EPSS Score      : 0.000440
    EPSS Percentile : 0.092510

    之后

    EPSS Score      : 0.04%
    EPSS Percentile : 9th percentile
  • 修复分析本地文件系统时 docker scout cves 命令的 markdown 输出问题。docker/scout-cli#113

1.7.0

2024-04-15

新增

错误修复和改进

  • 修复使用 docker scout attestation add 向私有仓库中的镜像添加证明的问题

  • 修复基于空 scratch 基础镜像的镜像处理问题

  • Docker Scout CLI 命令新增了 sbom:// 协议,允许你从标准输入读取 Docker Scout SBOM。

    $ docker scout sbom IMAGE | docker scout qv sbom://
    
  • 添加 Joomla 包的分类器

1.6.4

2024-03-26

错误修复和改进

  • 修复基于 RPM 的 Linux 发行版的 epoch 处理问题

1.6.3

2024-03-22

错误修复和改进

  • 改进包检测,以忽略引用但未安装的包。

1.6.2

2024-03-22

错误修复和改进

  • EPSS 数据现在通过后端获取,而不是通过 CLI 客户端获取。
  • 修复使用 sbom:// 前缀渲染 markdown 输出时的问题。

已移除

  • docker scout cves --epss-datedocker scout cache prune --epss 标志已被移除。

1.6.1

2024-03-20

注意

此版本仅影响 docker/scout-action GitHub Action。

新增

  • 添加对传递 SDPX 或 in-toto SDPX 格式的 SBOM 文件支持

    uses: docker/scout-action@v1
    with:
        command: cves
        image: sbom://alpine.spdx.json
  • 添加对 syft-json 格式的 SBOM 文件支持

    uses: docker/scout-action@v1
    with:
        command: cves
        image: sbom://alpine.syft.json

1.6.0

2024-03-19

注意

此版本仅影响 CLI 插件,不影响 GitHub Action

新增

  • 添加对传递 SDPX 或 in-toto SDPX 格式的 SBOM 文件支持

    $ docker scout cves sbom://path/to/sbom.spdx.json
    
  • 添加对 syft-json 格式的 SBOM 文件支持

    $ docker scout cves sbom://path/to/sbom.syft.json
    
  • 从标准输入读取 SBOM 文件

    $ syft -o json alpine | docker scout cves sbom://
    
  • 按 EPSS 评分优先处理 CVE

    • --epss 用于显示和优先处理 CVE
    • --epss-score--epss-percentile 用于按评分和百分位数过滤
    • 使用 docker scout cache prune --epss 清理缓存的 EPSS 文件

错误修复和改进

  • 使用 WSL2 中的 Windows 缓存

    在运行 Docker Desktop 的 WSL2 中,Docker Scout CLI 插件现在使用 Windows 中的缓存。这样,如果镜像已经由 Docker Desktop 索引过,则无需在 WSL2 侧重新索引。

  • 如果已使用 设置管理 功能禁用索引,则 CLI 中的索引现在会被阻止。

  • 修复分析单镜像 oci-dir 输入时可能出现的 panic 问题

  • 改进使用 containerd 镜像存储的本地证明支持

早期版本

Docker Scout CLI 插件早期版本的发行说明可在 GitHub 上找到。

页面选项