1- Introduction
Dans le cycle du pentesting, la phase de balayage(scanning) succède à la reconnaissance. Si la reconnaissance définit la « surface », le scanning pénètre dans les « fondations ».
- Criticité : Le scanning transforme des noms de domaines et des plages IP en cibles concrètes (ports ouverts, services, versions). C’est ici que l’on identifie la porte d’entrée.
- Attaques réelles : La plupart des intrusions massives (comme WannaCry) ont commencé par un scan de ports (ex: port 445/SMB) suivi de l’exploitation d’une vulnérabilité non patchée.
- Profils : Les auditeurs de sécurité et les administrateurs systèmes utilisent le balayage pour cartographier le réseau et vérifier l’étanchéité des pare-feux.
2- Fondamentaux
Le scanning repose sur la compréhension des protocoles de communication.
- Les Ports : Canaux de communication (0 à 65535). Les ports « Bien Connus » (0-1023) hébergent les services critiques (HTTP: 80, SSH: 22, FTP: 21).
- Le Three-Way Handshake (TCP) : Le mécanisme de connexion en trois temps :
- SYN (Client ⇒ Serveur : « Je veux me connecter »)
- SYN-ACK (Serveur ⇒ Client : « D’accord, je suis prêt »)
- ACK (Client ⇒ Serveur : « C’est parti ! »)
- UDP : Protocole sans connexion (plus rapide mais moins fiable), souvent utilisé pour le DNS ou le streaming.
- Découverte d’hôtes : Utiliser des requêtes ICMP (Ping) pour savoir si une machine est « vivante ».
3- Fonctionnement
Le scanning se déroule en trois phases méthodiques :
- Vérification de disponibilité : Utilisation de ping ou fping (pour scanner plusieurs cibles en parallèle) afin d’identifier les machines actives.
- Balayage de ports (Port Scanning) : Envoi de paquets spécifiques pour voir comment le serveur répond. Une réponse SYN-ACK signifie que le port est ouvert ; un RST (Reset) signifie qu’il est fermé.
- Analyse de vulnérabilités : Comparaison des versions de services détectées avec des bases de données de failles connues (CVE) ou utilisation de scripts automatisés.
4- Scénarios réels d’attaque
Scénario A : La fuite par les documents (OSINT)
- Cible : Un grand cabinet d’avocats.
- Action : Utilisation de MetaGooFil pour extraire les PDF publics.
- Résultat : Les métadonnées révèlent les noms d’utilisateurs (j.dupont) et les chemins réseaux internes.
Scénario B : Le serveur oublié (Nmap)
- Cible : Une filiale d’un groupe industriel.
- Action : Scan Nmap complet sur une plage IP oubliée.
- Résultat : Détection d’un vieux serveur Telnet (port 23) acceptant les identifiants par défaut (admin/admin).
Scénario C : Détection de faille critique (Nessus)
- Cible : Un serveur web interne.
- Action : Scan de vulnérabilités automatisé avec Nessus.
- Résultat : Identification d’une vulnérabilité « Critical » de type exécution de code à distance (RCE) sur une version obsolète d’Apache Struts.
5- Démonstration pratique (Outils de Kali)
Maîtrise de Nmap
- Scan rapide : nmap 192.168.1.1
- Scan de versions de services et OS : nmap -sV -O 192.168.1.1
- Scan agressif (T4) : nmap -A -T4 192.168.1.1
- Scan furtif (SYN Stealth) : nmap -sS 192.168.1.1 (ne termine pas le handshake pour éviter les logs).
Découverte massive avec Fping
fping -a -g 192.168.1.0/24
Affiche uniquement les hôtes actifs sur tout un sous-réseau.
Analyse automatisée avec Nessus
- Démarrage : Lancer le service via le terminal Kali.
- Configuration : Créer un « New Scan » ⇒ « Basic Network Scan ».
- Analyse : Interprétation du rapport (Rouge: Critique, Orange: Moyen, Bleu: Info).
6- Méthodes de détection
- IDS/IPS : Détectent les « Port Sweeps » (balayages rapides de ports sur plusieurs machines).
- Pare-feux (Firewalls) : Peuvent bloquer les paquets ICMP (Ping) pour rendre les machines « invisibles ».
- SIEM : Analyse les tentatives de connexion répétées sur des ports fermés.
7- Méthodes de protection
- Filtrage de ports : Fermer tout ce qui n’est pas strictement nécessaire (politique « Deny All » par défaut).
- Changer les ports par défaut : Déplacer SSH du port 22 vers un port aléatoire (limite les scripts automatisés).
- Scanner régulièrement : Utiliser Nessus ou OpenVAS en interne pour trouver ses propres failles avant les attaquants.
- Désactiver ICMP : Empêcher le système de répondre au Ping si la visibilité n’est pas requise.
8- Checklist professionnelle
Pour le Pentester
- [ ] Identifier les hôtes actifs via Ping/Fping.
- [ ] Scanner les 1000 ports les plus courants avec Nmap.
- [ ] Identifier les versions exactes des services avec nmap (-sV).
- [ ] Lancer un scan de vulnérabilités (Nessus).
- [ ] Tester les identifiants par défaut sur les services trouvés (Telnet, SSH).
Pour l’Administrateur
- [ ] Appliquer les correctifs de sécurité (Patching).
- [ ] Désactiver les protocoles non sécurisés (Telnet, FTP au profit de SSH, SFTP).
- [ ] Masquer les bannières de service pour ne pas révéler les versions logicielles.
9- Erreurs
- Débutants : Lancer un scan agressif (-T5) qui fait planter les services fragiles de la cible ou se fait détecter immédiatement.
- Entreprises : Ne scanner que le réseau externe en oubliant que l’attaquant peut déjà être à l’intérieur.
- Développeurs : Laisser des ports de « debug » ou de bases de données ouverts sur l’internet public.
10- Résumé exécutif
- Pour le décideur : Le scanning est le check-up santé de votre réseau. Il permet de voir votre infrastructure avec les yeux d’un attaquant.
- Pour le responsable IT : Un port ouvert est une porte déverrouillée. La réduction de la surface d’attaque est la défense la plus rentable.
- Pour le formateur : Insistez sur la différence entre TCP (précis) et UDP (complexe à scanner). Apprenez aux étudiants à lire entre les lignes des résultats Nmap.
⚠️ Éthique & Légalité : Le scanning actif est intrusif. Scanner les ports d’une entreprise sans autorisation peut être considéré comme une tentative d’accès frauduleux.