Options de Scan Avancées pour l'Évaluation Réseau
Maintenant que nous comprenons les bases de Nmap et comment scanner plusieurs cibles, explorons quelques options de scan avancées qui sont particulièrement utiles pour les évaluations de cybersécurité.
Sélection des Ports et Types de Scan
Par défaut, Nmap scanne les 1000 ports TCP les plus courants. Cependant, vous pouvez personnaliser les ports à scanner.
Scanner des Ports Spécifiques
Pour scanner des ports spécifiques :
nmap -p 22,80,443 localhost
Cette commande scanne uniquement les ports 22, 80 et 443.
Pour scanner une plage de ports :
nmap -p 20-25 localhost
Cela scanne les ports 20 à 25.
Pour scanner les 65535 ports TCP :
nmap -p- localhost
Notez que scanner tous les ports prend beaucoup plus de temps.
Utilisation de Différents Types de Scan
Nmap prend en charge diverses techniques de scan. La valeur par défaut est un scan TCP SYN (-sS), mais cela nécessite des privilèges root. Sans privilèges root, Nmap utilise un scan TCP connect (-sT).
Essayons explicitement un scan TCP connect :
nmap -sT localhost
Pour un scan plus furtif (nécessite des privilèges root) :
sudo nmap -sS localhost
Pour scanner les ports UDP (souvent négligé mais important pour la sécurité) :
sudo nmap -sU -p 53,161,162 localhost
Cela scanne les ports UDP 53 (DNS), 161 et 162 (SNMP).
Détection du Système d'Exploitation et Scan de Version
Pour des informations plus complètes, combinons la détection du système d'exploitation et le scan de version des services :
sudo nmap -sS -O -sV localhost
L'option -O tente d'identifier le système d'exploitation de la cible. Cela fournit des informations précieuses pour les évaluations de sécurité, car différents systèmes d'exploitation peuvent avoir différentes vulnérabilités.
Décomposons ce que fait chaque option :
-sS : Effectue un scan SYN (nécessite root)
-O : Tente d'identifier le système d'exploitation de la cible
-sV : Sonde les ports ouverts pour déterminer les informations de service/version
La sortie inclura des informations détaillées sur le système d'exploitation et les versions des services en cours d'exécution sur la cible.
Utilisation des Scripts Nmap
Nmap inclut un puissant Nmap Scripting Engine (NSE) qui peut effectuer un large éventail de tâches, de la détection de services avancée au scan de vulnérabilités.
Exécutons un script de base qui vérifie les services couramment exposés :
nmap --script=default localhost
Pour un scan plus axé sur la sécurité :
nmap --script=vuln localhost
Cela exécute des scripts de détection de vulnérabilités contre la cible, ce qui peut identifier les problèmes de sécurité courants.
Lors du scan de plusieurs cibles, l'optimisation des performances du scan devient cruciale. Nous avons déjà vu l'option -T, mais il existe des contrôles plus précis disponibles.
nmap -T4 --max-rtt-timeout 200ms --min-rate 1000 127.0.0.1/24
Cette commande :
- Utilise le modèle de timing "agressif" (
-T4)
- Définit le délai d'attente aller-retour maximal à 200 ms
- Définit un débit minimum de 1000 paquets par seconde
Ces paramètres peuvent accélérer considérablement les scans de plusieurs hôtes, bien qu'ils puissent être moins fiables sur les réseaux encombrés ou à latence élevée.
Combinaison de Tout pour un Scan Complet
Combinons plusieurs techniques pour un scan complet de notre réseau local :
sudo nmap -sS -sV -O -p 1-1000 --script=default -T4 -oA comprehensive_scan 127.0.0.1
Cette commande effectue :
- Un scan SYN
- La détection de version des services
- La détection du système d'exploitation
- Scanne les ports 1 à 1000
- Exécute les scripts par défaut
- Utilise un timing agressif
- Enregistre les résultats dans tous les formats avec le préfixe "comprehensive_scan"
Examinons les résultats :
cat comprehensive_scan.nmap
Ce scan complet fournit une mine d'informations sur le système cible, notamment les ports ouverts, les services en cours d'exécution, les versions des services et les vulnérabilités potentielles.
Considérations Éthiques et Bonnes Pratiques
Avant de conclure, il est important de souligner que Nmap ne doit être utilisé que sur les réseaux pour lesquels vous avez une autorisation explicite de scanner. Le scan non autorisé peut être illégal et peut être perçu comme une action hostile.
Quelques bonnes pratiques à suivre :
- Toujours obtenir l'autorisation avant de scanner un réseau ou un système
- Utiliser des scans moins agressifs lorsque cela est possible pour minimiser l'impact sur le réseau
- Être conscient du potentiel de faux positifs et de faux négatifs
- Documenter vos activités de scan pour référence et responsabilité
- Respecter la confidentialité des informations découvertes