从扫描后的镜像生成 SBOM

Alauda Security Service 可帮助您从已扫描的容器镜像生成软件物料清单(SBOM)。SBOM 提供镜像内软件组件、依赖项和库的详细清单,并帮助团队更高效地调查存在漏洞的软件包。

什么是 SBOM?

软件物料清单(SBOM)是一份数字记录,用于列出某个软件的组件及其来源。SBOM 可帮助组织:

  • 识别存在漏洞的软件包和组件
  • 快速响应以降低风险
  • 符合 Executive Order 14028 等法规要求

SBOM 可以通过不同方式生成。Alauda Security Service 生成的 SBOM 属于“分析型(Analyzed)” SBOM,即通过分析可执行文件、软件包、容器和 VM 镜像等工件创建。根据 CISA 的定义,分析型 SBOM:

  • 无需活动的开发环境即可提供信息
  • 无需访问构建过程即可生成
  • 有助于发现隐藏依赖项

Alauda Security Service 生成的 SBOM 采用 System Package Data Exchange (SPDX) 2.3 格式,并以 JSON 形式下载。

如何生成 SBOM

您可以使用 Alauda Security Service 门户、roxctl CLI 或 API 生成 SBOM。

使用门户

  1. 转到 Vulnerability Management > Results 并找到您想要的镜像。
  2. 如有需要,切换到相关结果视图,例如 User WorkloadsPlatformMore Views 下的某个视图。
  3. 执行以下任一操作:
    • 在镜像行中,单击溢出菜单并选择 Generate SBOM
    • 选择该镜像以查看详细信息,然后单击 Generate SBOM
  4. 在对话框中查看镜像信息和 SBOM 格式。
  5. 单击 Generate SBOM 以创建并下载文件。

使用 roxctl CLI

运行以下命令:

roxctl image sbom --image=image-name

image-name 替换为镜像的名称和引用(例如,nginx:latestnginx@sha256:...)。

CLI 选项

选项描述
-f, --force绕过 Central 对该镜像的缓存,并强制从扫描器重新拉取。默认值:false
-d, --retry-delay integer重试之间的等待时间,单位为秒。默认值:3。
-i, --image string镜像名称和引用(例如,nginx:latestnginx@sha256:...)。
-r, --retries integerScanner V4 在退出并返回错误之前应重试的次数。默认值:3。

使用 API

您也可以使用带有 API token 的 API 生成 SBOM。当您希望将 SBOM 创建集成到自动化或外部报告工作流中时,可以使用此选项。