Aide-mémoire Nmap

Référence complète des commandes pour le scan réseau

De la découverte d'hôtes de base aux scripts NSE avancés — toutes les commandes dont vous avez besoin

📅 Mis à jour : décembre 2024⏱️ 20 min de lecture🔧 Nmap 7.94+

📑 Navigation rapide

Scan basique Découverte d'hôtes Scan de ports Détection de services Détection d'OS Scripts NSE Formats de sortie Timing & performance Techniques d'évasion

Qu'est-ce que Nmap ?

Nmap (Network Mapper) est un outil gratuit et open source pour la découverte réseau et l'audit de sécurité. Créé par Gordon Lyon (Fyodor) en 1997, il est devenu le standard de l'industrie pour le scan réseau, utilisé par les professionnels de la sécurité, les administrateurs système et les pentesters dans le monde entier.

Nmap utilise des paquets IP bruts pour déterminer les hôtes disponibles, les services, les systèmes d'exploitation, les configurations de pare-feu, et des dizaines d'autres caractéristiques. Il fonctionne sur tous les principaux systèmes d'exploitation et les packages officiels sont disponibles sur nmap.org.

📦 Installation

Debian/Ubuntu/Kali

sudo apt install nmap

RHEL/CentOS/Fedora

sudo dnf install nmap

macOS (Homebrew)

brew install nmap

Windows

Download from nmap.org/download

🎯 Commandes de scan basiques

Commande Description
nmap <target> Scanner un hôte unique (défaut : 1000 ports principaux)
nmap 192.168.1.1-254 Scanner une plage d'IP
nmap 192.168.1.0/24 Scanner un sous-réseau entier (notation CIDR)
nmap -iL targets.txt Scanner les cibles depuis un fichier
nmap --exclude 192.168.1.1 Exclure des hôtes spécifiques du scan
nmap --excludefile exclude.txt Exclure les hôtes listés dans un fichier

🔎 Découverte d'hôtes (scan ping)

Option Description Exemple
-sn Scan ping uniquement (sans scan de ports) nmap -sn 192.168.1.0/24
-Pn Ignorer la découverte d'hôtes (traiter tous comme en ligne) nmap -Pn <target>
-PS Ping TCP SYN sur les ports spécifiés nmap -PS22,80,443 <target>
-PA Ping TCP ACK nmap -PA80,443 <target>
-PU Ping UDP nmap -PU53 <target>
-PE Ping ICMP echo nmap -PE <target>
-PP Ping ICMP timestamp nmap -PP <target>
-PM Ping ICMP netmask nmap -PM <target>
-PR Ping ARP (réseau local uniquement) nmap -PR 192.168.1.0/24

💡 Conseil pro

Utilisez -sn pour des balayages réseau rapides sans déclencher la détection de scan de ports. Combinez avec -PR sur les réseaux locaux pour une découverte ARP plus rapide.

🔌 Techniques de scan de ports

Option Type de scan Description
-sS TCP SYN (furtif) Scan semi-ouvert, rapide et furtif (nécessite root)
-sT TCP Connect Connexion TCP complète (root non requis)
-sU Scan UDP Scanner les ports UDP (plus lent que TCP)
-sA TCP ACK Cartographier les règles de pare-feu (filtré vs non filtré)
-sW TCP Window Comme ACK mais détecte les ports ouverts via la taille de fenêtre
-sN TCP Null Aucun flag défini (évite certains pare-feu)
-sF TCP FIN Seul le flag FIN défini
-sX TCP Xmas Flags FIN, PSH, URG définis
-sM TCP Maimon Sonde FIN/ACK
-sI Idle/Zombie Scan furtif utilisant un hôte zombie

🎚️ Spécification des ports

Option Description Exemple
-p 80 Scanner un port unique nmap -p 80 <target>
-p 80,443,8080 Scanner des ports spécifiques nmap -p 80,443,8080 <target>
-p 1-1000 Scanner une plage de ports nmap -p 1-1000 <target>
-p- Scanner les 65535 ports nmap -p- <target>
-p U:53,T:80 Spécifier les ports UDP et TCP nmap -p U:53,T:80,443 <target>
--top-ports N Scanner les N ports les plus courants nmap --top-ports 100 <target>
-F Scan rapide (100 ports principaux) nmap -F <target>
-r Scanner les ports séquentiellement nmap -r <target>

🔍 Détection de services et versions

Option Description
-sV Détecter les versions des services sur les ports ouverts
--version-intensity 0-9 Définir l'intensité du scan de version (0=léger, 9=toutes les sondes)
--version-light Scan de version léger (intensité 2)
--version-all Essayer toutes les sondes (intensité 9)
-A Scan agressif : -sV -O -sC --traceroute

📋 Exemple : détection de services complète

nmap -sV --version-all -p 22,80,443,3306,8080 <target>

💻 Détection d'OS

Option Description
-O Activer la détection d'OS
--osscan-limit Tenter la détection d'OS uniquement sur les cibles prometteuses
--osscan-guess Deviner l'OS plus agressivement
--max-os-tries N Limiter les tentatives de détection d'OS par cible

📋 Exemple : détection d'OS avec devinette agressive

sudo nmap -O --osscan-guess <target>

📜 Nmap Scripting Engine (NSE)

NSE contient des centaines de scripts pour la détection de vulnérabilités, le brute forcing, la découverte, et plus. Les scripts sont situés dans /usr/share/nmap/scripts/ sur la plupart des systèmes Linux.

Option Description
-sC Exécuter les scripts par défaut (équivalent à --script=default)
--script=<name> Exécuter un ou plusieurs scripts spécifiques
--script=<category> Exécuter tous les scripts d'une catégorie
--script-args=<args> Fournir des arguments aux scripts
--script-updatedb Mettre à jour la base de données des scripts
--script-help=<name> Afficher l'aide d'un script

Catégories de scripts

vuln

Détection de vulnérabilités

exploit

Exploitation active

brute

Attaques par force brute

safe

Scripts non intrusifs

discovery

Découverte de services

auth

Vérifications d'authentification

default

Scripts sûrs standard

intrusive

Peut faire crasher les services

Exemples de scripts NSE courants

# Scan de vulnérabilités
nmap --script vuln <target>

# Énumération HTTP
nmap --script http-enum -p 80,443 <target>

# Vérification de vulnérabilités SMB
nmap --script smb-vuln* -p 445 <target>

# Transfert de zone DNS
nmap --script dns-zone-transfer -p 53 <target>

# Force brute SSH
nmap --script ssh-brute -p 22 <target>

# Analyse SSL/TLS
nmap --script ssl-enum-ciphers -p 443 <target>

# Vérification de connexion anonyme FTP
nmap --script ftp-anon -p 21 <target>

# Énumération MySQL
nmap --script mysql-info -p 3306 <target>

⚡ Timing et performance

Templates de timing

Option Nom Cas d'usage
-T0 Paranoid Évasion IDS, extrêmement lent
-T1 Sneaky Évasion IDS, lent
-T2 Polite Réduire la charge réseau
-T3 Normal Timing par défaut
-T4 Aggressive Scan rapide sur réseaux fiables
-T5 Insane Très rapide, peut manquer des ports

📄 Formats de sortie

Option Format Description
-oN file.txt Normal Sortie lisible par l'humain
-oX file.xml XML XML lisible par machine
-oG file.gnmap Grepable Facile à grep et parser
-oA basename Tous les formats Sortie dans tous les formats (.nmap, .xml, .gnmap)

💡 Conseil pro

Utilisez toujours -oA pour sauvegarder les résultats dans tous les formats. Cela vous donne de la flexibilité pour le reporting (normal), l'automatisation (XML), et les recherches rapides (grepable).

🛡️ Évasion de pare-feu et IDS

Option Description
-f Fragmenter les paquets (8 octets par fragment)
--mtu N Définir un MTU personnalisé (doit être multiple de 8)
-D decoy1,decoy2,ME Utiliser des adresses leurres (ME = votre vraie IP)
-S <spoofed_ip> Usurper l'adresse source
-g <port> Utiliser un port source spécifique
--data-length N Ajouter des données aléatoires aux paquets
--randomize-hosts Randomiser l'ordre des hôtes cibles
--spoof-mac <mac> Usurper l'adresse MAC (0 pour aléatoire)

🔥 Combinaisons de scans courantes

# Balayage réseau rapide
nmap -sn 192.168.1.0/24

# Scan de services standard
nmap -sV -sC -p- <target>

# Scan complet (services + OS + scripts)
nmap -A -T4 <target>

# Scan rapide des ports principaux
nmap -F -T4 <target>

# Scan furtif avec détection de services
nmap -sS -sV -O -T4 <target>

# Scan UDP des ports courants
sudo nmap -sU --top-ports 20 <target>

# Scan de vulnérabilités
nmap --script vuln -sV <target>

# Énumération de serveur web
nmap -sV --script=http-enum,http-headers,http-methods -p 80,443,8080 <target>

📊 Comprendre les états des ports

open

Application acceptant activement des connexions

closed

Port accessible mais aucune application en écoute

filtered

Pare-feu bloquant, impossible de déterminer l'état

unfiltered

Accessible, mais open/closed inconnu (scan ACK)

open|filtered

Open ou filtered, impossible de déterminer (UDP)

closed|filtered

Closed ou filtered, impossible de déterminer

📚 Ressources supplémentaires

🎯 Aide-mémoire Nmap terminé !

Vous disposez maintenant d'une référence complète pour l'outil de scan réseau le plus puissant en cybersécurité. De la découverte basique à l'évasion avancée, ces commandes sont utilisées quotidiennement par les professionnels de la sécurité dans le monde entier.

Découverte d'hôtes Scan de ports Détection de services Scripts NSE Évasion

Prêt à scanner votre prochaine cible !

Validation des Connaissances

Démontrez votre compréhension pour gagner des points et progresser

1
Question du Chapitre

Quel flag Nmap est utilisé pour effectuer un scan SYN furtif ?

1
Lire
2
Valider
3
Terminer

Prêt à suivre votre progression?

Créez un compte gratuit pour sauvegarder votre progression, gagner des points et accéder à plus de 170 labs pratiques de cybersécurité.

Commencer à Apprendre Gratuitement
Rejoignez 5 000+ hackers qui apprennent la cybersécurité avec des labs pratiques. Créer un Compte