Combiner les scans TCP et UDP dans Nmap

NmapNmapBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous allez apprendre à combiner les scans TCP et UDP dans Nmap. Le laboratoire couvre l'exécution d'un scan combiné sur une adresse IP cible, le scan de ports spécifiques, l'ajout de verbeux au scan, la sauvegarde des résultats combinés, la comparaison des sorties TCP et UDP et l'analyse des résultats dans le terminal Xfce. Vous utiliserez des commandes telles que nmap -sS -sU avec différentes options pour effectuer diverses tâches de scan.

Notez que dans les scénarios du monde réel, vous ne devriez scanner des réseaux et des hôtes qu'avec une autorisation expresse. Pour ce laboratoire, vous pouvez utiliser 192.168.1.1 ou le remplacer par l'adresse IP de votre VM LabEx si nécessaire.

Exécutez un scan combiné avec nmap -sS -sU 192.168.1.1

Dans cette étape, vous allez apprendre à effectuer un scan combiné TCP SYN (stealth) et UDP à l'aide de Nmap. Ce type de scan est utile pour identifier les services TCP et UDP en cours d'exécution sur un hôte cible.

Avant de commencer, expliquons brièvement les drapeaux utilisés dans la commande :

  • -sS : Ce drapeau indique à Nmap d'effectuer un scan TCP SYN, également appelé scan stealth. Il est appelé "stealth" car il ne termine pas la totalité de la main - droite TCP, ce qui le rend moins susceptible d'être enregistré par la cible.
  • -sU : Ce drapeau indique à Nmap d'effectuer un scan UDP. Les scans UDP sont généralement plus lents et moins fiables que les scans TCP car UDP est un protocole sans connexion.
  • 192.168.1.1 : C'est l'adresse IP cible que vous allez scanner. Note : Dans un scénario du monde réel, vous ne devriez scanner des réseaux et des hôtes que si vous disposez d'une autorisation expresse. Pour ce laboratoire, nous supposerons que 192.168.1.1 est une cible valide dans votre environnement de test. Si vous n'avez pas d'hôte à cette adresse, vous pouvez le remplacer par l'adresse IP de votre VM LabEx (généralement 127.0.0.1 ou localhost).

Maintenant, exécutons le scan combiné. Ouvrez votre terminal Xfce et entrez la commande suivante :

sudo nmap -sS -sU 192.168.1.1

Vous devriez être invité à entrer votre mot de passe. Étant donné que l'utilisateur labex a des privilèges sudo sans mot de passe, appuyez simplement sur Entrée.

La sortie montrera les ports ouverts, fermés ou filtrés pour les deux protocoles TCP et UDP sur l'hôte cible. Cela peut prendre quelques minutes pour se terminer, en particulier le scan UDP.

Exemple de sortie (la sortie réelle variera selon l'hôte cible) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 998 closed tcp ports (reset)
PORT    STATE SERVICE
22/tcp  open  ssh
80/tcp  open  http

Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 996 closed udp ports (reset)
PORT      STATE         SERVICE
53/udp    open|filtered domain
67/udp    open|filtered dhcps
137/udp   open|filtered netbios-ns

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

Dans cet exemple, Nmap a trouvé les ports TCP 22 et 80 ouverts, et les ports UDP 53, 67 et 137 ouverts ou filtrés. L'état open|filtered signifie que Nmap n'a pas pu déterminer si le port est ouvert ou filtré en raison des conditions réseau ou des règles de pare - feu.

Scan des ports spécifiques avec nmap -sS -sU -p 22,53 127.0.0.1

Dans l'étape précédente, vous avez effectué un scan combiné TCP et UDP sur un hôte cible. Maintenant, vous allez apprendre à scanner des ports spécifiques à l'aide de Nmap. Cela est utile lorsque vous voulez concentrer votre scan sur des services ou des vulnérabilités particuliers.

L'option -p dans Nmap vous permet de spécifier les ports que vous voulez scanner. Vous pouvez spécifier un seul port, une plage de ports ou une liste séparée par des virgules de ports.

Dans cette étape, vous allez scanner les ports 22 (SSH) et 53 (DNS) sur l'hôte local (127.0.0.1).

Ouvrez votre terminal Xfce et entrez la commande suivante :

sudo nmap -sS -sU -p 22,53 127.0.0.1

Encore une fois, vous devriez être invité à entrer votre mot de passe. Étant donné que l'utilisateur labex a des privilèges sudo sans mot de passe, appuyez simplement sur Entrée.

Cette commande indique à Nmap d'effectuer un scan TCP SYN et un scan UDP sur les ports 22 et 53 de l'hôte local.

Exemple de sortie (la sortie réelle peut varier) :

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.000027s latency).

PORT   STATE SERVICE
22/tcp open  ssh

Nmap scan report for localhost (127.0.0.1)
Host is up (0.000027s latency).

PORT   STATE         SERVICE
53/udp open|filtered domain

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

Dans cet exemple, Nmap a trouvé le port TCP 22 (SSH) ouvert et le port UDP 53 (DNS) ouvert ou filtré. L'état open|filtered signifie que Nmap n'a pas pu déterminer si le port est ouvert ou filtré en raison des conditions réseau ou des règles de pare - feu. Étant donné que nous sommes en train de scanner l'hôte local, il est probable que le service soit en cours d'exécution, mais un pare - feu pourrait interférer avec le scan.

En spécifiant les ports à scanner, vous pouvez réduire considérablement le temps de scan et vous concentrer sur les services qui vous intéressent.

Ajoutez de la détaillement avec nmap -v -sS -sU 192.168.1.1

Dans cette étape, vous allez apprendre à augmenter le détaillement des scans Nmap. Le détaillement fournit des informations plus détaillées sur le processus de scan, ce qui peut être utile pour le dépannage ou la compréhension du comportement de Nmap.

L'option -v dans Nmap augmente le niveau de détaillement. Vous pouvez l'utiliser plusieurs fois (par exemple, -vv) pour une sortie encore plus détaillée.

Ajoutons du détaillement au scan combiné TCP SYN et UDP que vous avez effectué dans la première étape. Ouvrez votre terminal Xfce et entrez la commande suivante :

sudo nmap -v -sS -sU 192.168.1.1

Vous devriez être invité à entrer votre mot de passe. Étant donné que l'utilisateur labex a des privilèges sudo sans mot de passe, appuyez simplement sur Entrée.

Cette commande effectuera le même scan combiné que précédemment, mais avec un détaillement accru.

Exemple de sortie (la sortie réelle variera selon l'hôte cible et le niveau de détaillement) :

Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:10 UTC
NSE: Chargé 0 scripts pour le scan.
Lancement du scan SYN Stealth à 10:10
Scan de 192.168.1.1 [1000 ports]
Scan SYN Stealth terminé à 10:10, 0.00s écoulé (1000 ports au total)
Lancement du scan UDP à 10:10
Scan de 192.168.1.1 [1000 ports]
Scan UDP terminé à 10:10, 5.00s écoulé (1000 ports au total)
Rapport de scan Nmap pour 192.168.1.1
L'hôte est actif (0.00020s de latence).
Non montré : 998 ports tcp fermés (réinitialisation)
PORT    ÉTAT SERVICE
22/tcp  ouvert ssh
80/tcp  ouvert http

Rapport de scan Nmap pour 192.168.1.1
L'hôte est actif (0.00020s de latence).
Non montré : 996 ports udp fermés (réinitialisation)
PORT      ÉTAT         SERVICE
53/udp    ouvert|filtré domaine
67/udp    ouvert|filtré dhcps
137/udp   ouvert|filtré netbios-ns

Scan Nmap terminé : 1 adresse IP (1 hôte actif) scanné en 5.00 secondes

Remarquez que la sortie inclut désormais des informations sur le lancement du scan, le nombre de ports scannés et le temps écoulé pour chaque phase de scan. Cela peut être utile pour surveiller l'avancement du scan et identifier tout problème potentiel.

Enregistrez les résultats combinés avec nmap -sS -sU -oN tcpudp.txt 127.0.0.1

Dans cette étape, vous allez apprendre à enregistrer les résultats des scans Nmap dans un fichier. Cela est utile pour une analyse ultérieure, la rédaction de rapports ou la comparaison avec des scans antérieurs.

Nmap propose plusieurs options pour enregistrer les résultats des scans dans différents formats. L'option -oN enregistre les résultats au format "normal" lisible par l'homme.

Dans cette étape, vous allez enregistrer les résultats d'un scan combiné TCP SYN et UDP de l'hôte local (127.0.0.1) dans un fichier nommé tcpudp.txt dans votre répertoire ~/projet.

Ouvrez votre terminal Xfce et entrez la commande suivante :

sudo nmap -sS -sU -oN tcpudp.txt 127.0.0.1

Vous devriez être invité à entrer votre mot de passe. Étant donné que l'utilisateur labex a des privilèges sudo sans mot de passe, appuyez simplement sur Entrée.

Cette commande effectuera le scan combiné et enregistrera les résultats dans le fichier tcpudp.txt.

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

cat tcpudp.txt

Exemple de sortie (la sortie réelle peut varier) :

## Nmap 7.80 scan initiated Fri Oct 27 10:15:00 2023 as: nmap -sS -sU -oN tcpudp.txt 127.0.0.1
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000027s latency).
PORT   STATE SERVICE
22/tcp open  ssh

Nmap scan report for localhost (127.0.0.1)
Host is up (0.000027s latency).

PORT   STATE         SERVICE
53/udp open|filtered domain

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

La sortie montre les résultats du scan au format lisible par l'homme, y compris les ports ouverts et les services associés. Le fichier contient également des informations sur la version de Nmap, l'heure d'initiation du scan et la durée du scan.

Vous pouvez désormais utiliser ce fichier pour une analyse ou une rédaction de rapport plus approfondie.

Comparez les sorties TCP et UDP dans le terminal Xfce

Dans cette étape, vous allez comparer les résultats des scans TCP et UDP pour comprendre les différences entre les services exécutés sur chaque protocole. Vous utiliserez la commande grep pour filtrer la sortie du fichier tcpudp.txt créé dans l'étape précédente et observer les différences.

Tout d'abord, affichons le contenu du fichier tcpudp.txt à l'aide de la commande cat :

cat tcpudp.txt

Vous devriez voir les résultats combinés des scans TCP et UDP pour l'hôte local (127.0.0.1).

Maintenant, filtrons la sortie pour ne montrer que les résultats du scan TCP. Utilisez la commande grep pour rechercher les lignes contenant "tcp" :

grep "tcp" tcpudp.txt

Exemple de sortie :

22/tcp open  ssh

Cela montre les ports TCP ouverts sur l'hôte local. Dans cet exemple, le port 22 (SSH) est ouvert.

Ensuite, filtrons la sortie pour ne montrer que les résultats du scan UDP. Utilisez la commande grep pour rechercher les lignes contenant "udp" :

grep "udp" tcpudp.txt

Exemple de sortie :

53/udp open|filtered domain

Cela montre les ports UDP ouverts ou filtrés sur l'hôte local. Dans cet exemple, le port 53 (domaine) est ouvert ou filtré.

En comparant les sorties TCP et UDP, vous pouvez voir quels services sont exécutés sur chaque protocole. TCP est généralement utilisé pour les services fiables et orientés connexion comme SSH, tandis que UDP est souvent utilisé pour les services sans connexion comme DNS (domaine). L'état open|filtered pour UDP indique que Nmap n'a pas pu déterminer si le port est ouvert ou filtré en raison de la nature du protocole UDP.

En résumé, en utilisant grep pour filtrer la sortie du scan combiné TCP et UDP, vous pouvez facilement identifier les services exécutés sur chaque protocole et mieux comprendre les services réseau disponibles sur l'hôte cible.

Analyser les résultats dans le terminal Xfce

Dans cette étape, vous allez analyser les résultats des scans Nmap pour identifier les vulnérabilités potentielles et comprendre les services exécutés sur le système cible. Vous utiliserez les informations recueillies dans les étapes précédentes pour tirer des conclusions sur la posture de sécurité de la cible.

Commençons par examiner le contenu du fichier tcpudp.txt, qui contient les résultats combinés des scans TCP et UDP pour l'hôte local (127.0.0.1) :

cat tcpudp.txt

Sur la base de la sortie, vous pouvez identifier les éléments suivants :

  • Ports ouverts : Le scan révèle quels ports sont ouverts sur le système cible. Les ports ouverts indiquent des services qui écoutent activement les connexions.
  • Services : Nmap tente d'identifier les services exécutés sur chaque port ouvert. Ces informations peuvent être utilisées pour comprendre le but de chaque port et les vulnérabilités potentielles associées à ces services.
  • TCP vs. UDP : Le scan distingue entre les services TCP et UDP. TCP est orienté connexion et est généralement utilisé pour le transfert de données fiable, tandis que UDP est sans connexion et est souvent utilisé pour une communication plus rapide et moins fiable.
  • Ports filtrés : Pour les scans UDP, Nmap peut signaler les ports comme étant "open|filtered". Cela signifie que Nmap n'a pas pu déterminer si le port est ouvert ou filtré car UDP n'exige pas d'échanger des messages d'ouverture pour établir une connexion.

Maintenant, analysons les résultats en détail.

Dans les étapes précédentes, vous avez effectué un scan de l'hôte local (127.0.0.1) et trouvé que le port 22/tcp (SSH) et 53/udp (domaine) étaient ouverts ou filtrés.

  • Port 22 (SSH) : SSH est un protocole de shell sécurisé utilisé pour l'administration distante et le transfert de fichiers. Si SSH est exécuté, il est important de s'assurer qu'il est configuré de manière sécurisée avec des mots de passe forts ou une authentification basée sur des clés pour empêcher l'accès non autorisé.
  • Port 53 (domaine) : Le port 53 est généralement utilisé pour les services DNS (Domain Name System). Si ce port est ouvert, cela indique que le système peut exécuter un serveur DNS. Les serveurs DNS peuvent être vulnérables à diverses attaques, telles que l'empoisonnement DNS et l'intoxication du cache, il est donc important de les tenir à jour avec les dernières mises à jour de sécurité.

Pour analyser plus en détail les résultats, vous pouvez utiliser le moteur de scripts de Nmap (NSE) pour effectuer des scans de vulnérabilité plus approfondis. Cependant, cela dépasse les limites de ce laboratoire.

En conclusion, en analysant les résultats des scans Nmap, vous pouvez obtenir des informations précieuses sur les services exécutés sur le système cible et identifier les vulnérabilités potentielles qui doivent être traitées. N'oubliez pas toujours d'obtenir une autorisation appropriée avant de scanner tout réseau ou système.

Sommaire

Dans ce laboratoire, vous avez appris à combiner les scans TCP et UDP à l'aide de Nmap. Vous avez exécuté un scan combiné avec la commande nmap -sS -sU sur une adresse IP cible, où -sS effectue un scan TCP SYN et -sU un scan UDP. Vous avez également appris à scanner des ports spécifiques, à ajouter de la verbeosité au scan et à enregistrer les résultats combinés dans un fichier.

De plus, vous avez été instruits de comparer et d'analyser les sorties TCP et UDP dans le terminal Xfce. Rappelez-vous, dans les scénarios du monde réel, ne scannez des réseaux et des hôtes qu'avec une autorisation expresse.