Konfigurieren von Checkov-Scans

Übersicht

Checkov ist ein Tool zur statischen Codeanalyse für Infrastructure-as-Code ( IaC ). Es überprüft Cloud-Konfigurationen auf Sicherheits- und Compliance-Fehler. Dies gewährleistet:

  • Infrastructure-as-Code entspricht den Best Practices für Sicherheit.
  • Sucht nach Problemen wie offenen Ports, fest codierten Geheimnissen, übermäßigen Berechtigungen und unsicheren Konfigurationen.
  • Funktioniert auf allen Cloud-Plattformen und Container-Orchestrierungssystemen und hilft dabei, Sicherheitsrisiken beim Bereitstellungsprozess zu vermeiden.

Dieser Scan ist Teil der Phase der Konformitätsprüfungen, die in den Pipelines PR (App-Preview), CI und CC verfügbar ist.

Aktivieren und Konfigurieren von Checkov-Scans

Sie können Checkov-Scans mit zwei verschiedenen Frameworks durchführen:

  • Terraform-Plan: Führen Sie einen Checkov-Scan für einen berechneten Terraform-Plan durch. Um dies zu ermöglichen, fügen Sie als opt-in-checkov Texteigenschaft zu Ihren Pipeline- oder Trigger-Eigenschaften hinzu, wobei der Wert auf eine nicht leere Zeichenfolge gesetzt sein muss (außer 0).
  • Kubernetes: Führen Sie einen Checkov-Scan der Manifestdateien unter Kubernetes durch. Um dies zu ermöglichen, fügen Sie als opt-in-checkov-kubernetes Texteigenschaft zu Ihren Pipeline- oder Trigger-Eigenschaften hinzu, wobei der Wert auf eine nicht leere Zeichenfolge gesetzt sein muss (außer 0). Hinweis: Da der Code Risk Analyzer (CRA) nicht mehr unterstützt wird, ist der Checkov- Kubernetes-Scan eine Alternative, cra-deploy-analysis die entsprechende Nachweise com.ibm.code_cis_check liefert.

Durch die Aktivierung dieser Funktionen werden die folgenden Skripte aus der Phase der Konformitätsprüfungen ausgeführt:

Diese Skripte installieren Checkov automatisch, falls es in der Umgebung noch nicht vorhanden ist.

Checkov-Parameter

Die in der folgenden Tabelle aufgeführten Eigenschaften und Geheimnisse der Pipeline-Umgebung dienen zur Anpassung der Checkov-Scans.

Checkov-Parameter
Parametername Beschreibung
checkov-args Zusätzliche Argumente, die direkt an den Befehl checkov übergeben werden.
tf-dir Speicherort oder Pfad im Quell-Repository, an dem main.tf sich befindet. (Standardmäßig .)
checkov-version Checkov-Version, die installiert werden muss, falls sie in der Umgebung noch nicht vorhanden ist. (Standardmäßig wird die neueste Version installiert)
checkov-prisma-api-url Die Prisma Cloud API- URL Muss eine *.prismacloud.io, *.prismacloud.cn oder Domain *.bridgecrew.cloud sein.
checkov-bc-api-key Bridgecrew-API-Schlüssel oder Prisma Cloud-Zugriffsschlüssel. Rufen Sie diese mit get_secret. ab.

Checkov-Nachweise und Anhänge

Die DevSecOps-Pipeline lädt Nachweise in den Locker hoch und fügt die Nachweise in die Nachweisübersicht für Änderungsanträge ein.

Checkov Terraform Plan Evidence

Die folgende Tabelle enthält die Details zu den Nachweisen für den Terraform Plan checkov-Scan.

Überprüfung der Felder und Werte im Terraform-Plan von Checkov
Feld Wert
tool type checkov
evidence type com.ibm.code_vulnerability_scan
asset type repo
attachments Checkov-Ergebnisse als JSON-Datei
Checkov- Kubernetes-Evidence

Die folgende Tabelle enthält die Details zu den Nachweisen für den Kubernetes-Checkov-Scan.

Checkov- Kubernetes-Beweisfelder und -Werte
Feld Wert
tool type checkov
evidence type com.ibm.code_cis_check
asset type repo
attachments Checkov-Ergebnisse als JSON-Datei

Auf Ihre Scan-Ergebnisse zugreifen

Sie können wie folgt auf Ihre Scan-Ergebnisse zugreifen: