Hinweis:
- Dieses Tutorial erfordert Zugriff auf Oracle Cloud. Informationen zum Registrieren eines kostenlosen Accounts finden Sie unter Erste Schritte mit Oracle Cloud Infrastructure Free Tier.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Wenn Sie Ihre Übung abgeschlossen haben, ersetzen Sie diese Werte durch spezifische Werte für Ihre Cloud-Umgebung.
Zed Attack Proxy in Oracle Cloud Infrastructure DevOps Build Pipeline integrieren
Einführung
Der Oracle Cloud Infrastructure (OCI) DevOps-Service ist eine vollständige Continuous Integration/Continuous Delivery-(CI/CD-)Plattform für Entwickler, mit der sie ihren Softwareentwicklungslebenszyklus vereinfachen und automatisieren können. Mit dem OCI DevOps-Service können Entwickler und Operatoren gemeinsam Software entwickeln, erstellen, testen und bereitstellen. DevSecOps ist die Übung, bei der Sicherheitstests im Automatisierungsprozess der Softwareentwicklung und -bereitstellung hinzugefügt werden.
Zed Attack Proxy (ZAP), früher als Open Web Application Security Project Zed Attack Proxy (OWASP ZAP) bekannt, ist ein Open-Source-Sicherheitsscanner für Webanwendungen. Es hilft Entwicklern und Sicherheitsexperten, Schwachstellen in Webanwendungen zu erkennen und zu finden. ZAP liefert einen Bericht, der über die Sicherheitslücken und Warnungen informiert, die beim Scannen von Sicherheitslücken gefunden wurden.
Ziele
- Integrieren Sie ZAP in die OCI DevOps Build Pipeline.
Voraussetzungen
- Erstellen und richten Sie eine Pipeline zum Erstellen und Bereitstellen einer Anwendung ein. Weitere Informationen finden Sie unter Anwendung mit OCI DevOps CI/CD-Pipeline auf Kubernetes bereitstellen.
Aufgabe 1: Erstellungsphase für ZAP-Scan einrichten
-
Erstellen Sie eine Build-Spezifikationsdatei mit der folgenden Konfiguration für die ZAP-Integrationsphase namens
zap_build_spec.yaml
. Ersetzen Sieapplication-url
im Build-Spezifikationsbefehl durch die bereitgestellte Anwendungs-URL. Sie können die Erstellungsparameter auch verwenden, um sie dynamischer zu gestalten. Laden Sie die Build-Spezifikationsdatei in das Repository hoch.version: 0.1 component: build timeoutInSeconds: 10000 runAs: root shell: bash steps: - type: Command timeoutInSeconds: 1200 name: "Zap Scan" command: | docker run -v /docker-vol/agent-dir/ext/${OCI_PRIMARY_SOURCE_NAME}:/zap/wrk/:rw --user root ghcr.io/zaproxy/zaproxy:stable zap-baseline.py -t <application-url> -g gen.conf -d -r report.xml outputArtifacts: - name: zap-report type: BINARY location: ${OCI_PRIMARY_SOURCE_DIR}/report.xml
-
Build-Phase für ZAP-Integration hinzufügen.
-
Klicken Sie unter der Build-Pipeline auf Phase hinzufügen, und wählen Sie Build-Phase verwalten aus.
-
Geben Sie unter Pfad der Build-Spezifikationsdatei
zap_build_spec.yaml
ein. -
Geben Sie den Phasennamen ein, und fügen Sie das primäre Code-Repository hinzu.
-
Wählen Sie den Verbindungstyp als OCI-Code-Repository aus, und wählen Sie das Code-Repository aus, in dem
zap_build_spec.yaml
vorhanden ist.
-
-
Artefakt hinzufügen.
-
Klicken Sie auf Artefakt hinzufügen.
-
Geben Sie als Typ Allgemeines Artefakt an.
-
Wählen Sie das Artefakt-Registry-Repository aus, in dem der ZAP-Bericht gespeichert wird.
-
Wählen Sie Artefakt im Repository aus.
-
Klicken Sie auf Hinzufügen.
-
-
In dieser Phase wird der ZAP-Bericht in die Artefakt-Registry übertragen. Fügen Sie in der zuvor erstellten Build-Pipeline eine weitere Phase des Typs Artefakte übermitteln hinzu.
-
Klicken Sie auf Artefakte auswählen, und wählen Sie das erstellte Artefakt aus.
-
Geben Sie Konfigurations-/Ergebnisartefaktnamen erstellen als zap-report an, da dieser Artefaktname in der Datei
zap_build_spec.yaml
angegeben wurde. -
Klicken Sie auf Hinzufügen.
-
-
Die Build-Pipeline wird im folgenden Image angezeigt. Klicken Sie auf Manuelle Ausführung starten, um die Pipeline auszuführen.
-
Nachdem die Pipeline erfolgreich ausgeführt wurde, können Sie den ZAP-Bericht aus der Artefakt-Registry herunterladen.
Nächste Schritte
Der generierte ZAP-Bericht hilft beim Verständnis der Sicherheitslücken und Warnungen, die während des ZAP-Scans gefunden werden. Diese Build-Spezifikationskonfiguration führt einen Baseline-Scan durch. Sie können auch den ZAP - Full Scan ausführen, der tatsächliche "Angriffe" ausführt und möglicherweise über einen langen Zeitraum ausgeführt werden kann.
ZAP-Scan kann zuerst in einer Testumgebung durchgeführt werden. Wenn keine Sicherheitslücken in der Testumgebung gefunden werden, kann die Anwendung in "Produktion" eingeführt werden.
Verwandte Links
Danksagungen
- Autor: Nikhil Khandelwal (Enterprise Cloud Architect)
Weitere Lernressourcen
Lernen Sie andere Übungen auf docs.oracle.com/learn kennen, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube Channel zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Produktdokumentation finden Sie im Oracle Help Center.
Integrate Zed Attack Proxy with Oracle Cloud Infrastructure DevOps Build Pipeline
F89773-01
November 2023
Copyright © 2023, Oracle and/or its affiliates.