Scanner avec des ports personnalisés dans Nmap

NmapBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, vous allez apprendre à scanner des ports personnalisés à l'aide de Nmap, un puissant outil de balayage réseau. Le laboratoire porte sur la spécification des ports cibles à scanner, la combinaison du balayage de ports personnalisés avec des scans SYN pour une meilleure efficacité, et la sauvegarde des résultats de balayage pour une analyse ultérieure.

Vous commencerez par scanner des ports spécifiques tels que 1000 et 2000 sur localhost (127.0.0.1) à l'aide de l'option -p. Ensuite, vous combinerez cela avec un scan SYN (-sS) pour scanner une plage de ports, telle que 1000-2000. Le laboratoire couvre également l'ajout de verbeux avec l'option -v et la sauvegarde des résultats de balayage dans un fichier à l'aide de l'option -oN. Enfin, vous examinerez les résultats sauvegardés et les comparerez avec un scan des ports les plus courants.

Balayez des ports personnalisés avec nmap -p 1000,2000 192.168.1.1

Dans cette étape, nous allons apprendre à scanner des ports spécifiques sur une machine cible à l'aide de Nmap. Nmap est un puissant outil de balayage réseau utilisé pour découvrir des hôtes et des services sur un réseau informatique en envoyant des paquets et en analysant les réponses. Par défaut, Nmap scanne un ensemble de ports bien connus. Cependant, vous pouvez personnaliser le balayage pour cibler des ports spécifiques d'intérêt.

Pour scanner des ports personnalisés, vous pouvez utiliser l'option -p suivie d'une liste séparée par des virgules de numéros de port ou d'une plage de ports.

Commençons par scanner les ports 1000 et 2000 sur l'adresse IP cible 192.168.1.1. Étant donné que ceci est un environnement de laboratoire, nous utiliserons 127.0.0.1 (localhost) comme cible à des fins de démonstration. Cela signifie que nous allons scanner la machine sur laquelle nous travaillons actuellement.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

nmap -p 1000,2000 127.0.0.1

Cette commande indique à Nmap de scanner les ports 1000 et 2000 sur le localhost (127.0.0.1).

Vous devriez voir une sortie similaire à celle-ci :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000082s latency).

PORT     STATE  SERVICE
1000/tcp closed unknown
2000/tcp closed cisco-sccp

Nmap done: 1 IP address (1 host up) scanned in 0.12 seconds

La sortie montre l'état de chaque port balayé. Dans cet exemple, les deux ports sont fermés. Si un service était en cours d'exécution sur l'un de ces ports, l'état serait probablement affiché comme open.

Maintenant, essayons de scanner une plage de ports.

Combiner avec un balayage SYN à l'aide de nmap -sS -p 1000-2000 127.0.0.1

Dans cette étape, nous allons combiner le balayage de ports personnalisés avec un scan SYN. Un scan SYN, également connu sous le nom de scan semi-ouvert, est un type de scan Nmap qui envoie des paquets SYN à la machine cible mais ne termine pas la connexion TCP. Cette technique est plus rapide et moins détectable qu'un scan de connexion TCP complet.

L'option -sS dans Nmap spécifie un scan SYN. Nous allons utiliser cette option avec l'option -p pour scanner une plage spécifique de ports.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

sudo nmap -sS -p 1000-2000 127.0.0.1

Cette commande indique à Nmap d'effectuer un scan SYN sur les ports de 1000 à 2000 sur le localhost (127.0.0.1). Vous devrez avoir les privilèges sudo pour effectuer un scan SYN, car cela nécessite l'envoi de paquets bruts.

Vous devriez voir une sortie similaire à celle-ci :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000079s latency).
Not shown: 999 closed ports
PORT     STATE SERVICE
1000/tcp open  iss-realsecure

Nmap done: 1 IP address (1 host up) scanned in 0.25 seconds

La sortie montre l'état de chaque port balayé dans la plage spécifiée. Dans cet exemple, le port 1000 est ouvert et exécute le service iss-realsecure, tandis que les 999 autres ports sont fermés. Le message "Not shown: 999 closed ports" indique que Nmap supprime l'affichage des ports fermés pour réduire la surcharge d'informations.

Ajoutez de la verbosité avec nmap -v -p 1000,2000 192.168.1.1

Dans cette étape, nous allons ajouter de la verbosité à notre balayage Nmap. La verbosité augmente la quantité d'informations que Nmap fournit pendant le balayage. Cela peut être utile pour comprendre ce que Nmap fait et pour résoudre tout problème éventuel.

L'option -v dans Nmap active le mode verbeux. Utiliser -v une fois augmente le niveau de verbosité. Vous pouvez utiliser -vv ou même -vvv pour une sortie encore plus détaillée.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

nmap -v -p 1000,2000 127.0.0.1

Cette commande indique à Nmap de scanner les ports 1000 et 2000 sur le localhost (127.0.0.1) et de fournir une sortie verbeuse.

Vous devriez voir une sortie similaire à celle-ci (la sortie exacte peut varier) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
Initiating Ping Scan at 10:10
Scanning localhost (127.0.0.1) [4 ports]
Completed Ping Scan at 10:10, 0.00s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 10:10
Completed Parallel DNS resolution of 1 host. at 10:10, 0.00s elapsed
Initiating SYN Stealth Scan at 10:10
Scanning localhost (127.0.0.1) [2 ports]
Discovered open port 1000/tcp on 127.0.0.1
Completed SYN Stealth Scan at 10:10, 0.06s elapsed (2 total ports)
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000079s latency).

PORT     STATE SERVICE
1000/tcp open  iss-realsecure
2000/tcp closed cisco-sccp

Nmap done: 1 IP address (1 host up) scanned in 0.12 seconds

Remarquez les informations supplémentaires fournies par Nmap, telles que l'heure d'initiation du balayage, le type de balayage effectué et le temps écoulé. Cette sortie verbeuse peut être très utile pour comprendre le processus de balayage et identifier les problèmes potentiels.

Enregistrez un balayage de ports personnalisé avec nmap -p 1000-2000 -oN custom_ports.txt 127.0.0.1

Dans cette étape, nous allons enregistrer les résultats de notre balayage de ports personnalisé dans un fichier. Cela est utile pour une analyse ultérieure ou pour partager les résultats avec d'autres.

L'option -oN dans Nmap spécifie que la sortie doit être enregistrée au format normal dans le fichier spécifié.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

nmap -p 1000-2000 -oN custom_ports.txt 127.0.0.1

Cette commande indique à Nmap de scanner les ports de 1000 à 2000 sur le localhost (127.0.0.1) et d'enregistrer les résultats au format normal dans un fichier nommé custom_ports.txt dans votre répertoire actuel (~/projet).

Une fois le balayage terminé, vous pouvez afficher le contenu du fichier à l'aide de la commande cat :

cat custom_ports.txt

Vous devriez voir les résultats du balayage Nmap dans le terminal, similaire à ce que vous verriez si vous exécutiez le balayage sans l'option -oN. La différence est que les résultats sont maintenant également enregistrés dans le fichier custom_ports.txt.

La sortie ressemblera à ceci :

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000079s latency).
Not shown: 999 closed ports
PORT     STATE SERVICE
1000/tcp open  iss-realsecure

## Nmap done at Fri Oct 27 10:15:00 2023 -- 1 IP address (1 host up) scanned in 0.25 seconds

Vérifiez les résultats des ports personnalisés dans le terminal Xfce

Dans cette étape, nous allons vérifier les résultats du balayage de ports personnalisé que nous avons enregistrés dans le fichier custom_ports.txt dans l'étape précédente. Nous allons utiliser la commande cat pour afficher le contenu du fichier dans le terminal Xfce.

Ouvrez votre terminal Xfce et exécutez la commande suivante :

cat custom_ports.txt

Cette commande affichera le contenu du fichier custom_ports.txt dans le terminal. Vous devriez voir les résultats du balayage Nmap, y compris les ports ouverts et fermés qui ont été trouvés pendant le balayage.

La sortie ressemblera à ceci :

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000079s latency).
Not shown: 999 closed ports
PORT     STATE SERVICE
1000/tcp open  iss-realsecure

## Nmap done at Fri Oct 27 10:15:00 2023 -- 1 IP address (1 host up) scanned in 0.25 seconds

Examinez la sortie pour identifier les ports ouverts. Dans cet exemple, le port 1000 est ouvert. La colonne "SERVICE" fournit une indication sur le service qui pourrait être en cours d'exécution sur ce port. Dans ce cas, elle suggère "iss-realsecure".

Vous pouvez également utiliser d'autres outils de ligne de commande comme grep pour filtrer les résultats et trouver des informations spécifiques. Par exemple, pour trouver toutes les lignes contenant le mot "open", vous pouvez utiliser la commande suivante :

grep open custom_ports.txt

Cela ne renverra que les lignes de custom_ports.txt qui contiennent le mot "open".

1000/tcp open  iss-realsecure

Cela vous permet d'identifier rapidement les ports ouverts à partir des résultats du balayage.

Comparez avec un balayage des ports les plus courants dans le terminal Xfce

Dans cette étape, nous allons effectuer un balayage des 1000 ports les plus courants et comparer les résultats avec notre balayage de ports personnalisé précédent. Cela nous aidera à comprendre si les services exécutés sur les ports personnalisés sont également exécutés sur des ports couramment utilisés.

Tout d'abord, exécutez un balayage des 1000 ports les plus courants sur le localhost (127.0.0.1) à l'aide de la commande suivante :

nmap -F 127.0.0.1

L'option -F indique à Nmap de ne scanner que les ports listés dans le fichier nmap-services, qui contient une liste des ports les plus courants. Cela équivaut à scanner les 100 premiers ports. Pour scanner les 1000 ports les plus courants, vous pouvez utiliser l'option --top-ports 1000. Cependant, pour ce laboratoire, nous resterons avec l'option -F pour un balayage plus rapide.

La sortie ressemblera à ceci :

Starting Nmap 7.80 ( https://nmap.org ) at Fri Oct 27 10:20:00 2023
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000079s latency).
Not shown: 97 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
80/tcp   open  http

Nmap done: 1 IP address (1 host up) scanned in 0.25 seconds

Maintenant, comparons ces résultats avec les résultats de notre balayage de ports personnalisé dans custom_ports.txt. Nous savons de l'étape précédente que le port 1000 était ouvert. Vérifions si le balayage des ports les plus courants a également trouvé le port 1000 ouvert.

Vous pouvez utiliser la commande grep pour rechercher le port 1000 dans la sortie du balayage des ports les plus courants. Comme la sortie est directement imprimée dans le terminal, nous pouvons rediriger la sortie vers grep :

nmap -F 127.0.0.1 | grep 1000

Si la commande renvoie une sortie, cela signifie que le port 1000 a été trouvé dans le balayage des ports les plus courants. Si elle ne renvoie aucune sortie, cela signifie que le port 1000 n'est pas parmi les ports les plus courants.

Dans ce cas, vous ne verrez probablement pas de sortie, car le port 1000 n'est pas un port courant. Cela montre la différence entre le balayage de ports courants et le balayage de ports personnalisés. Le balayage de ports courants est utile pour identifier rapidement les services bien connus, tandis que le balayage de ports personnalisés est utile pour trouver des services moins courants ou intentionnellement cachés.

Résumé

Dans ce laboratoire, nous avons appris à scanner des ports spécifiques sur une machine cible à l'aide de l'option -p de Nmap, en spécifiant des ports individuels ou une plage. Nous avons pratiqué le balayage des ports 1000 et 2000, puis d'une plage allant de 1000 à 2000, en utilisant le localhost (127.0.0.1) comme cible.

De plus, nous avons combiné le balayage de ports personnalisés avec un balayage SYN à l'aide de l'option -sS, permettant un balayage plus rapide et moins détectable de la plage de ports spécifiée. Le laboratoire a démontré comment cibler des ports spécifiques d'intérêt et analyser les résultats du balayage pour déterminer l'état de chaque port.