Sommaire
Utiliser nmap pour découvrir les hôtes actifs, scanner les ports ouverts et identifier les services sur un réseau.
🎯 Objectifs de la fiche
- Installation et principe — Installer nmap, comprendre les types de scans
- Découverte d'hôtes — Ping scan, découverte réseau
- Scan de ports — TCP SYN, UDP, scan rapide
- Détection de services et versions — Identifier les logiciels et versions
- Détection de l'OS et scripts NSE — Fingerprinting OS, scripts de sécurité
Prérequis
Debian avec accès root ou sudo. Connaître les bases de l'adressage IP et des ports TCP/UDP.
⛔ Ne jamais scanner un réseau sans autorisation explicite du propriétaire. Scanner des systèmes sans permission est illégal en France (article 323-1 du Code pénal). Utilisez nmap uniquement sur votre propre infrastructure ou dans un environnement de lab autorisé.
1. Installation
sudo apt install nmap -y nmap --version
2. Syntaxe générale
nmap [options] [cible]
# Cibles possibles :
nmap 192.168.1.1 # une IP
nmap 192.168.1.1-50 # plage d'IPs
nmap 192.168.1.0/24 # réseau entier
nmap scanme.nmap.org # nom de domaine
nmap 192.168.1.1 192.168.1.2 # plusieurs IPs
3. Découverte d'hôtes (host discovery)
| Option | Description | Exemple |
|---|---|---|
| -sn | Ping scan — découverte sans scan de ports (rapide) | nmap -sn 192.168.1.0/24 |
| -Pn | Pas de ping — considère tous les hôtes comme actifs | nmap -Pn 192.168.1.1 |
| -PR | Ping ARP — très efficace sur réseau local | sudo nmap -PR 192.168.1.0/24 |
# Lister tous les hôtes actifs sur le réseau local sudo nmap -sn 192.168.1.0/24 # Résultat typique : # Nmap scan report for 192.168.1.1 # Host is up (0.0010s latency). # MAC Address: AA:BB:CC:DD:EE:FF (Cisco)
4. Scan de ports
| Option | Type de scan | Description |
|---|---|---|
| -sS | TCP SYN (stealth) | Scan furtif — envoie un SYN, n'établit pas la connexion. Nécessite root. |
| -sT | TCP Connect | Connexion TCP complète. Ne nécessite pas root mais laisse des traces. |
| -sU | UDP | Scan des ports UDP (plus lent). Services : DNS 53, DHCP 67, SNMP 161. |
| -sA | TCP ACK | Détecte les règles de pare-feu (ports filtrés vs fermés). |
| -F | Fast scan | Scan des 100 ports les plus courants (rapide). |
| -p | Ports spécifiques | -p 80,443 ou -p 1-1024 ou -p- (tous les ports) |
| --top-ports | Top N ports | --top-ports 20 : scan des 20 ports les plus courants |
# Scan SYN des 1000 ports les plus courants (rapide, root requis) sudo nmap -sS 192.168.1.1 # Scan des ports 1 à 65535 sudo nmap -sS -p- 192.168.1.1 # Scan UDP des ports courants sudo nmap -sU --top-ports 20 192.168.1.1 # Scan rapide des 100 ports les plus communs nmap -F 192.168.1.0/24
5. Détection de services et versions
| Option | Description | Exemple |
|---|---|---|
| -sV | Détecte les versions des services | nmap -sV 192.168.1.1 |
| -O | Détecte l'OS (fingerprinting) | sudo nmap -O 192.168.1.1 |
| -A | Mode agressif : OS + version + scripts + traceroute | sudo nmap -A 192.168.1.1 |
| --version-intensity | Intensité de détection (0-9) | nmap -sV --version-intensity 5 192.168.1.1 |
# Scan complet avec détection de version et OS sudo nmap -sS -sV -O 192.168.1.1 # Résultat typique : # PORT STATE SERVICE VERSION # 22/tcp open ssh OpenSSH 9.2 (Debian) # 80/tcp open http Apache httpd 2.4.57 # 443/tcp open ssl/http Apache httpd 2.4.57
6. Scripts NSE (Nmap Scripting Engine)
nmap intègre des scripts pour des tests de sécurité avancés :
# Lancer les scripts par défaut (safe) nmap -sC 192.168.1.1 # Script spécifique : détecter les vulnérabilités SMB sudo nmap --script smb-vuln-ms17-010 192.168.1.1 # Vérifier les certificats SSL nmap --script ssl-cert -p 443 192.168.1.1 # Énumérer les partages HTTP nmap --script http-enum -p 80,443 192.168.1.1 # Combinaison recommandée pour un audit sudo nmap -sS -sV -sC -O -p- 192.168.1.1
7. Options de sortie et de performance
| Option | Description |
|---|---|
| -oN fichier | Sauvegarde le résultat en texte normal |
| -oX fichier | Sauvegarde en XML (exploitable par d'autres outils) |
| -oG fichier | Sauvegarde en format grepable |
| -oA fichier | Sauvegarde dans tous les formats |
| -v / -vv | Mode verbeux (affiche plus d'informations) |
| -T0 à -T5 | Vitesse du scan (T0=paranoïaque, T3=normal, T4=agressif, T5=insensé) |
| --open | N'affiche que les ports ouverts |
# Scan complet avec sauvegarde du résultat sudo nmap -sS -sV -A -T4 --open 192.168.1.0/24 -oA /tmp/scan-reseau # Scan discret et lent (évite de déclencher les IDS) sudo nmap -sS -T1 -p 22,80,443 192.168.1.1
- ☐ nmap installé et version vérifiée
- ☐ Scan -sn pour découvrir les hôtes du réseau de lab
- ☐ Scan de ports sur une machine cible du lab
- ☐ Détection de services avec -sV testée
- ☐ Résultats sauvegardés avec -oN
- ☐ Uniquement sur le réseau de lab autorisé
Quelle option nmap effectue un ping scan sans scanner les ports ?
✅ Réponse : -sn
Quel type de scan nmap est dit 'furtif' car il n'établit pas de connexion complète ?
✅ Réponse : TCP SYN (-sS)
Quelle option détecte la version des services sur les ports ouverts ?
✅ Réponse : -sV
Que signifie -p- dans une commande nmap ?
✅ Réponse : Scanner tous les ports (1 à 65535)
En France, scanner un réseau sans autorisation est :
✅ Réponse : Illégal — article 323-1 du Code pénal
Suis ta progressionConnecte-toi pour marquer les ressources comme terminées et retrouver ton avancement.
Se connecter