Nmap est l’abréviation de Network Mapper. C’est un outil de sécurité open-source pour l’exploration du réseau, le scan de sécurité et l’audit. Cependant, la commande Nmap est livrée avec de nombreuses options qui peuvent rendre l’utilitaire plus robuste et difficile à suivre pour les nouveaux utilisateurs. L’objectif de ce guide est de présenter à un utilisateur l’outil de ligne de commande Nmap pour scanner un hôte ou un réseau afin de découvrir les éventuels points vulnérables des hôtes. Vous apprendrez également comment utiliser Nmap à des fins offensives et défensives. Voyons quelques exemples de commandes Nmap courantes fonctionnant sur Linux ou des systèmes de type Unix.
- Qu’est-ce que Nmap et à quoi sert-il ?
- Exemples de commandes Nmap sous Linux et Unix – Exemple de configuration (LAB) pour
- Comment installer nmap sur Linux ?
- Scanner un seul hôte ou une adresse IP (IPv4) en utilisant nmap
- Scanner plusieurs adresses IP ou un sous-réseau (IPv4)
- Lire la liste des hôtes/réseaux à partir d’un fichier (IPv4)
- Exclusion d’hôtes/réseaux (IPv4) d’un scan nmap exemples
- Activer le script de scan de détection de l’OS et de la version (IPv4) avec nmap
- Découvrir si un hôte/réseau est protégé par un pare-feu en utilisant la commande namp
- Scanner un hôte lorsqu’il est protégé par le pare-feu
- Scanner un hôte/adresse IPv6 exemples
- Balayez un réseau et découvrez quels serveurs et périphériques sont opérationnels
- Comment puis-je effectuer un balayage rapide en utilisant le namp ?
- Afficher la raison pour laquelle un port est dans un état particulier
- Seulement montrer les ports ouverts (ou éventuellement ouverts) en utilisant la commande nmap dans Linux
- Montrer tous les paquets envoyés et reçus
- Montrer les interfaces hôtes et les routes
- Comment puis-je scanner des ports spécifiques en utilisant nmap ?
- 16 : Le moyen le plus rapide de scanner tous vos périphériques/ordinateurs pour les ports ouverts jamais
- Comment puis-je détecter un système d’exploitation distant à l’aide de nmap ?
- Comment détecter les numéros de version des services distants (serveur / démon) ?
- Scanner un hôte en utilisant le ping TCP ACK (PA) et TCP Syn (PS)
- Découvrir un hôte en utilisant le protocole IP ping
- Découvrir un hôte en utilisant UDP ping
- Découvrir les ports TCP les plus couramment utilisés en utilisant TCP SYN Scan
- Scanner un hôte pour les services UDP (UDP scan)
- Scan pour le protocole IP
- Scanner un pare-feu pour une faiblesse de sécurité
- Scanner un pare-feu pour les fragments de paquets
- Cloquer un scan avec des leurres
- Scanner un pare-feu pour l’usurpation d’adresse MAC
- Comment puis-je enregistrer la sortie dans un fichier texte ?
- Scanne des serveurs web et pipe dans Nikto pour le scan
- Accélérer nmap
- Pas fan des outils en ligne de commande namp ?
- Comment détecter et bloquer le scan de ports sur les serveurs Linux et Unix/BSD ?
- Conclusion
Qu’est-ce que Nmap et à quoi sert-il ?
nmap en action
Depuis la page de manuel:
Nmap (« Network Mapper ») est un outil open source pour l’exploration des réseaux et l’audit de sécurité. Il a été conçu pour scanner rapidement de grands réseaux, bien qu’il fonctionne bien contre des hôtes uniques. Nmap utilise les paquets IP bruts de manière originale pour déterminer quels hôtes sont disponibles sur le réseau, quels services (nom et version de l’application) ces hôtes offrent, quels systèmes d’exploitation (et versions d’OS) ils utilisent, quels types de filtres de paquets/pare-feu sont utilisés, et des dizaines d’autres caractéristiques. Bien que Nmap soit couramment utilisé pour les audits de sécurité, de nombreux administrateurs de systèmes et de réseaux le trouvent utile pour des tâches de routine telles que l’inventaire du réseau, la gestion des calendriers de mise à niveau des services et la surveillance du temps de fonctionnement des hôtes ou des services.
Il a été écrit à l’origine par Gordon Lyon et il peut répondre facilement aux questions suivantes :
- Trouver des ordinateurs en fonctionnement sur le réseau local
- Quelles adresses IP avez-vous trouvées en fonctionnement sur le réseau local ?
- Découvrez le système d’exploitation de votre machine cible
- Découvrez quels ports sont ouverts sur la machine que vous venez d’analyser
- Voyez si le système est infecté par un malware ou un virus.
- Recherchez des serveurs ou un service réseau non autorisés sur votre réseau.
- Localiser et supprimer les ordinateurs qui ne répondent pas au niveau minimum de sécurité de l’organisation.
Exemples de commandes Nmap sous Linux et Unix – Exemple de configuration (LAB) pour
Le balayage des ports peut être illégal dans certaines juridictions. Configurez donc un laboratoire comme suit :
+---------+ +---------+ | Network | +--------+ | server1 |-----------+ swtich +---------|server2 | +---------+ | (sw0) | +--------+ +----+----+ | | +---------+----------------+ | wks01 Linux/macOS/Win | +--------------------------+
Où,
- wks01 est votre ordinateur soit exécutant Linux/macOS (OS X) ou un système d’exploitation de type Unix. Il est utilisé pour scanner votre réseau local. La commande nmap doit être installée sur cet ordinateur.
- server1 peut être alimenté par des systèmes d’exploitation Linux / Unix / MS-Windows. Il s’agit d’un serveur non patché. N’hésitez pas à installer quelques services tels qu’un serveur web, un serveur de fichiers et ainsi de suite.
- Le serveur2 peut être alimenté par des systèmes d’exploitation Linux / Unix / MS-Windows. C’est un serveur entièrement patché avec un pare-feu. Encore une fois, n’hésitez pas à installer quelques services tels qu’un serveur web, un serveur de fichiers et ainsi de suite.
- Les trois systèmes sont connectés via un commutateur.
Comment installer nmap sur Linux ?
Voir:
- Debian / Ubuntu Linux : Installer le logiciel nmap pour scanner le réseau
- CentOS / RHEL : Installer le scanner de sécurité du réseau nmap
- OpenBSD : Installer le scanner de sécurité du réseau nmap
Scanner un seul hôte ou une adresse IP (IPv4) en utilisant nmap
Fig.01.: sortie nmap
Scanner plusieurs adresses IP ou un sous-réseau (IPv4)
nmap 192.168.1.1 192.168.1.2 192.168.1.3## works with same subnet i.e. 192.168.1.0/24 nmap 192.168.1.1,2,3
Vous pouvez aussi scanner une plage d’adresses IP:
nmap 192.168.1.1-20
Vous pouvez scanner une plage d’adresses IP en utilisant un joker :
nmap 192.168.1.*
Enfin, vous scannez un sous-réseau entier:
nmap 192.168.1.0/24
Lire la liste des hôtes/réseaux à partir d’un fichier (IPv4)
L’option -iL vous permet de lire la liste des systèmes cibles en utilisant un fichier texte. Ceci est utile pour analyser un grand nombre d’hôtes/réseaux. Créez un fichier texte comme suit :cat > /tmp/test.txt
Ajoutez des noms comme suit :
server1.cyberciti.biz192.168.1.0/24192.168.1.1/2410.1.2.3localhost
La syntaxe est la suivante :
nmap -iL /tmp/test.txt
Exclusion d’hôtes/réseaux (IPv4) d’un scan nmap exemples
Lorsque vous scannez un grand nombre d’hôtes/réseaux, vous pouvez exclure des hôtes d’un scan:
nmap 192.168.1.0/24 --exclude 192.168.1.5nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.254
OU exclure la liste d’un fichier appelé /tmp/exclude.txt
nmap -iL /tmp/scanlist.txt --excludefile /tmp/exclude.txt
Activer le script de scan de détection de l’OS et de la version (IPv4) avec nmap
nmap -A 192.168.1.254nmap -v -A 192.168.1.1nmap -A -iL /tmp/scanlist.txt
Découvrir si un hôte/réseau est protégé par un pare-feu en utilisant la commande namp
## nmap command examples for your host ##nmap -sA 192.168.1.254nmap -sA server1.cyberciti.biz
Scanner un hôte lorsqu’il est protégé par le pare-feu
Dans ces exemples de commandes Nmap, nous allons scanner un routeur/ périphérique wifi ayant 192.168.1.1 comme IP:
nmap -PN 192.168.1.1nmap -PN server1.cyberciti.biz
Scanner un hôte/adresse IPv6 exemples
L’option -6 permet de scanner IPv6 avec la commande namp. La syntaxe est la suivante :
nmap -6 IPv6-Address-Herenmap -6 server1.cyberciti.biznmap -6 2607:f0d0:1002:51::4nmap -v A -6 2607:f0d0:1002:51::4
Balayez un réseau et découvrez quels serveurs et périphériques sont opérationnels
C’est ce qu’on appelle la découverte d’hôte ou le balayage ping :
nmap -sP 192.168.1.0/24
Voici à quoi cela ressemble :
Comment puis-je effectuer un balayage rapide en utilisant le namp ?
nmap -F 192.168.1.1nmap -6 -F IPv6_Address_Here
Afficher la raison pour laquelle un port est dans un état particulier
nmap --reason 192.168.1.1nmap --reason server1.cyberciti.biz
Sorties:
Seulement montrer les ports ouverts (ou éventuellement ouverts) en utilisant la commande nmap dans Linux
Exécution:
nmap --open 192.168.1.1nmap --open server1.cyberciti.biznmap --open 192.168.2.18
Sorties du scan de mon serveur Linux CentOS 7 :
Montrer tous les paquets envoyés et reçus
nmap --packet-trace 192.168.1.1nmap --packet-trace server1.cyberciti.biz
Montrer les interfaces hôtes et les routes
C’est utile pour le débogage (commande ip ou commande route ou commande netstat comme la sortie en utilisant la commande nmap sur Linux)
nmap --iflist
Rapport détaillé créé par la commande Namp:
Comment puis-je scanner des ports spécifiques en utilisant nmap ?
Exemples de sorties:
16 : Le moyen le plus rapide de scanner tous vos périphériques/ordinateurs pour les ports ouverts jamais
nmap -T5 192.168.1.0/24nmap -T5 {sub/net}
Comment puis-je détecter un système d’exploitation distant à l’aide de nmap ?
Vous pouvez identifier les apps et le système d’exploitation d’un hôte distant en utilisant l’option -O :
nmap -O 192.168.1.1nmap -O --osscan-guess 192.168.1.1nmap -v -O --osscan-guess 192.168.1.1
Exemples de sorties :
Voir aussi Empreinte digitale d’un serveur web et d’un serveur dns outils en ligne de commande pour plus d’informations.
Comment détecter les numéros de version des services distants (serveur / démon) ?
Ouvrir le terminal puis taper la commande nmap suivante :
nmap -sV 192.168.1.1
Exemples de sorties :
Scanner un hôte en utilisant le ping TCP ACK (PA) et TCP Syn (PS)
Si le pare-feu bloque les pings ICMP standard, essayer les méthodes de découverte d’hôte suivantes :
nmap -PS 192.168.1.1nmap -PS 80,21,443 192.168.1.1nmap -PA 192.168.1.1nmap -PA 80,21,200-512 192.168.1.1
Découvrir un hôte en utilisant le protocole IP ping
nmap -PO 192.168.1.1
Découvrir un hôte en utilisant UDP ping
Cette recherche contourne les pare-feu et les filtres qui ne filtrent que le TCP :
nmap -PU 192.168.1.1nmap -PU 2000.2001 192.168.1.1
Découvrir les ports TCP les plus couramment utilisés en utilisant TCP SYN Scan
Scanner un hôte pour les services UDP (UDP scan)
La plupart des services populaires sur Internet s’exécutent sur le protocole TCP. DNS, SNMP et DHCP sont trois des services UDP les plus courants. Utilisez la syntaxe suivante pour connaître les services UDP:
nmap -sU nas03nmap -sU 192.168.1.1
Exemples de sorties:
Scan pour le protocole IP
Ce type de scan vous permet de déterminer quels protocoles IP (TCP, ICMP, IGMP, etc.) sont pris en charge par les machines cibles:
nmap -sO 192.168.1.1
Scanner un pare-feu pour une faiblesse de sécurité
Les types de scan suivants exploitent une faille subtile dans le TCP et bon pour tester la sécurité des attaques courantes:
Voir comment bloquer les Xmas packkets, les syn-floods et autres attaques de conman avec iptables.
Scanner un pare-feu pour les fragments de paquets
L’option -f fait en sorte que le scan demandé (y compris les scans ping) utilise de minuscules paquets IP fragmentés. L’idée est de diviser l’en-tête TCP sur
plusieurs paquets afin de rendre plus difficile pour les filtres de paquets, les systèmes de détection d’intrusion et autres désagréments de détecter ce que vous faites.
Cloquer un scan avec des leurres
L’option -D il apparaît à l’hôte distant que le ou les hôtes que vous spécifiez comme leurres scannent également le réseau cible. Ainsi, leur IDS pourrait signaler 5 à 10 scans de port à partir d’adresses IP uniques, mais ils ne sauront pas quelle IP les scannait et lesquelles étaient des leurres innocents :
nmap -n -Ddecoy-ip1,decoy-ip2,your-own-ip,decoy-ip3,decoy-ip4 remote-host-ipnmap -n -D192.168.1.5,10.5.1.2,172.1.2.4,3.4.2.1 192.168.1.5
Scanner un pare-feu pour l’usurpation d’adresse MAC
Comment puis-je enregistrer la sortie dans un fichier texte ?
La syntaxe est:
nmap 192.168.1.1 > output.txtnmap -oN /path/to/filename 192.168.1.1nmap -oN output.txt 192.168.1.1
Scanne des serveurs web et pipe dans Nikto pour le scan
nmap -p80 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
nmap -p80,443 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
Accélérer nmap
Passer l’option -T à la commande nmap:nmap -v -sS -A -T4 192.168.2.5
Exemples de sorties:
Pas fan des outils en ligne de commande namp ?
Jusqu’à présent, nous avons vu des exemples de commandes Nmap utilisant les options de ligne de commande Linux et Unix. Cependant, tout le monde n’est pas super à l’aise avec la CLI. Par conséquent, nous pouvons utiliser l’application GUI nommée Zenmap, qui est le front-end officiel du mappeur de réseau/outil GUI:
Zenmap est l’interface graphique officielle du scanner de sécurité Nmap. C’est une application gratuite et open source multiplateforme (Linux, Windows, Mac OS X, BSD, etc.) qui vise à rendre Nmap facile à utiliser pour les débutants tout en fournissant des fonctionnalités avancées pour les utilisateurs expérimentés de Nmap. Les scans fréquemment utilisés peuvent être sauvegardés sous forme de profils pour faciliter leur répétition. Un créateur de commandes permet la création interactive de lignes de commandes Nmap. Les résultats des scans peuvent être sauvegardés et consultés plus tard. Les résultats des scans sauvegardés peuvent être comparés les uns aux autres pour voir comment ils diffèrent. Les résultats des scans récents sont stockés dans une base de données consultable.
Vous pouvez installer zenmap en utilisant la commande apt-get ou la commande apt suivante:$ sudo apt-get install zenmap
Sample outputs:
Tapez la commande suivante pour démarrer zenmap:$ sudo zenmap
Sample outputs
Fig.02.: zenmap en action
Comment détecter et bloquer le scan de ports sur les serveurs Linux et Unix/BSD ?
Essayez les ressources suivantes :
- Comment utiliser l’outil psad pour détecter et bloquer les attaques de scan de ports en temps réel.
- Debian / Ubuntu Linux : Installer et configurer le pare-feu Shoreline (Shorewall).
- CentOS / Redhat Tutoriel de configuration du pare-feu Iptables.
- Linux : 20 exemples Iptables pour les nouveaux SysAdmins.
- 20 conseils de sécurité pour le durcissement des serveurs Linux.
Conclusion
Dans ce guide, vous avez appris la commande Nmap avec de nombreux exemples pour Linux et l’utilisation avec divers exemples. Veuillez consulter les ressources suivantes pour plus d’informations:
- La page d’accueil officielle du projet Nmap ici.
La commande Nmap a beaucoup plus d’options, et veuillez parcourir la page de manuel ou la documentation pour plus d’informations. Quelles sont vos astuces préférées en ligne de commande de Nmap ? Partagez vos trucs, astuces et conseils préférés dans les commentaires ci-dessous.
🐧 Obtenez les derniers tutoriels sur Linux, Open Source & DevOps via le flux RSS ou la newsletter hebdomadaire par courriel.
🐧 25 commentaires jusqu’à présent…. en ajouter un ↓
Catégorie | Liste des commandes Unix et Linux |
---|---|
Gestion des fichiers. Management | cat |
Firewall | Alpine Awall – CentOS 8 – OpenSUSE – RHEL 8 – Ubuntu 16.04 – Ubuntu 18.04 – Ubuntu 20.04 |
Utilitaires réseau | dig – host – ip – nmap |
OpenVPN | CentOS 7 – CentOS 8 – Debian 10 – Debian 8/9 – Ubuntu 18.04 – Ubuntu 20.04 |
Gestionnaire de paquets | apk – apt |
Gestion des processus | bg – chroot – cron – disown – fg – jobs – killall – kill – pidof. – pstree – pwdx – time |
Recherche | grep – whereis – which |
Informations sur les utilisateurs | groupes – id – lastcomm – last – lid/libuser-lid – logname – members – users – whoami – who – w |
WireGuard VPN | Alpine – CentOS 8 – Debian 10 – Firewall – Ubuntu 20.04 |