Remarques :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction au niveau gratuit d'Oracle Cloud Infrastructure.
- Il utilise des exemples de valeur pour les informations d'identification, la location et les compartiments Oracle Cloud Infrastructure. A la fin de l'exercice, remplacez ces valeurs par des valeurs propres à votre environnement cloud.
Intégrer le proxy Zed Attack au pipeline de build Oracle Cloud Infrastructure DevOps
Introduction
Le service DevOps d'Oracle Cloud Infrastructure (OCI) est une plate-forme complète d'intégration continue et de déploiement continu qui permet aux développeurs de simplifier et d'automatiser le cycle de vie de leur développement logiciel. Le service OCI DevOps permet aux développeurs et aux opérateurs de développer, de créer, de tester et de déployer des logiciels en collaboration. DevSecOps est l'exercice dans lequel les tests de sécurité sont ajoutés au processus d'automatisation du développement et du déploiement de logiciels.
Zed Attack Proxy (ZAP), anciennement appelé Open Web Application Security Project Zed Attack Proxy (OWASP ZAP), est un scanner de sécurité d'application Web open source. Il aide les développeurs et les professionnels de la sécurité à détecter et à trouver des vulnérabilités dans les applications Web. ZAP fournira un rapport qui indique les vulnérabilités et les avertissements trouvés lors de l'analyse des vulnérabilités.
Objectifs
- Intégrez ZAP au pipeline de build OCI DevOps.
Prérequis
- Créez et configurez un pipeline pour créer et déployer une application. Pour plus d'informations, reportez-vous à Déploiement de votre application à l'aide du pipeline d'intégration continue et de déploiement continu OCI DevOps sur Kubernetes.
Tâche 1 : configurer la phase de build pour l'analyse ZAP
-
Créez un fichier de spécification de build à l'aide de la configuration ci-dessous pour l'étape d'intégration ZAP nommée
zap_build_spec.yaml
. Remplacezapplication-url
dans la commande de spécification de build par l'URL de l'application déployée. Vous pouvez également utiliser les paramètres de création pour les rendre plus dynamiques. Téléchargez le fichier de spécification de build vers le référentiel.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
-
Ajouter une phase de création pour l'intégration ZAP.
-
Cliquez sur Ajouter une phase sous le pipeline de build et choisissez Gérer la phase de build.
-
Entrez
zap_build_spec.yaml
dans Chemin du fichier de spécification de création. -
Entrez le nom de la phase et ajoutez le référentiel de code principal.
-
Sélectionnez le type de connexion en tant que référentiel de code OCI et sélectionnez le référentiel de code dans lequel
zap_build_spec.yaml
est présent.
-
-
Ajouter un artefact.
-
Cliquez sur Ajouter un artefact.
-
Indiquez le type Artefact général.
-
Sélectionnez le référentiel de registre d'artefacts dans lequel le rapport ZAP sera stocké.
-
Sélectionnez Artefact dans le référentiel.
-
Cliquez sur Ajouter.
-
-
Cette phase propage le rapport ZAP vers le registre d'artefacts. Dans le pipeline de build créé précédemment, ajoutez une autre phase de type Fournir des artefacts.
-
Cliquez sur Sélectionner des artefacts et sélectionnez l'artefact créé.
-
Attribuez à Build config/result artefact name le nom zap-report, car nous avons mentionné ce nom d'artefact dans notre fichier
zap_build_spec.yaml
. -
Cliquez sur Ajouter.
-
-
Le pipeline de build est affiché dans l'image suivante. Cliquez sur Démarrer l'exécution manuelle pour exécuter le pipeline.
-
Une fois le pipeline exécuté, vous pouvez télécharger le rapport ZAP à partir du registre d'artefacts.
Etapes suivantes
Le rapport ZAP généré aidera à comprendre les vulnérabilités et les avertissements trouvés lors de l'analyse ZAP. Cette configuration de spécification de build effectue une analyse de référence. Vous pouvez également effectuer l'analyse complète ZAP, qui effectue des "attaques" réelles et peut potentiellement s'exécuter pendant une longue période.
L'analyse ZAP peut être effectuée en premier sur un environnement de test. Si aucune vulnérabilité n'est trouvée dans l'environnement de test, l'application peut être déployée en production.
Liens connexes
Remerciements
- Auteur : Nikhil Khandelwal (Enterprise Cloud Architect)
Ressources de formation supplémentaires
Parcourez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, rendez-vous sur education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir de la documentation sur le produit, visitez 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.