trivy — Trivy स्कैनिंग के लिए GitLab CI घटक | Kitploit
उपकरण / GitLab / niclas-zone / ci / trivy
niclas-zone/ci/trivy trivy Trivy स्कैनिंग के लिए GitLab CI घटक
4 1 महीना पहलेहमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।
पिछले 7 दिन पिछले 30 दिन
ट्रिवी गिटलैब सीआई घटक
ट्रिवी के लिए एक गिटलैब CI घटक — एक ऑल-इन-वन सुरक्षा स्कैनर जो कंटेनर इमेज, फाइलसिस्टम, रिपॉजिटरी, कुबरनेट्स क्लस्टर, SBOM और लाइसेंस अनुपालन को कवर करता है। इन टेम्प्लेट को सीधे अपने पाइपलाइन में प्लग करें और लगभग बिना किसी शेल स्क्रिप्टिंग के दोहराए जाने योग्य स्कैन, गिटलैब-मूल रिपोर्ट और पोर्टेबल आर्टिफैक्ट प्राप्त करें।
विशेषताएँ
पूर्ण सतह कवरेज : कंटेनर, फाइलसिस्टम, रूट फाइलसिस्टम, Git रिपॉजिटरी, VM, SBOM, कुबरनेट्स क्लस्टर, और बहुत कुछ।
एकाधिक स्कैनर : प्रति-नौकरी नियंत्रण के साथ भेद्यता, गलत कॉन्फ़िगरेशन/IaC, गुप्त और लाइसेंस स्कैनिंग।
गिटलैब रिपोर्ट : कंटेनर स्कैनिंग, JUnit, SARIF और JSON आर्टिफैक्ट उत्सर्जित करता है जो मर्ज-अनुरोध अंतर्दृष्टि के लिए तैयार हैं।
अनुकूलन योग्य इनपुट : प्रत्येक टेम्पलेट गंभीरता, स्कैनर, टाइमआउट, पैकेज प्रकार और आर्टिफैक्ट के लिए नॉब प्रदान करता है।
संयोजनीय टेम्पलेट : एक घटक नामस्थान से दूरस्थ या स्थानीय स्कैन, SBOM वर्कफ़्लो, रेकॉर प्रमाणन और IaC जाँचें मिलाएँ।
उपयोग
मूल उपयोग
include:
- component: $CI_SERVER_FQDN/niclas-zone/ci/trivy/main@latest
stages:
- test
कस्टम गंभीरता के साथ दूरस्थ इमेज
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
स्थानीय टार / OCI लेआउट स्कैन 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 इनपुट विवरण डिफ़ॉल्ट job_nameCI नौकरी का नाम "trivy scanning"stageपाइपलाइन चरण "test"imageTrivy चलाने वाली कंटेनर इमेज "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समस्याएँ मिलने पर नौकरी विफल करें trueTRIVY_EXTRA_ARGSअतिरिक्त CLI फ़्लैग ""allow_failureपाइपलाइन विफल किए बिना नौकरी विफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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गंभीरता मिलान पर विफल करें trueTRIVY_IGNORE_UNFIXEDबिना फिक्स वाली समस्याओं को अनदेखा करें trueTRIVY_PKG_TYPESपैकेज प्रकार "os,library"TRIVY_VULN_TYPEपैकेज प्रकारों के लिए अप्रचलित उपनाम ""TRIVY_TIMEOUTकमांड टाइमआउट "10m"TRIVY_EXTRA_ARGSअतिरिक्त CLI आर्ग ""TRIVY_DB_REPOSITORYकस्टम DB मिरर ""TRIVY_JAVA_DB_REPOSITORYकस्टम Java DB मिरर ""TRIVY_SKIP_FILES
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 इनपुट विवरण डिफ़ॉल्ट 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गंभीरता मिलान पर विफल करें trueTRIVY_IGNORE_UNFIXEDअनफिक्स्ड समस्याओं को अनदेखा करें trueTRIVY_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
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 इनपुट विवरण डिफ़ॉल्ट 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निष्कर्षों पर नौकरी विफल करें trueTRIVY_IGNORE_UNFIXEDअनफिक्स्ड को अनदेखा करें trueTRIVY_PKG_TYPESपैकेज प्रकार "os,library"TRIVY_TIMEOUTटाइमआउट "10m"TRIVY_SKIP_FILESछोड़ने के लिए फ़ाइलें ""TRIVY_SKIP_DIRSछोड़ने के लिए निर्देशिकाएँ ""TRIVY_EXTRA_ARGSअतिरिक्त आर्ग ""TRIVY_REPORT_BASENAMEआर्टिफैक्ट आधार नाम "rootfs-scan"allow_failureविफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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निष्कर्षों पर नौकरी विफल करें trueTRIVY_IGNORE_UNFIXEDअनफिक्स्ड को अनदेखा करें trueTRIVY_TIMEOUTटाइमआउट "10m"TRIVY_SKIP_FILESछोड़ने के लिए फ़ाइलें ""TRIVY_SKIP_DIRSछोड़ने के लिए निर्देशिकाएँ ""TRIVY_EXTRA_ARGSअतिरिक्त आर्ग ""TRIVY_REPORT_BASENAMEआर्टिफैक्ट आधार नाम "repo-scan"allow_failureविफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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निष्कर्षों पर नौकरी विफल करें trueTRIVY_IGNORE_UNFIXEDअनफिक्स्ड को अनदेखा करें trueTRIVY_TIMEOUTटाइमआउट "20m"TRIVY_EXTRA_ARGSअतिरिक्त आर्ग ""TRIVY_REPORT_BASENAMEआर्टिफैक्ट आधार नाम "vm-scan"allow_failureविफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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वर्कलोड इमेज स्कैन छोड़ें falseTRIVY_K8S_DISABLE_NODE_COLLECTORनोड संग्राहक अक्षम करें falseTRIVY_SCANNERSस्कैनर "vuln,misconfig,secret"severityगंभीरताएँ "CRITICAL,HIGH"exit_on_vulnerabilityनिष्कर्षों पर नौकरी विफल करें trueTRIVY_IGNORE_UNFIXEDअनफिक्स्ड को अनदेखा करें
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 इनपुट विवरण डिफ़ॉल्ट job_nameनौकरी का नाम "trivy:scan:iac"stageचरण "test"imageTrivy इमेज "ghcr.io/aquasecurity/trivy:0.68.1"TRIVY_CONFIG_PATHIaC निर्देशिका "."severityगंभीरताएँ "CRITICAL,HIGH"exit_on_vulnerabilityनिष्कर्षों पर विफल करें trueTRIVY_CONFIG_REPORTरिपोर्ट विस्तार "all"TRIVY_CONFIG_INCLUDE_NON_FAILURESपास को शामिल करें falseTRIVY_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
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 इनपुट विवरण डिफ़ॉल्ट 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गंभीरता मिलान पर विफल करें trueTRIVY_LICENSE_FULL--license-full सक्षम करेंfalseTRIVY_LICENSE_CONFIDENCEआत्मविश्वास सीमा "0.9"TRIVY_LICENSE_IGNOREDअनदेखा करने के लिए लाइसेंस ""TRIVY_PKG_TYPESपैकेज प्रकार "os,library"TRIVY_TIMEOUTटाइमआउट "10m"TRIVY_EXTRA_ARGSअतिरिक्त आर्ग ""allow_failureविफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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
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 इनपुट विवरण डिफ़ॉल्ट 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
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 इनपुट विवरण डिफ़ॉल्ट 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 पर भेद्यता स्कैन चलाएँ trueTRIVY_SBOM_SCANNERSKBOM स्कैन के लिए स्कैनर "vuln"severityKBOM स्कैन के लिए गंभीरताएँ "CRITICAL,HIGH"exit_on_vulnerabilityनिष्कर्षों पर विफल करें trueTRIVY_SBOM_SCAN_EXTRA_ARGSKBOM स्कैन के लिए अतिरिक्त आर्ग ""allow_failureविफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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निष्कर्षों पर विफल करें trueTRIVY_SBOM_SCAN_EXTRA_ARGSअतिरिक्त आर्ग ""TRIVY_TIMEOUTटाइमआउट "10m"allow_failureविफलता की अनुमति दें false
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 इनपुट विवरण डिफ़ॉल्ट 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निष्कर्षों पर विफल करें trueTRIVY_IGNORE_UNFIXEDअनफिक्स्ड को अनदेखा करें trueTRIVY_TIMEOUTटाइमआउट "10m"TRIVY_EXTRA_ARGSअतिरिक्त आर्ग ""allow_failureविफलता की अनुमति दें false
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"
TRIVY_SKIP_DIRSनिर्देशिका बहिष्करण ""
allow_failureपाइपलाइन विफल किए बिना विफलता की अनुमति दें false
TRIVY_TIMEOUTटाइमआउट "15m"
TRIVY_K8S_EXTRA_ARGSअतिरिक्त आर्ग ""
TRIVY_REPORT_BASENAMEआर्टिफैक्ट आधार नाम "k8s-scan"
allow_failureविफलता की अनुमति दें false