CLR-6 · Lab pratique · Facile ·environ 40 min
Monte ton propre terrain d’entraînement
Déploie sur ta machine une app web volontairement vulnérable avec Docker, lance un scan de base automatisé avec OWASP ZAP et apprends à lire le rapport. Les deux gestes quotidiens derrière l’évaluation et la détection.
Ce navigateur bloque l’enregistrement : votre progression sur ce lab ne sera pas conservée.
La mission
Arrivé au CLR-6, le plus sûr moyen de continuer à progresser, c’est de s’entraîner sur une cible qu’on contrôle. Ce lab en construit une : une app web volontairement vulnérable qui tourne uniquement sur ta machine, et un scanner automatisé pour la sonder. Aucun serveur partagé, aucun risque pour les autres.
Règles d’engagement. À faire uniquement sur un ordinateur qui t’appartient. Ne pointe jamais Juice Shop ni le scanner vers un système que tu ne possèdes pas et pour lequel tu n’as pas d’autorisation explicite. Le montage garde l’app liée à
localhost.
Il te faut : Docker (Docker Desktop sur Windows/macOS, ou Docker Engine sur Linux).
1. Récupère les fichiers
docker-compose.yml ·
README.md
Le fichier compose tient en quelques lignes :
services:
juice-shop:
image: bkimminich/juice-shop:v20.3.0
container_name: zenaro-juice-shop
ports:
- "127.0.0.1:3000:3000"
restart: unless-stopped
2. Démarre l’app
Dans le dossier qui contient le fichier compose :
docker compose up
Attends Server listening on port 3000, puis ouvre-la dans ton navigateur. Ta première tâche dans Juice Shop est de trouver son Score Board caché, qui liste les défis d’entraînement.
3. Scanne-la avec OWASP ZAP
Lance le scan baseline prêt à l’emploi (passif et rapide) depuis l’image ZAP :
docker run --rm --network host ghcr.io/zaproxy/zaproxy:stable \
zap-baseline.py -t http://localhost:3000
Sur macOS/Windows, remplace la cible par http://host.docker.internal:3000. Le scan se termine par une ligne du type FAIL: 0 WARN: 4 IGNORE: 0 PASS: 22, et chaque constat au-dessus nomme une règle et les URL concernées.
On répond aux quatre questions ci-dessous en faisant les trois étapes. Le README.md donne tous les détails et la commande de nettoyage.
Questions
Après
docker compose up, sur quel port TCP Juice Shop écoute-t-il (et que tu ouvres dans le navigateur) ?25 XPOWASP ZAP fournit plusieurs scans prêts à l’emploi. Quel nom de script lance le scan *baseline* (rapide et passif) depuis l’image Docker de ZAP ?25 XP
Juice Shop a une page cachée qui suit les défis d’entraînement. Quelle est sa route (la partie de l’URL après l’hôte) ?25 XP
Le scan baseline de ZAP se termine par un résumé de quatre compteurs (
FAIL,WARN,IGNORE,PASS). Lequel marque une règle qui a dépassé le seuil configuré et à examiner en premier ?25 XP
Solution détaillée
La solution détaillée s’ouvre quand toutes les questions sont résolues.