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://.

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/docker更新为v26.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 文档时出现的恐慌。
  • 修复 SPDX 文档根目录。
  • 修复了当镜像使用 SCRATCH 作为基础镜像时的基础镜像检测。

1.10.0

2024-06-26

错误修复和增强功能

  • 添加新的分类器

    • irssi
    • Backdrop
    • CrateDB CLI(崩溃)
    • monica
    • Openliberty
    • dumb-init
    • friendica
    • redmine
  • 修复了包中仅包含空格的发起者破坏 BuildKit 导出器的问题

  • 修复了为包含摘要的镜像解析 SPDX 语句中的镜像引用的问题

  • 支持镜像比较的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 时出现的恐慌。

1.9.1

2024-05-27

新增功能

  • 添加了对GitLab 容器扫描文件格式的支持,在docker scout cves命令中使用--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 发行版的纪元处理问题。

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输入时发生的恐慌问题。

  • 改进对 containerd 镜像存储的本地证明支持。

早期版本

Docker Scout CLI 插件早期版本的发布说明可在GitHub上查看。