Modules Auxiliaires de Scan Metasploit

LinuxBeginner
Pratiquer maintenant

Introduction

Le Metasploit Framework est un outil open-source puissant utilisé pour les tests d'intrusion (penetration testing), l'évaluation des vulnérabilités et le développement d'exploits. Bien qu'il soit célèbre pour sa vaste collection d'exploits, il comprend également une suite de modules dits "auxiliaires". Ces modules effectuent des tâches qui n'impliquent pas d'exploitation directe, telles que la numérisation (scanning), le fuzzing, l'écoute (sniffing) et la reconnaissance.

Dans ce laboratoire, vous apprendrez à utiliser l'un des modules auxiliaires les plus fondamentaux de Metasploit : le scanner de ports TCP. Vous apprendrez à sélectionner un module, à configurer ses options telles que les hôtes cibles et les ports, et à exécuter le scan pour découvrir les ports ouverts sur une machine cible.

Utiliser le Module de Scan de Ports avec use auxiliary/scanner/portscan/tcp

Dans cette étape, vous allez démarrer la console Metasploit Framework et sélectionner le module de scan de ports TCP.

Premièrement, vous devez lancer la console Metasploit. C'est l'interface principale pour interagir avec le framework. Ouvrez votre terminal et exécutez la commande suivante :

msfconsole -q

L'indicateur (flag) -q signifie "quiet" (silencieux), ce qui supprime la bannière de démarrage pour une interface plus épurée. Une fois qu'elle est chargée, vous verrez l'invite de commande Metasploit, qui ressemble à msf >.

Ensuite, vous utiliserez la commande use pour sélectionner le module auxiliaire destiné au scan de ports TCP. Cette commande charge le module spécifié et le prépare pour la configuration.

Tapez la commande suivante dans l'invite Metasploit :

use auxiliary/scanner/portscan/tcp

Après avoir exécuté la commande, vous remarquerez que votre invite change pour refléter le module actuellement chargé. Cela confirme que vous travaillez maintenant dans le contexte du scanner de ports TCP.

Votre invite devrait maintenant ressembler à ceci :

msf auxiliary(scanner/portscan/tcp) >

Définir la Plage de Scan avec set RHOSTS 192.168.1.0/24

Dans cette étape, vous allez configurer la cible pour votre scan. Dans Metasploit, les hôtes cibles sont définis par la variable RHOSTS (Remote Hosts - Hôtes Distants).

Avant d'exécuter un module, vous devez lui indiquer où diriger ses actions. La commande set est utilisée pour configurer les options du module. RHOSTS peut être une adresse IP unique, un nom d'hôte, une plage d'adresses IP (par exemple, 192.168.1.10-192.168.1.20), ou une plage réseau en notation CIDR (par exemple, 192.168.1.0/24).

Pour ce laboratoire, nous allons scanner la machine locale pour trouver les services qui ont été démarrés par le script de configuration. L'adresse IP de la machine locale est 127.0.0.1.

Utilisez la commande set pour définir votre cible :

set RHOSTS 127.0.0.1

Metasploit confirmera le paramétrage en affichant la variable et sa nouvelle valeur :

RHOSTS => 127.0.0.1

Pour visualiser toutes les options disponibles pour le module actuel et vérifier vos paramètres, vous pouvez utiliser la commande show options à tout moment.

Configurer les Ports avec set PORTS 1-1000

Dans cette étape, vous allez spécifier quels ports scanner sur l'hôte cible. Par défaut, le scanner pourrait ne vérifier qu'une petite liste de ports courants. Pour effectuer un scan plus approfondi, vous devez configurer la variable PORTS.

L'option PORTS accepte une liste de ports séparés par des virgules (par exemple, 22,80,443) ou une plage de ports (par exemple, 1-1024). Le script de configuration pour ce laboratoire a démarré des services sur les ports 999 et 8000. Pour garantir que notre scan les trouve, nous allons scanner une large plage de ports.

Définissons la plage de ports de 1 à 10000. Utilisez à nouveau la commande set :

set PORTS 1-10000

La console confirmera le changement :

PORTS => 1-10000

Votre scanner est maintenant configuré pour vérifier chaque port de 1 à 10000 sur l'hôte cible 127.0.0.1.

Exécuter le Scan avec la Commande run

Dans cette étape, vous allez exécuter le scan de ports. Le module étant sélectionné et toutes les options nécessaires (RHOSTS et PORTS) configurées, vous êtes prêt à lancer le scanner.

La commande run (ou son alias, exploit) indique à Metasploit d'exécuter le module actuellement chargé avec les paramètres que vous avez fournis.

Pour démarrer le scan, tapez simplement :

run

Metasploit commencera le processus de scan. Il tentera de se connecter à chaque port dans la plage spécifiée sur l'hôte cible. Lorsqu'il trouve un port ouvert, il affichera un message dans la console. Vous devriez voir une sortie indiquant les ports ouverts que nous avons configurés précédemment.

La sortie ressemblera à ceci :

[+] 127.0.0.1             - 127.0.0.1:22 - TCP OPEN
[+] 127.0.0.1             - 127.0.0.1:3002 - TCP OPEN
[+] 127.0.0.1             - 127.0.0.1:3001 - TCP OPEN
[+] 127.0.0.1             - 127.0.0.1:5433 - TCP OPEN
[*] 127.0.0.1             - Scanned 1 of 1 hosts (100% complete)

Cette sortie confirme que le scanner a réussi à identifier les ports ouverts sur la machine locale.

Analyser les Résultats du Scan avec jobs -l

Dans cette étape, vous apprendrez à gérer les tâches Metasploit en tant que jobs en arrière-plan. Bien que les résultats du scan aient été affichés directement sur votre écran à l'étape précédente, les tâches plus longues sont souvent exécutées en arrière-plan pour garder la console libre pour d'autres commandes.

Pour exécuter un module en tant que job en arrière-plan, vous pouvez ajouter l'indicateur (flag) -j à la commande run. Essayons ceci avec notre scanner de ports.

run -j

Cette fois, au lieu d'attendre la fin du scan, vous récupérerez immédiatement l'invite de commande. Metasploit vous informera que le module s'exécute comme un job en arrière-plan.

[*] Auxiliary module running as background job 1.

Appuyez sur Enter pour continuer.

Pour voir une liste de tous les jobs en arrière-plan en cours d'exécution, vous pouvez utiliser la commande jobs. L'indicateur -l fournit une liste plus détaillée.

jobs -l

La sortie vous montrera l'ID, le nom et le statut du job.

Jobs
====

  Id  Name                             Payload  Payload opts
  --  ----                             -------  ------------
  1   Auxiliary: scanner/portscan/tcp

La commande jobs est essentielle pour gérer plusieurs tâches, comme exécuter un scan long tout en configurant un autre exploit. Vous pouvez interagir avec les jobs en utilisant leur ID, par exemple, pour visualiser leur sortie ou pour les arrêter.

Résumé

Félicitations pour avoir terminé le laboratoire ! Vous avez réussi à utiliser un module auxiliaire de Metasploit pour effectuer un scan de ports réseau.

Dans ce laboratoire, vous avez appris à :

  • Lancer la console Metasploit Framework (msfconsole).
  • Sélectionner un module auxiliaire en utilisant la commande use.
  • Configurer les options du module comme RHOSTS et PORTS avec la commande set.
  • Exécuter un module avec la commande run.
  • Exécuter des modules comme tâches en arrière-plan et les gérer avec la commande jobs.

Le scan de ports est une première étape critique dans tout test d'intrusion, et Metasploit offre une manière puissante et flexible d'accomplir cette tâche. Ceci n'est qu'un des centaines de modules auxiliaires disponibles. Nous vous encourageons à explorer d'autres modules pour différents types de scans et de reconnaissance.