Commande Linux nmap
nmap (Network Mapper) est l'un des outils les plus puissants d'exploration réseau et d'audit de sécurité dans les systèmes Linux. Il aide les administrateurs système et les experts en sécurité réseau :
- Découvrir les hôtes actifs sur le réseau
- Scanner les ports ouverts et les services
- Identifier les types et versions des systèmes d'exploitation
- Détecter les vulnérabilités dans les services réseau
En raison de sa flexibilité, de ses fonctionnalités puissantes et de sa nature multiplateforme, nmap est largement utilisé dans l'évaluation de la sécurité des réseaux, l'administration système, la surveillance réseau et d'autres domaines.
Syntaxe de base
Le format de commande de base de nmap est le suivant :
nmap [扫描类型] [选项] {目标规范}
Où :
Scan Type: Spécifie la technique de scan utilisée par nmapOptions: Configure divers paramètres pour le comportement du scanTarget Specification: Peut être une adresse IP, un nom d'hôte ou une plage d'adresses IP
Types de scan courants
Scan TCP SYN (-sS)
La méthode de scan la plus couramment utilisée et par défaut, également appelée « scan semi-ouvert » :
nmap -sS 192.168.1.1
Fonctionnalités :
- Rapide et furtif
- Ne complète pas la poignée de main TCP à trois voies
- Nécessite des privilèges root
Scan TCP Connect (-sT)
Scan TCP connect standard :
nmap -sT 192.168.1.1
Fonctionnalités :
- Ne nécessite pas de privilèges root
- Établit une connexion TCP complète
- Plus lent et facilement détectable
Scan UDP (-sU)
Scanne les ports UDP :
nmap -sU 192.168.1.1
Fonctionnalités :
- Le scan UDP est relativement lent
- De nombreux services UDP ne répondent pas
- Nécessite des privilèges root
Détection du système d'exploitation (-O)
Identifie le système d'exploitation de l'hôte cible :
nmap -O 192.168.1.1
Options et paramètres courants
Spécification des ports (-p)
Scanner des ports spécifiques ou des plages de ports :
Exemples
nmap -p 1-100 192.168.1.1 # Scanner les ports 1-100
nmap -p- 192.168.1.1 # Scanner tous les 65535 ports
Détection de version des services (-sV)
Sonder les informations détaillées de version des services :
nmap -sV 192.168.1.1
Vitesse de scan (-T)
Contrôle la vitesse de scan (0-5, plus le nombre est élevé, plus c'est rapide) :
nmap -T4 192.168.1.1 # 较快的扫描速度
Formats de sortie
Plusieurs options de format de sortie :
Exemples
nmap -oX result.xml 192.168.1.1 # Format XML
nmap -oG result.gnmap 192.168.1.1 # Format grepable
Exemples pratiques
Analyse réseau de base
nmap 192.168.1.1
Exemple de sortie :
Starting Nmap 7.80 ( https://nmap.org ) at 2023-05-01 10:00 UTC Nmap scan report for 192.168.1.1 Host is up (0.045s latency). Not shown: 998 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 443/tcp open https
Analyse complète (OS + version du service)
nmap -A 192.168.1.1
Scanner un sous-réseau entier
nmap 192.168.1.0/24
Lire la liste des cibles depuis un fichier
nmap -iL targets.txt
Interprétation des résultats d'analyse
Signification des états de port dans la sortie nmap :
| State | Description |
|---|---|
| open | Le port est ouvert et une application est en écoute |
| closed | Le port est fermé (l'hôte est joignable, mais aucune application n'est en écoute) |
| filtré | Le port est filtré par un pare-feu/réseau, l'état ne peut pas être déterminé |
| non filtré | Le port est accessible, mais impossible de déterminer s'il est ouvert ou fermé (utilisé pour les scans ACK) |
| open|filtered | Impossible de déterminer si le port est ouvert ou filtré (courant dans les scans UDP) |
| closed|filtered | Impossible de déterminer si le port est fermé ou filtré |
Considérations de sécurité et d'ordre juridique
- Utilisation légale: Ne scannez que les réseaux et systèmes que vous êtes autorisé à scanner
- Obtenir une autorisation: Assurez-vous d'obtenir une autorisation écrite avant toute utilisation sur des réseaux d'entreprise
- Éviter les abus: Le scan rapide à grande échelle peut être considéré comme une attaque
- Respecter la vie privée: Ne scannez pas les ressources réseau qui ne vous appartiennent pas
Techniques avancées
Contournement des pare-feu
Exemples
nmap --data-length 100 192.168.1.1 # Ajouter des données aléatoires
nmap -D RND:5 192.168.1.1 # Scan avec leurres
Script de scan planifié
Exemples
DATE=$(date +%Y%m%d)
nmap -sS -p- -T4 -oN scan_$DATE.log 192.168.1.0/24
Comparaison des résultats
ndiff scan1.xml scan2.xml
FAQ
Q : Pourquoi le scan nmap nécessite-t-il des privilèges root ?R : Certains types de scan (comme les scans SYN) nécessitent une manipulation directe des paquets réseau, ce qui nécessite des privilèges root.
Q : Comment puis-je accélérer le scan ?R : Utilisez-T4ou-T5des options, réduisez le délai d'attente, ou limitez la plage de ports à scanner.
Q : Les scans nmap peuvent-ils être détectés par les pare-feu ?R : Cela dépend du type de scan et de la configuration du pare-feu. Les scans SYN sont plus furtifs que les scans avec connexion complète.
Q : Comment scanner des adresses IPv6 ?R : Utilisez simplement l'adresse IPv6 directement :nmap 2001:db8::1
Ressources d'apprentissage recommandées
- Documentation officielle :
man nmap - Livre officiel Nmap : "Nmap Network Scanning"
- Tutoriels en ligne :https://nmap.org/book/toc.html
- Apprentissage interactif :https://tryhackme.com/room/furthernmap
En maîtrisant nmap, vous acquerrez de puissantes capacités d'exploration réseau, posant ainsi une base solide pour l'administration système et les travaux de sécurité réseau. Il est recommandé de commencer par des analyses simples et d'essayer progressivement des options et techniques plus complexes.
Autres extensions