Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
trivy — 用于 Trivy 扫描的 GitLab CI 组件 | Kitploit
工具/GitLabGitLab/niclas-zone/ci/trivy
漏洞扫描器容器安全云安全DevSecOps秘密检测供应链安全错误配置
GitLabniclas-zone/ci/trivy

trivy

用于 Trivy 扫描的 GitLab CI 组件

查看仓库
1个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Trivy GitLab CI 组件

一个面向 Trivy 的 GitLab CI 组件——Trivy 是一款全功能安全扫描器,涵盖容器镜像、文件系统、仓库、Kubernetes 集群、SBOM 以及许可证合规性。将这些模板直接插入你的流水线,即可获得可重复的扫描、GitLab 原生报告以及便携式工件,几乎无需编写 Shell 脚本。

功能特性

  • 完整覆盖面:容器、文件系统、根文件系统、Git 仓库、虚拟机、SBOM、Kubernetes 集群等。
  • 多扫描器:漏洞、错误配置/IaC、密钥和许可证扫描,每个作业均可控制。
  • GitLab 报告:输出容器扫描、JUnit、SARIF 和 JSON 工件,可直接用于合并请求洞察。
  • 可定制的输入参数:每个模板都暴露了严重级别、扫描器、超时、包类型和工件的调节选项。
  • 可组合的模板:在同一个组件命名空间下,混合使用远程或本地扫描、SBOM 工作流、Rekor 证明和 IaC 检查。

使用方法

基本用法

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/main@latest

stages:
  - test

远程镜像,自定义严重级别

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/main@latest
    inputs:
      job_name: "security:remote"
      TRIVY_SCAN_REMOTE_IMAGE: "registry.gitlab.com/group/app:latest"
      severity: "CRITICAL,HIGH,MEDIUM"
      exit_on_vulnerability: true

stages:
  - test

本地 tar / OCI 布局扫描

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/main@latest
    inputs:
      job_name: "security:local"
      TRIVY_SCAN_LOCAL_IMAGES: "dist/"
      TRIVY_SCANNERS: "vuln,secret"
      exit_on_vulnerability: false

stages:
  - test

组件输入与模板

以下每个模板都列出了组件规范中定义的可用输入及其默认值,随后是一个最小工作示例。

组件:templates/main.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/main@latest
    inputs:
      job_name: "trivy:basic"
      TRIVY_SCAN_REMOTE_IMAGE: "nginx:latest"

组件:templates/target_container.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/target_container@latest
    inputs:
      job_name: "trivy:containers"
      TRIVY_SCAN_REMOTE_IMAGE: "registry.gitlab.com/group/service:latest"
      TRIVY_SCANNERS: "vuln,secret"
      exit_on_vulnerability: true

组件:templates/target_filesystem.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/target_filesystem@latest
    inputs:
      TRIVY_FS_PATH: "services/api"
      TRIVY_SCANNERS: "vuln,misconfig,secret"

组件:templates/target_rootfs.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/target_rootfs@latest
    inputs:
      TRIVY_ROOTFS_PATH: "/mnt/root"
      TRIVY_SCANNERS: "vuln"

组件:templates/target_repository.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/target_repository@latest
    inputs:
      TRIVY_REPO_TARGET: "https://github.com/aquasecurity/trivy"
      TRIVY_REPO_BRANCH: "main"

组件:templates/target_vm.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/target_vm@latest
    inputs:
      TRIVY_VM_TARGET: "ami-0123456789abcdef0"
      TRIVY_AWS_REGION: "us-east-1"

组件:templates/target_kubernetes.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/target_kubernetes@latest
    inputs:
      TRIVY_K8S_OBJECT: "namespace/prod"
      TRIVY_K8S_REPORT: "summary"

组件:templates/scanner_iac_config.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/scanner_iac_config@latest
    inputs:
      TRIVY_CONFIG_PATH: "examples/iac/terraform"
      severity: "CRITICAL,HIGH,MEDIUM"

组件:templates/scanner_license.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/scanner_license@latest
    inputs:
      TRIVY_SCAN_LOCAL_IMAGES: "test.tar"
      TRIVY_LICENSE_FULL: true

组件:templates/sbom_generate_image.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/sbom_generate_image@latest
    inputs:
      TRIVY_SBOM_INPUT: "test.tar"
      TRIVY_SBOM_FILENAME: "ci-image-sbom.cdx.json"

组件:templates/sbom_generate_repo.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/sbom_generate_repo@latest
    inputs:
      TRIVY_REPO_TARGET: "."
      TRIVY_SBOM_FORMAT: "spdx-json"

组件:templates/sbom_generate_kbom.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/sbom_generate_kbom@latest
    inputs:
      TRIVY_K8S_TARGET: "namespace/default"
      scan_kbom: true

组件:templates/sbom_scan_file.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/sbom_scan_file@latest
    inputs:
      TRIVY_SBOM_PATH: "artifacts/trivy/ci-image-sbom.cdx.json"
      TRIVY_SCANNERS: "vuln,license"

组件:templates/sbom_scan_rekor.yml

示例

root@kitploit:~
include:
  - component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/sbom_scan_rekor@latest
    inputs:
      TRIVY_SCAN_REMOTE_IMAGE: "registry.gitlab.com/group/app@sha256:..."
      TRIVY_REKOR_URL: "https://rekor.sigstore.dev"
下载工具
输入描述默认值
job_nameCI 作业名称"trivy scanning"
stage流水线阶段"test"
image运行 Trivy 的容器镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_NEEDED_STAGE在 Trivy 运行前必须完成的阶段"build"
TRIVY_SCAN_REMOTE_IMAGE要扫描的远程镜像""
TRIVY_SCAN_LOCAL_IMAGEStar/OCI 输入的路径(为空时搜索 .)""
TRIVY_SCANNERS逗号分隔的扫描器列表"vuln,secret,misconfig"
severity包含的严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现问题时作业失败true
TRIVY_EXTRA_ARGS额外的 CLI 参数""
allow_failure允许作业失败而不导致流水线失败false
输入描述默认值
job_nameCI 作业名称"trivy:scan:containers"
stage流水线阶段"test"
imageTrivy 容器镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_SCAN_REMOTE_IMAGE远程镜像引用""
TRIVY_SCAN_LOCAL_IMAGES本地扫描的目录/tar""
TRIVY_SCANNERS已启用的扫描器"vuln,secret,misconfig"
TRIVY_IMAGE_SRC镜像源后端(remote/docker/...)""
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability严重级别匹配时失败true
TRIVY_IGNORE_UNFIXED忽略无修复的问题true
TRIVY_PKG_TYPES包类型"os,library"
TRIVY_VULN_TYPE已弃用的包类型别名""
TRIVY_TIMEOUT命令超时"10m"
TRIVY_EXTRA_ARGS额外的 CLI 参数""
TRIVY_DB_REPOSITORY自定义数据库镜像""
TRIVY_JAVA_DB_REPOSITORY自定义 Java 数据库镜像""
TRIVY_SKIP_FILES文件通配排除""
TRIVY_SKIP_DIRS目录排除""
allow_failure允许失败而不导致流水线失败false
输入描述默认值
job_nameCI 作业名称"trivy:scan:filesystem"
stage流水线阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_FS_PATH要扫描的文件或目录"."
TRIVY_SCANNERS已启用的扫描器"vuln,secret"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability严重级别匹配时失败true
TRIVY_IGNORE_UNFIXED忽略无修复的问题true
TRIVY_PKG_TYPES包类型"os,library"
TRIVY_TIMEOUT超时"10m"
TRIVY_SKIP_FILES要跳过的文件通配""
TRIVY_SKIP_DIRS要跳过的目录""
TRIVY_EXTRA_ARGS额外的 CLI 参数""
TRIVY_REPORT_BASENAME工件基础名称"filesystem-scan"
allow_failure允许作业失败false
输入描述默认值
job_name作业名称"trivy:scan:rootfs"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_ROOTFS_PATH根文件系统路径"/"
TRIVY_SCANNERS扫描器"vuln,secret"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时作业失败true
TRIVY_IGNORE_UNFIXED忽略无修复true
TRIVY_PKG_TYPES包类型"os,library"
TRIVY_TIMEOUT超时"10m"
TRIVY_SKIP_FILES要跳过的文件""
TRIVY_SKIP_DIRS要跳过的目录""
TRIVY_EXTRA_ARGS额外参数""
TRIVY_REPORT_BASENAME工件基础名称"rootfs-scan"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:repo"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_REPO_TARGET本地路径或 Git URL"."
TRIVY_REPO_BRANCH远程分支""
TRIVY_REPO_COMMIT提交哈希""
TRIVY_REPO_TAG标签名""
TRIVY_SCANNERS扫描器"vuln,secret"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时作业失败true
TRIVY_IGNORE_UNFIXED忽略无修复true
TRIVY_TIMEOUT超时"10m"
TRIVY_SKIP_FILES要跳过的文件""
TRIVY_SKIP_DIRS要跳过的目录""
TRIVY_EXTRA_ARGS额外参数""
TRIVY_REPORT_BASENAME工件基础名称"repo-scan"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:vm"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_VM_TARGET本地路径或 ami:/ebs: 标识符""
TRIVY_AWS_REGIONAMI/EBS 扫描的 AWS 区域""
TRIVY_SCANNERS扫描器"vuln"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时作业失败true
TRIVY_IGNORE_UNFIXED忽略无修复true
TRIVY_TIMEOUT超时"20m"
TRIVY_EXTRA_ARGS额外参数""
TRIVY_REPORT_BASENAME工件基础名称"vm-scan"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:k8s"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_K8S_OBJECT作用域(cluster、namespace/foo 等)""
TRIVY_K8S_REPORT报告详细程度(summary/all)"summary"
TRIVY_K8S_KUBECONFIG自定义 kubeconfig 路径""
TRIVY_K8S_INCLUDE_NAMESPACES要包含的命名空间""
TRIVY_K8S_EXCLUDE_NAMESPACES要排除的命名空间""
TRIVY_K8S_INCLUDE_KINDS要包含的资源类型""
TRIVY_K8S_EXCLUDE_KINDS要排除的资源类型""
TRIVY_K8S_SKIP_IMAGES跳过工作负载镜像扫描false
TRIVY_K8S_DISABLE_NODE_COLLECTOR禁用节点收集器false
TRIVY_SCANNERS扫描器"vuln,misconfig,secret"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时作业失败true
TRIVY_IGNORE_UNFIXED忽略无修复true
TRIVY_TIMEOUT超时"15m"
TRIVY_K8S_EXTRA_ARGS额外参数""
TRIVY_REPORT_BASENAME工件基础名称"k8s-scan"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:iac"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_CONFIG_PATHIaC 目录"."
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时失败true
TRIVY_CONFIG_REPORT报告详细程度"all"
TRIVY_CONFIG_INCLUDE_NON_FAILURES包含通过项false
TRIVY_MISCONFIG_SCANNERS错误配置扫描器列表"azure-arm,cloudformation,dockerfile,helm,kubernetes,terraform"
TRIVY_TIMEOUT超时"10m"
TRIVY_SKIP_FILES要跳过的文件""
TRIVY_SKIP_DIRS要跳过的目录""
TRIVY_CONFIG_EXTRA_ARGS额外参数""
TRIVY_REPORT_BASENAME工件基础名称"iac-scan"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:license"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_SCAN_REMOTE_IMAGE远程镜像引用""
TRIVY_SCAN_LOCAL_IMAGES本地 tar/OCI 或文件系统路径""
TRIVY_SCANNERS扫描器列表"license"
severity严重级别"CRITICAL"
exit_on_vulnerability严重级别匹配时失败true
TRIVY_LICENSE_FULL启用 --license-fullfalse
TRIVY_LICENSE_CONFIDENCE置信度阈值"0.9"
TRIVY_LICENSE_IGNORED要忽略的许可证""
TRIVY_PKG_TYPES包类型"os,library"
TRIVY_TIMEOUT超时"10m"
TRIVY_EXTRA_ARGS额外参数""
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:sbom:image"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_SBOM_IMAGE远程镜像引用""
TRIVY_SBOM_INPUT本地 OCI/tar 输入""
TRIVY_SBOM_FORMATSBOM 格式"cyclonedx"
TRIVY_SBOM_FILENAME输出文件名"image-sbom.cdx.json"
TRIVY_SBOM_EXTRA_ARGS额外参数""
TRIVY_TIMEOUT超时"10m"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:sbom:repo"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_REPO_TARGET路径或远程 Git URL"."
TRIVY_REPO_BRANCH分支""
TRIVY_REPO_COMMIT提交哈希""
TRIVY_REPO_TAG标签""
TRIVY_SBOM_FORMAT格式"cyclonedx"
TRIVY_SBOM_FILENAME输出文件名"repo-sbom.cdx.json"
TRIVY_REPO_SCANNERSSBOM 创建期间的扫描器"vuln,secret"
TRIVY_REPO_EXTRA_ARGS额外参数""
TRIVY_TIMEOUT超时"10m"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:sbom:kbom"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_K8S_TARGETtrivy k8s 目标(cluster、namespace/...)"cluster"
TRIVY_K8S_CONTEXTKubeconfig 上下文""
TRIVY_K8S_EXTRA_ARGS额外参数""
TRIVY_SBOM_FILENAMEKBOM 文件名"kbom.cdx.json"
TRIVY_TIMEOUT超时"15m"
scan_kbom对生成的 KBOM 运行漏洞扫描true
TRIVY_SBOM_SCANNERSKBOM 扫描的扫描器"vuln"
severityKBOM 扫描的严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时失败true
TRIVY_SBOM_SCAN_EXTRA_ARGSKBOM 扫描的额外参数""
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:sbom"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_SBOM_PATHSBOM 文件路径"artifacts/trivy/image-sbom.cdx.json"
TRIVY_SBOM_REPORT_BASENAME输出基础名称"sbom-scan"
TRIVY_SCANNERS要运行的扫描器"vuln,license"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时失败true
TRIVY_SBOM_SCAN_EXTRA_ARGS额外参数""
TRIVY_TIMEOUT超时"10m"
allow_failure允许失败false
输入描述默认值
job_name作业名称"trivy:scan:rekor"
stage阶段"test"
imageTrivy 镜像"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_SCAN_REMOTE_IMAGE已证明的远程镜像""
TRIVY_REKOR_URLRekor API 端点""
TRIVY_SCANNERS扫描器"vuln"
severity严重级别"CRITICAL,HIGH"
exit_on_vulnerability发现结果时失败true
TRIVY_IGNORE_UNFIXED忽略无修复true
TRIVY_TIMEOUT超时"10m"
TRIVY_EXTRA_ARGS额外参数""
allow_failure允许失败false