Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
trivy — Trivy 스캐닝을 위한 GitLab CI 구성 요소 | Kitploit
도구/GitLabGitLab/niclas-zone/ci/trivy
Vulnerability ScannersContainer SecurityCloud SecurityDevSecOpsSecret DetectionSupply Chain SecurityMisconfiguration
GitLabniclas-zone/ci/trivy

trivy

Trivy 스캐닝을 위한 GitLab CI 구성 요소

저장소 보기
1개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Trivy GitLab CI 컴포넌트

GitLab CI를 위한 Trivy 컴포넌트입니다. Trivy는 컨테이너 이미지, 파일시스템, 리포지토리, Kubernetes 클러스터, SBOM, 라이선스 규정 준수를 포괄하는 올인원 보안 스캐너입니다. 이 템플릿들을 파이프라인에 직접 연결하면 거의 셸 스크립팅 없이 반복 가능한 스캔, GitLab 네이티브 보고서 및 이식 가능한 아티팩트를 얻을 수 있습니다.

기능

  • 전체 표면 커버리지: 컨테이너, 파일시스템, 루트 파일시스템, Git 리포지토리, VM, 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"
imageTrivy를 실행하는 컨테이너 이미지"ghcr.io/aquasecurity/trivy:0.68.1"
TRIVY_NEEDED_STAGETrivy 실행 전에 완료되어야 하는 단계"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_TYPEpkg 유형의 사용 중단된 별칭""
TRIVY_TIMEOUT명령 시간 초과"10m"
TRIVY_EXTRA_ARGS추가 CLI 인수""
TRIVY_DB_REPOSITORY사용자 정의 DB 미러""
TRIVY_JAVA_DB_REPOSITORY사용자 정의 Java DB 미러""
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-full 활성화false
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