Bienvenue dans l'application Java intentionnellement vulnérable! Cette documentation complète vous guidera à travers l'installation, le déploiement et les tests de sécurité.
👉 QUICK-START.md - Démarrage en 5 minutes
👉 INSTALLATION.md - Guide d'installation des prérequis
👉 README.md - Documentation complète
| Document | Description | Quand l'utiliser |
|---|---|---|
| README.md | Documentation complète du projet | Première lecture, référence générale |
| QUICK-START.md | Guide de démarrage rapide (5 min) | Démarrage immédiat |
| INSTALLATION.md | Installation des prérequis | Configuration initiale |
| VULNERABILITIES-SUMMARY.md | Détail des vulnérabilités | Comprendre les failles |
| PROJECT-STRUCTURE.md | Structure du projet | Navigation dans le code |
| CLOUD-DEPLOYMENT.md | Déploiement cloud | AWS, Azure, GCP |
- README.md - Section "Tests de Sécurité"
- VULNERABILITIES-SUMMARY.md - Voir les vulnérabilités attendues
- Pointer votre outil vers
src/main/java/
- QUICK-START.md - Déployer l'application
- Pointer votre scanner vers
http://localhost:8080/vulnerable-app - security-tests/test-payloads.md - Payloads de test
- QUICK-START.md - Section "Scans de Sécurité"
- Scanner le fichier
pom.xml - VULNERABILITIES-SUMMARY.md - CVEs attendues
- README.md - Présentation générale
- VULNERABILITIES-SUMMARY.md - Explication détaillée
- security-tests/test-payloads.md - Exercices pratiques
- security-tests/VulnerableApp.postman_collection.json - Tests Postman
- CLOUD-DEPLOYMENT.md - Guide complet
- Choisir votre plateforme (AWS/Azure/GCP)
- Important: Lire la section "Sécurité et Isolation"
- INSTALLATION.md - Installation complète
./verify-setup.sh- Vérifier la configuration- QUICK-START.md - Section "Prérequis"
./build.sh- Compiler./deploy.sh- Déployer- QUICK-START.md - Commandes essentielles
- README.md - Section "Installation et Déploiement"
- security-tests/test-payloads.md - Tous les payloads
- security-tests/VulnerableApp.postman_collection.json - Collection Postman
./security-tests/run-security-scans.sh- Scans automatisés- VULNERABILITIES-SUMMARY.md - Détails techniques
- CLOUD-DEPLOYMENT.md - Guide complet
- AWS ECS/Fargate
- Azure Container Instances
- Google Cloud Run
- Kubernetes (tous providers)
- Fichier: src/main/java/com/vulnerable/app/controller/UserController.java
- Endpoints:
/user/profile/{id},/user/admin/export - Doc: VULNERABILITIES-SUMMARY.md - Section "A01"
- Fichiers: src/main/java/com/vulnerable/app/model/User.java, src/main/resources/data.sql
- Endpoint:
/user/admin/export - Doc: VULNERABILITIES-SUMMARY.md - Section "A02"
- Fichier: src/main/java/com/vulnerable/app/service/UserService.java
- Endpoints:
/user/search,/user/list,/user/comment - Doc: VULNERABILITIES-SUMMARY.md - Section "A03"
- Payloads: security-tests/test-payloads.md
- Fichier: src/main/java/com/vulnerable/app/controller/XmlController.java
- Endpoint:
/xml/parse - Doc: VULNERABILITIES-SUMMARY.md - Section "A04"
- Fichiers: src/main/webapp/WEB-INF/web.xml, src/main/java/com/vulnerable/app/config/WebConfig.java
- Doc: VULNERABILITIES-SUMMARY.md - Section "A05"
- Fichier: pom.xml
- CVEs: Log4Shell (CVE-2021-44228), etc.
- Doc: VULNERABILITIES-SUMMARY.md - Section "A06"
- Fichier: src/main/java/com/vulnerable/app/controller/AuthController.java
- Endpoints:
/auth/login,/auth/register,/auth/reset-password - Doc: VULNERABILITIES-SUMMARY.md - Section "A07"
- Fichier: src/main/java/com/vulnerable/app/controller/DeserializeController.java
- Endpoint:
/deserialize/object - Doc: VULNERABILITIES-SUMMARY.md - Section "A08"
- Toute l'application
- Doc: VULNERABILITIES-SUMMARY.md - Section "A09"
- Fichier: src/main/java/com/vulnerable/app/controller/FileController.java
- Endpoints:
/file/* - Doc: VULNERABILITIES-SUMMARY.md - Section "Bonus"
- security-tests/test-payloads.md - Tous les payloads d'exploitation
- security-tests/VulnerableApp.postman_collection.json - Collection Postman
- QUICK-START.md - Section "Tests Rapides"
./security-tests/run-security-scans.sh- Lance tous les scans./verify-setup.sh- Vérifie la configuration
# Vérifier l'installation
./verify-setup.sh
# Compiler et déployer
./deploy.sh
# Lancer les scans de sécurité
cd security-tests && ./run-security-scans.sh all
# Tests manuels - voir QUICK-START.md- pom.xml - Dépendances Maven (avec CVEs)
- Dockerfile - Image Docker
- docker-compose.yml - Orchestration
- src/main/webapp/WEB-INF/web.xml - Config Servlet
- src/main/java/com/vulnerable/app/controller/ - Tous les contrôleurs
- src/main/java/com/vulnerable/app/service/ - Services métier
- src/main/java/com/vulnerable/app/config/ - Configuration Spring
- src/main/resources/schema.sql - Schéma DB
- src/main/resources/data.sql - Données de test
- build.sh - Compilation
- deploy.sh - Déploiement
- verify-setup.sh - Vérification
- security-tests/run-security-scans.sh - Scans de sécurité
➡️ INSTALLATION.md - Section "Problèmes Courants"
➡️ QUICK-START.md - Section "Dépannage"
➡️ README.md - Section "Installation et Déploiement"
➡️ VULNERABILITIES-SUMMARY.md - Documentation détaillée
➡️ CLOUD-DEPLOYMENT.md - Guides spécifiques
| Je veux... | Aller à... |
|---|---|
| Démarrer en 5 minutes | QUICK-START.md |
| Installer les prérequis | INSTALLATION.md |
| Comprendre le projet | README.md |
| Voir les vulnérabilités | VULNERABILITIES-SUMMARY.md |
| Comprendre la structure | PROJECT-STRUCTURE.md |
| Déployer sur le cloud | CLOUD-DEPLOYMENT.md |
| Tester avec des payloads | security-tests/test-payloads.md |
| Utiliser Postman | security-tests/VulnerableApp.postman_collection.json |
- INSTALLATION.md - Installer les prérequis
./verify-setup.sh- Vérifier la configuration- QUICK-START.md - Déployer rapidement
- Tests basiques - curl ou navigateur
- VULNERABILITIES-SUMMARY.md - Comprendre les vulnérabilités
- security-tests/test-payloads.md - Choisir les payloads
- security-tests/VulnerableApp.postman_collection.json - Tests Postman
./security-tests/run-security-scans.sh all- Scans automatisés
- CLOUD-DEPLOYMENT.md - Choisir la plateforme
- Section "Sécurité et Isolation" - CRITIQUE
- Déployer dans un environnement isolé
- Tester avec vos outils
- Java 11+ installé
- Maven installé
- Docker installé
- Docker Compose installé
-
./verify-setup.shréussi
-
./build.shréussi -
./deploy.shréussi - Application accessible sur http://localhost:8080/vulnerable-app
- Page d'accueil affichée correctement
- SQL Injection testé
- XSS testé
- XXE testé
- Broken Access Control testé
- Path Traversal testé
- Collection Postman importée
- Scans SAST exécutés
- Scans DAST exécutés
- Scans SCA exécutés
- Résultats analysés
Ce projet vous permet de:
- ✅ Tester des outils de sécurité applicative (SAST, DAST, IAST, SCA)
- ✅ Former des équipes à la sécurité applicative
- ✅ Comprendre les vulnérabilités OWASP Top 10
- ✅ Pratiquer l'exploitation de vulnérabilités
- ✅ Évaluer des solutions de sécurité
Prêt à commencer? → QUICK-START.md
Besoin d'aide? → Consultez la section appropriée ci-dessus ou le README.md complet.