Nota
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriverti a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Integra il proxy Zed Attack con Oracle Cloud Infrastructure DevOps Build Pipeline
Introduzione
Il servizio DevOps di Oracle Cloud Infrastructure (OCI) è una piattaforma completa di Continuous Integration/Continuous Delivery (CI/CD) che consente agli sviluppatori di semplificare e automatizzare il ciclo di vita dello sviluppo software. Il servizio DevOps OCI consente a sviluppatori e operatori di sviluppare, creare, testare e distribuire in modo collaborativo software. DevSecOps è la procedura con cui vengono aggiunti test di sicurezza nel processo di automazione dello sviluppo e della distribuzione del software.
Zed Attack Proxy (ZAP), precedentemente noto come Open Web Application Security Project Zed Attack Proxy (OWASP ZAP), è uno scanner di sicurezza Web open source. Aiuta sviluppatori e professionisti della sicurezza a rilevare e trovare vulnerabilità nelle applicazioni Web. ZAP fornirà un report che riporta le vulnerabilità e le avvertenze rilevate durante la scansione delle vulnerabilità.
Obiettivi
- Integra ZAP con la pipeline di build DevOps OCI.
Prerequisiti
- Crea e imposta una pipeline per creare e distribuire un'applicazione. Per ulteriori informazioni, vedere Distribuire l'applicazione utilizzando la pipeline CI/CD DevOps OCI in Kubernetes.
Task 1: impostare la fase di creazione per la scansione ZAP
-
Creare un file delle specifiche di build utilizzando la configurazione riportata di seguito per lo stadio di integrazione ZAP denominato
zap_build_spec.yaml
. Sostituireapplication-url
nel comando delle specifiche di build con l'URL dell'applicazione distribuita. È inoltre possibile utilizzare i parametri di generazione per renderli più dinamici. Caricare il file delle specifiche di build nel repository.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
-
Aggiungere la fase di build per l'integrazione ZAP.
-
Fare clic su Aggiungi una fase nella pipeline di build e scegliere Gestisci fase build.
-
Immettere
zap_build_spec.yaml
in Percorso file specifiche build. -
Immettere il nome della fase e aggiungere il repository di codici principale.
-
Selezionare il tipo di connessione come repository di codici OCI e selezionare il repository di codici in cui è presente
zap_build_spec.yaml
.
-
-
Aggiungi artifact.
-
Fare clic su Aggiungi artifact.
-
Specificare il tipo come Artifact generale.
-
Selezionare il repository del registro artifact in cui verrà memorizzato il report ZAP.
-
Selezionare Artifact dal repository.
-
Fare clic su Aggiungi.
-
-
Questa fase eseguirà il PUSH del report ZAP nel registro artifact. Nella pipeline di build creata in precedenza, aggiungere un'altra fase di tipo Distribuisci artifact.
-
Fare clic su Seleziona artifact e selezionare l'artifact creato.
-
Assegnare il nome artifact configurazione/risultato build come zap-report perché questo nome artifact è stato menzionato nel file
zap_build_spec.yaml
. -
Fare clic su Aggiungi.
-
-
La pipeline di build è mostrata nell'immagine riportata di seguito. Fare clic su Avvia esecuzione manuale per eseguire la pipeline.
-
Dopo la corretta esecuzione della pipeline, è possibile scaricare il report ZAP dal registro artifact.
Passi successivi
Il report ZAP generato aiuterà a comprendere le vulnerabilità e le avvertenze che si trovano durante la scansione ZAP. Questa configurazione della specifica di build sta eseguendo una scansione baseline. È anche possibile eseguire ZAP - scansione completa, che esegue "attacchi" effettivi e può essere eseguito per un lungo periodo di tempo.
La scansione ZAP può essere eseguita prima in un ambiente di test. Se non sono state trovate vulnerabilità nell'ambiente di test, è possibile eseguire il rollback dell'applicazione in produzione.
Collegamenti correlati
Conferme
- Autore: Nikhil Khandelwal (Enterprise Cloud Architect)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti gratuiti sulla formazione su Oracle Learning YouTube channel. Inoltre, visita education.oracle.com/learning-explorer per diventare Oracle Learning Explorer.
Per la documentazione del prodotto, visitare 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.