Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Outils open source — Gratuits, portables, hors ligne
Caractéristiques communes
100 % hors ligne — aucune donnée transmise
Portables — un seul fichier exécutable
Gratuits — MIT ou GPL v3
Code source ouvert sur GitHub
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Academy Contact

OWASP ZAP

devsecops

Définition

OWASP ZAP (Zed Attack Proxy), rebaptisé OWASP ZAP en 2023 et maintenu par la fondation OWASP (Open Web Application Security Project), est l'outil de test de sécurité applicatif dynamique (DAST) open source le plus utilisé au monde. Fonctionnant comme un proxy intercepteur, ZAP se positionne entre le navigateur ou le client HTTP et l'application testée, permettant d'inspecter et de modifier les requêtes/réponses en temps réel. ZAP offre deux modes d'utilisation complémentaires. En mode manuel, l'analyste utilise l'interface graphique Swing pour explorer l'application, inspecter les requêtes, modifier les paramètres, et déclencher des scans ciblés. En mode automatisé, ZAP expose une API REST/daemon qui permet son intégration dans les pipelines CI/CD pour des scans automatiques sans interface graphique. Ce second mode est particulièrement adapté au DevSecOps pour intégrer des tests DAST dans les workflows GitHub Actions, Jenkins, ou GitLab CI. Les fonctionnalités principales de ZAP incluent le spider (exploration automatique des pages et des liens), le scanner actif (envoi de payloads malveillants sur tous les paramètres détectés pour tester les vulnérabilités OWASP Top 10), le scanner passif (analyse des requêtes sans envoi de payloads, safe pour les environnements de production), le fuzzer (tests de robustesse avec des entrées malformées), et l'intercepteur de requêtes pour les tests manuels. ZAP supporte les applications web modernes via Selenium et des scripts HUD (Heads Up Display) permettant de scanner des SPAs (Single Page Applications) avec interactions JavaScript complexes. Des extensions communautaires (add-ons) enrichissent les fonctionnalités : scanner d'API basé sur OpenAPI/Swagger, détection de secrets exposés, scan GraphQL, et intégration avec des outils de CI/CD. La communauté OWASP maintient des images Docker officielles (owasp/zap2docker-stable, owasp/zap2docker-weekly) facilitant le déploiement en CI/CD. Des packs d'automatisation (Automation Framework) permettent de définir des scénarios de scan complets en YAML, remplaçant les scripts Groovy/Python de l'ancienne API.

Architecture proxy et modes de scan

ZAP fonctionne comme un proxy man-in-the-middle configurable. Le navigateur ou client HTTP est configuré pour router le trafic via ZAP (par défaut sur localhost:8080). ZAP maintient un "Sites Tree" de toutes les URLs visitées et leurs paramètres. Le scanner passif analyse le trafic sans l'altérer (sûr en production), tandis que le scanner actif injecte des payloads sur tous les paramètres découverts (à n'utiliser que sur des environnements de test).

Intégration CI/CD avec le mode daemon

En mode CI/CD, ZAP est lancé en daemon (zap.sh -daemon) et contrôlé via son API REST. Les actions GitHub officielles (zaproxy/action-full-scan, zaproxy/action-api-scan) facilitent l'intégration en quelques lignes YAML. L'Automation Framework (fichier plan.yaml) décrit les étapes de scan (spider, active-scan, report) de manière déclarative. Les rapports peuvent être générés en HTML, JSON, ou XML pour intégration dans les dashboards de sécurité.

Tests d'API avec ZAP et OpenAPI

ZAP peut importer une spécification OpenAPI/Swagger pour cartographier automatiquement tous les endpoints de l'API et les scanner. L'add-on OpenAPI génère les requêtes de test pour chaque endpoint avec les paramètres définis dans la spec. Pour les APIs authentifiées, ZAP supporte les scripts de gestion de session (JWT, OAuth2, cookie) permettant des scans authentifiés complets. Cette capacité fait de ZAP un outil de choix pour les tests de sécurité d'API dans les pipelines CI.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis