Aide mémoire sur Nmap
Publié le
Lorsque l’on veut trouver les machines d’un réseau ou vérifier que les ports sont bien fermés, nmap
est bien utile !
Trouver les hôtes sur un réseau
Pinger toutes les adresses de 192.168.1.0̀
à 192.168.1.255
nmap -sn 192.168.1.0/24
# stripped output
Host is up (0.0080s latency).
Nmap scan report for 192.168.68.101
Host is up (0.0040s latency).
Nmap scan report for 192.168.68.102
-sn
signifie ping Scan (il n’y a pas de vérification de tous les ports)
Nb: Pour trouver le réseau sur lequel vous êtes connecté, utilisez la commande
ip addr
(voir le mémo IP)
Trouver les ports ouverts
Scan rapide des ports courants
Listing des ports communément utilisés pour chaque hôte
nmap -F 192.168.1.0/24
# stripped output
Nmap scan report for 192.168.68.103
Host is up (0.0083s latency).
Not shown: 97 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
Nmap scan report for 192.168.68.104
Host is up (0.027s latency).
Not shown: 99 closed ports
PORT STATE SERVICE
8009/tcp open ajp13
Nmap restreint les ports scannés à ceux listés dans le fichier nmap-services (environ 2,200) qui enrichit la source originale IANA
Scan sur les ports spécifiés
Listing exhaustif de tous les ports possibles de chaque hôte.
Attention : très long…
nmap -p 1-65535 192.168.1.0/24
# stripped
Completed Connect Scan at 10:11, 120.79s elapsed (196605 total ports)
Nmap scan report for lan.home (192.168.1.1)
Host is up (0.0046s latency).
Not shown: 65522 filtered ports
PORT STATE SERVICE
53/tcp open domain
80/tcp open http
113/tcp closed ident
135/tcp closed msrpc
137/tcp closed netbios-ns
138/tcp closed netbios-dgm
139/tcp open netbios-ssn
443/tcp open https
445/tcp open microsoft-ds
631/tcp open ipp
1990/tcp open stun-p1
8883/tcp open secure-mqtt
60000/tcp open unknown
Nmap scan report for pc-2.home (192.168.1.10)
Host is up (0.020s latency).
All 65535 scanned ports on pc-2.home (192.168.1.10) are closed (65126) or filtered (409)
Il est possible de varier les paramètres de retry, timeout, etc avec l’option -T
nmap -p 1-65535 -T4 192.168.1.0/24
Trouver les OS et versions des services
Il est possible de détecter les ports, services, os et versions.
Utile lors de tests de pénétration par exemple (il suffit de regarder si des failles de sécurité existent pour la version trouvée)
sudo nmap -v -A -T4 192.168.1.0/24
# stripped
Nmap scan report for 192.168.68.103
Host is up (0.0038s latency).
Not shown: 996 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh Dropbear sshd 2015.67 (protocol 2.0)
map scan report for 192.168.68.104
Host is up (0.013s latency).
Not shown: 998 closed ports
PORT STATE SERVICE VERSION
8009/tcp open http Amazon Whisperplay DIAL REST service
-v
: verbose-A
: permet la détection des OS et versions de logiciels utilisés-T4
: pour une exécution plus rapide
Attention: commande à exécuter avec les privilèges root
Utiliser le Nmap Scripting Engine (NSE)
Nmap permet d’automatiser des tâches via des scripts personnalisés (ou ceux déjà fournis)
Lister les scripts disponibles
Aide sur toutes les catégories de scripts
nmap --script-help '*'
Aide sur tous les scripts HTTP
nmap --script-help 'http*'
Exécuter les scripts communs
nmap -sC 192.168.122.1
-sC
ou--script=default
Audit d’authentification
nmap -v --script "http-brute" -T5 192.168.1.0/24
# stripped
Nmap scan report for 192.168.1.38
Host is up (0.0100s latency).
Not shown: 995 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
| http-brute:
|_ Path "/" does not require authentication
443/tcp open https
| http-brute:
|_ Path "/" does not require authentication
1900/tcp open upnp
30000/tcp open ndmps
Sources
- la doc installée avec nmap :)
man nmap
- Nmap website book
- Nmap Scripting Engine