Nmap
Nmap - Analyse Réseau et Techniques d'Évasion IDS/IPS
⚠️ Avertissement : Ce contenu est strictement destiné à un usage éducatif et éthique dans le domaine de la cybersécurité. Toute utilisation illégale ou malveillante est interdite et engage la seule responsabilité de l’utilisateur.
Introduction
Nmap est un outil incontournable pour les administrateurs systèmes, les pentesters et les chercheurs en cybersécurité. Il est utilisé pour :
Explorer des réseaux et identifier des hôtes.
Scanner les ports ouverts et détecter les services.
Auditer les systèmes pour identifier des vulnérabilités.
🚀 Installation de Nmap
Installation sur Linux
1. Installer depuis les dépôts (Debian/Ubuntu)
2. Vérifier l’installation
Si cette commande affiche la version de Nmap, l’installation a réussi.
Installation sur macOS
Installer Homebrew (si non installé) :
Installer Nmap via Homebrew :
Vérifier l’installation :
Installation sur Windows
Téléchargez l'installeur depuis le site officiel : https://nmap.org/download.html.
Installez-le en suivant les instructions à l’écran.
Lancez une invite de commande et testez avec :
🛠️ Types de Scans et Commandes
1. Analyses TCP Basées sur des Indicateurs
Ces analyses manipulent les indicateurs TCP pour provoquer différentes réponses des ports.
Type d'Analyse
Commande
Description
Analyse TCP nulle
sudo nmap -sN MACHINE_IP
N'envoie aucun indicateur TCP (ni SYN, FIN, RST, etc.).
Analyse TCP FIN
sudo nmap -sF MACHINE_IP
Envoie un paquet avec l'indicateur FIN activé.
Scan de Noël TCP
sudo nmap -sX MACHINE_IP
Active les indicateurs FIN, PSH, et URG, comme une guirlande.
Analyse TCP Maimon
sudo nmap -sM MACHINE_IP
Exploite une particularité de certains systèmes avec des paquets TCP FIN/ACK.
Analyse TCP ACK
sudo nmap -sA MACHINE_IP
Utilisée pour vérifier les règles du pare-feu (ports filtrés ou non).
Analyse de fenĂŞtre TCP
sudo nmap -sW MACHINE_IP
Une variante de l'analyse ACK qui mesure la taille de la fenêtre TCP pour déterminer l'état du port.
Analyse TCP personnalisée
sudo nmap --scanflags URGACKPSHRSTSYNFIN MACHINE_IP
Envoie des paquets avec des indicateurs TCP définis manuellement.
2. Techniques d'Usurpation et de Masquage
Option
Commande
Description
IP source usurpée
sudo nmap -S SPOOFED_IP MACHINE_IP
Envoie des paquets avec une adresse IP source usurpée.
Adresse MAC usurpée
sudo nmap --spoof-mac SPOOFED_MAC MACHINE_IP
Change l'adresse MAC pour masquer l'origine des paquets.
Scan de leurre
nmap -D DECOY_IP,ME MACHINE_IP
Ajoute des hôtes leurres pour masquer l'origine réelle du scan.
Scan inactif (zombie)
sudo nmap -sI ZOMBIE_IP MACHINE_IP
Utilise une machine "zombie" pour effectuer le scan en votre nom.
Fragmentation IP
nmap -f
ou nmap -ff
Divise les paquets en fragments pour contourner certains IDS/IPS.
3. Ajout de Données Personnalisées
Option
Commande
Description
Port source personnalisé
--source-port PORT_NUM
Définit un port source spécifique pour le scan.
Données aléatoires
--data-length NUM
Ajoute des données aléatoires pour atteindre une taille spécifique.
🔍 Options et Explications
Options Verbosité et Débogage
Option
Description
-v
Mode verbeux (affiche plus de détails).
-vv
Mode très verbeux.
-d
Mode débogage.
-dd
Mode débogage avancé.
--reason
Explique les conclusions du scan (par exemple : pourquoi un port est considéré comme ouvert).
Options de DĂ©tection
Option
Description
-sV
Détecte les services en cours d'exécution et leurs versions.
-sV --version-light
Utilise les sondes les plus probables pour détecter les versions de service (plus rapide).
-sV --version-all
Essaie toutes les sondes disponibles pour plus de précision (plus lent).
-O
Détecte le système d'exploitation de la cible.
--traceroute
Exécute un traceroute vers la cible pour identifier le chemin réseau.
-A
Combine les options -sV
, -O
, et --traceroute
pour une analyse approfondie.
Options de Sortie
Option
Description
-oN file
Sauvegarde les résultats au format texte classique.
-oG file
Sauvegarde les résultats dans un format compatible grep.
-oX file
Sauvegarde les résultats au format XML.
-oA base
Sauvegarde les résultats dans les trois formats en utilisant "base" comme préfixe pour les fichiers.
🎯 Scripts Nmap (NSE - Nmap Scripting Engine)
Les scripts Nmap ajoutent une couche de fonctionnalités avancées pour l'analyse des vulnérabilités, l'audit de sécurité, et plus encore.
Catégories de Scripts
Catégorie
Description
auth
Scripts liés à l'authentification (exemple : tests de connexion).
discovery
Découverte des informations accessibles (DNS, base de données, etc.).
brute
Effectue des attaques par force brute.
vuln
Vérifie la présence de vulnérabilités connues.
exploit
Exploite les vulnérabilités pour obtenir un accès ou des informations sensibles.
dos
Détecte les services vulnérables aux attaques par déni de service (DoS).
malware
Recherche des traces de logiciels malveillants (backdoors, etc.).
safe
Scripts sûrs à exécuter sans risque de planter la cible.
Utilisation des Scripts
Commande
Description
--script=script_name
Lance un script spécifique.
--script="default"
Lance les scripts par défaut (équivalent à -sC
).
--script=vuln
Exécute tous les scripts liés aux vulnérabilités.
--script="vuln or brute"
Exécute les scripts des catégories "vuln" et "brute".
Exemples Pratiques
Vérifier les Vulnérabilités SMB :
Tester les Logins FTP avec Force Brute :
DĂ©couvrir les Services Web :
📋 Exemples Combinés
1. Analyse Complète d'un Hôte
Commande :
Explication :
Combine la détection de version, de système d'exploitation, et un traceroute sur tous les ports.
2. Analyse Silencieuse avec Fragmentation
Commande :
Explication :
Utilise des paquets fragmentés (
-f
) pour contourner les IDS, une analyse SYN (-sS
) avec une vitesse lente (-T2
).
3. Sauvegarder les RĂ©sultats dans Plusieurs Formats
Commande :
Explication :
Sauvegarde les résultats en formats texte, XML, et grepable sous le préfixe "scan_results".
🛠️ Techniques d'Évasion IDS/IPS avec Nmap
Les IDS/IPS analysent le trafic réseau pour détecter des anomalies ou des signatures spécifiques. Voici comment réduire vos chances de détection :
1. Modifier la Vitesse des Scans
Réduisez la vitesse pour éviter de générer un trafic suspect :
2. Fragmentation des Paquets
Divisez les paquets pour contourner les IDS :
3. Usurpation et Masquage
Usurper une adresse IP source :
Ajouter des leurres pour masquer votre IP réelle :
4. Connexions Randomisées
Randomisez l'ordre des hôtes scannés :
Utilisez un port source spécifique pour contourner des pare-feux :
5. Limiter la Fréquence
Réduisez le nombre de paquets envoyés par seconde :
6. Utiliser des Proxies
Acheminer vos scans via Tor ou un proxy :
🛠️ Techniques d'Évasion IDS/IPS avec Ncat
1. Usurpation de Ports Sources
Envoyez des connexions à partir de ports privilégiés pour contourner les pare-feux :
2. Fragmentation et Pause
Ajoutez une pause entre les paquets :
3. Tunnelisation TLS
Chiffrez vos connexions pour masquer le contenu du trafic :
🔍 Sauvegarder et Analyser les Résultats
1. Sauvegarder les RĂ©sultats
Sauvegarde texte :
Tous les formats (texte, XML, grepable) :
2. Analyse du Trafic
Observez vos propres paquets avec tcpdump
ou Wireshark
:
đź“‹ Combinaison de Techniques
Voici une commande combinée pour échapper aux IDS :
đź“– Bonnes Pratiques
Obtenez des autorisations légales :
Effectuez vos scans uniquement sur des réseaux où vous avez les permissions.
Commencez par des analyses discrètes :
Si nécessaire, utilisez des scans masqués (
-f
,-T2
), surtout dans des environnements sensibles.
Analyser les résultats avec des outils externes :
Exportez vos résultats au format XML pour les utiliser avec des outils comme Metasploit ou OpenVAS.
Liens utiles :
Dernière mise à jour