TP 2 - Scan de Vulnérabilités & Reconnaissance
Auteur : Thibaut Fontaine — Kodetis Institution : Université de La Réunion Durée estimée : 2h
Table des matières
Section intitulée « Table des matières »- Objectifs et Contexte
- Reconnaissance réseau avec Nmap
- Scan de vulnérabilités web avec Nikto
- Cartographie de la surface d’attaque
- Corrélation avec le SIEM
- Questions de validation
1. Objectifs et Contexte
Section intitulée « 1. Objectifs et Contexte »📡 Poste SOC · La Réunion — Acte 3, Prouver : vous sondez votre propre réseau avant l’adversaire. Poste avancé : Dumont d’Urville (Terre Adélie).
🎯 Objectif métier — cartographier la surface d’attaque d’une base TAAF et vérifier que le SIEM voit le scan passer.
🔴 Au fil de l’enquête
Section intitulée « 🔴 Au fil de l’enquête »Toute attaque commence par de la reconnaissance — le jour J, un acteur étatique sondait déjà depuis l’extérieur (recon SIGINT, 14:23Z, #12). Scanner votre propre infra avant lui, c’est voir ce qu’il voit. Et au passage, vérifier que le SIEM monté à l’Acte 2 lève bien la main quand un scan passe.
Contexte
Section intitulée « Contexte »Dans le cadre de l’audit de sécurité commandé par le RSSI des TAAF, vous devez maintenant cartographier la surface d’attaque de l’infrastructure. Avant de pouvoir tester les défenses, il faut connaître précisément les services exposés et leurs vulnérabilités potentielles.
Objectifs pédagogiques
Section intitulée « Objectifs pédagogiques »À l’issue de ce TP, vous serez capable de :
- Réaliser une reconnaissance réseau avec Nmap (scan de ports, détection de services, OS fingerprinting)
- Scanner les vulnérabilités web d’une application avec Nikto
- Produire une cartographie de la surface d’attaque
- Vérifier que le SOC Grafana-natif (Falco, Sigma→LogQL) détecte vos scans
Architecture
Section intitulée « Architecture »graph LR AUDIT["TAAF-AUDIT-001
IP_AUDIT
Nmap, Nikto"] subgraph "Cibles" MONITOR["TAAF-MONITORING-001
IP_VM2
NextCloud · PostgreSQL · Grafana"] SOC["TAAF-SOC-01
IP_SOC
SOC Grafana-natif (Wazuh bonus)"] end AUDIT -->|"Scans"|MONITOR AUDIT -->|"Scans"|SOC MONITOR -.->|"Falco → Loki → détection"|SOC
2. Reconnaissance réseau avec Nmap
Section intitulée « 2. Reconnaissance réseau avec Nmap »2.1 Découverte d’hôtes
Section intitulée « 2.1 Découverte d’hôtes »vagrant ssh audit# Ping sweep pour découvrir les hôtes actifsnmap -sn réseau privé commun
# Résultat attendu : les VMs actives (monitoring, soc, audit)2.2 Scan de ports TCP
Section intitulée « 2.2 Scan de ports TCP »# Scan rapide des 1000 ports les plus courantsnmap -sV IP_VM2
# Scan complet de tous les ports (65535)nmap -sV -p- IP_VM2
# Scan de plusieurs hôtes (SI observé + SOC)nmap -sV IP_VM2 IP_SOC2.3 Détection d’OS et scripts NSE
Section intitulée « 2.3 Détection d’OS et scripts NSE »# Scan agressif avec détection d'OS et scriptssudo nmap -A IP_VM2
# Scripts NSE spécifiques pour la détection de vulnérabilitéssudo nmap --script vuln IP_VM22.4 Export des résultats
Section intitulée « 2.4 Export des résultats »# Export en XML (pour traitement automatisé)nmap -sV -oX ~/nmap-monitoring.xml IP_VM2
# Export en format greppablenmap -sV -oG ~/nmap-monitoring.gnmap IP_VM2
# Export dans tous les formatsnmap -sV -oA ~/nmap-full-scan réseau privé communLivrable : Tableau récapitulatif de tous les ports ouverts et services détectés sur chaque VM.
3. Scan de vulnérabilités web avec Nikto
Section intitulée « 3. Scan de vulnérabilités web avec Nikto »3.1 Scan de Nextcloud
Section intitulée « 3.1 Scan de Nextcloud »Nikto est un scanner de vulnérabilités web qui vérifie les configurations dangereuses, les fichiers exposés et les vulnérabilités connues.
# Scan de NextCloudnikto -h http://IP_VM2:8081
# Scan avec exportnikto -h http://IP_VM2:8081 -o ~/nikto-nextcloud.html -Format html3.2 Scan de Grafana
Section intitulée « 3.2 Scan de Grafana »# Scan de Grafananikto -h http://IP_VM2:3000
# Scan de Prometheusnikto -h http://IP_VM2:90903.3 Analyse des résultats
Section intitulée « 3.3 Analyse des résultats »Nikto identifie plusieurs catégories de problèmes :
- Headers de sécurité manquants (X-Frame-Options, Content-Security-Policy, etc.)
- Fichiers et répertoires exposés (/admin, /.env, /backup, etc.)
- Versions logicielles vulnérables
- Configurations dangereuses (directory listing, méthodes HTTP non sécurisées)
Livrable : Liste des 5 findings Nikto les plus critiques sur Nextcloud avec la remédiation proposée pour chacun.
4. Cartographie de la surface d’attaque
Section intitulée « 4. Cartographie de la surface d’attaque »À partir des résultats des scans Nmap et Nikto, produisez une cartographie complète de la surface d’attaque :
4.1 Matrice de la surface d’attaque
Section intitulée « 4.1 Matrice de la surface d’attaque »Remplissez le tableau suivant pour chaque VM :
| VM | Port | Service | Version | Vulnérabilités identifiées | Risque |
|---|---|---|---|---|---|
| TAAF-MONITORING-001 | 22 | SSH | OpenSSH x.x | … | … |
| TAAF-MONITORING-001 | 8081 | HTTP | NextCloud x.x | … | … |
| … | … | … | … | … | … |
4.2 Diagramme de la surface d’attaque
Section intitulée « 4.2 Diagramme de la surface d’attaque »Créez un diagramme Mermaid représentant les vecteurs d’attaque identifiés :
graph TB ATTACKER["Attaquant"] subgraph "Surface d'attaque TAAF-MONITORING-001" SSH10["SSH :22"] HTTP10["HTTP :8081
NextCloud"] PG10["PostgreSQL :5432"] end ATTACKER --> SSH10 ATTACKER --> HTTP10 ATTACKER --> PG10 style SSH10 fill:#f9f,stroke:#333 style HTTP10 fill:#f96,stroke:#333 style PG10 fill:#ff9,stroke:#333
Livrable : Cartographie complète au format Mermaid + matrice de la surface d’attaque.
5. Corrélation avec le SIEM
Section intitulée « 5. Corrélation avec le SIEM »C’est la partie innovante de ce TP : vérifier que vos scans ont été détectés par le SOC Grafana-natif monté à l’Acte 2.
5.1 Vérification dans le SOC (Grafana / Loki)
Section intitulée « 5.1 Vérification dans le SOC (Grafana / Loki) »Connectez-vous au SOC Grafana-natif (http://IP_SOC:3000), onglet Explore (datasource Loki),
et recherchez les traces de vos scans :
- Événements Falco déclenchés par les connexions entrantes (scan de ports, SSH)
- Détections Suricata / Zeek correspondant au trafic de scan
- Vos règles Sigma → LogQL qui ciblent la reconnaissance réseau
# Exemple : événements réseau autour de l'IP du poste d'audit{job="falco"} |= "IP_AUDIT"5.2 Vérification dans Grafana (Falco)
Section intitulée « 5.2 Vérification dans Grafana (Falco) »Vérifiez aussi dans le Grafana de la VM monitoring (http://IP_VM2:3000) :
- Dashboard “Falco Security Alerts”
- Filtrer sur les événements récents correspondant à vos scans
5.3 Analyse des résultats de détection
Section intitulée « 5.3 Analyse des résultats de détection »| Scan effectué | Détecté par le SOC (Loki) ? | Détecté par Falco ? | Commentaire |
|---|---|---|---|
| Nmap SYN scan | ? | ? | |
| Nmap version scan | ? | ? | |
| Nikto web scan | ? | ? | |
| Nmap OS detection | ? | ? |
Livrable : Tableau de corrélation scans vs détection SOC avec captures d’écran des alertes Grafana/Loki.
6. Questions de validation
Section intitulée « 6. Questions de validation »- [Facile] Combien de ports ouverts avez-vous trouvé sur TAAF-MONITORING-001 ?
- [Facile] Quelle commande Nmap permet de détecter la version des services ?
- [Moyen] Quelle est la différence entre un scan
-sS(SYN) et un scan-sT(TCP connect) ? - [Moyen] Nikto a identifié des headers de sécurité manquants. Lesquels et pourquoi sont-ils importants ?
- [Moyen] Votre scan Nmap a-t-il été détecté par le SOC (Falco/Loki) ? Si non, quelle règle ajouteriez-vous ?
- [Avancé] Comment un attaquant pourrait-il effectuer un scan Nmap plus discret pour éviter la détection ?
- [Avancé] Proposez une règle Sigma (compilée en LogQL) pour détecter les scans Nikto sur NextCloud.
- [Expert] Dans le contexte TAAF (bande passante satellite limitée), comment adapteriez-vous votre stratégie de scan ?
- [Expert] Comment automatiseriez-vous la cartographie de la surface d’attaque pour qu’elle se mette à jour automatiquement ?
- [Expert] Comparez les résultats de Grype (TP1) et Nikto (TP2) sur Nextcloud. Quelles vulnérabilités se recoupent ?