Convertir les formats de sortie 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 à convertir les résultats d'un scan Nmap en différents formats de sortie pour faciliter l'analyse et le rapportage. Le laboratoire couvre la sauvegarde des résultats de scan au format XML en utilisant nmap -oX, puis la transformation de la sortie XML en HTML en utilisant xsltproc pour une visualisation dans un navigateur.

Vous allez également explorer la sauvegarde des résultats de scan au format pouvant être utilisé avec grep en utilisant nmap -oG, puis l'extraction d'informations spécifiques, telles que les adresses IP, en utilisant grep et les enregistrer dans un fichier texte pour une revue ultérieure. Cela permet d'extraire et de manipuler efficacement les données à partir des résultats de scan Nmap.

Enregistrer un scan au format XML avec nmap -oX scan.xml 192.168.1.1

Dans cette étape, vous allez apprendre à utiliser Nmap pour effectuer un scan et enregistrer les résultats au format XML. XML (Extensible Markup Language) est un langage de balisage qui définit un ensemble de règles pour encoder des documents dans un format à la fois lisible par l'homme et lisible par machine. Enregistrer les résultats de scan Nmap au format XML permet une analyse et un parsage faciles par d'autres outils et scripts.

Commençons par comprendre la commande :

nmap -oX scan.xml 192.168.1.1

  • nmap : C'est la commande pour exécuter le scanner Nmap.
  • -oX scan.xml : Cette option indique à Nmap d'enregistrer les résultats du scan au format XML dans un fichier nommé scan.xml. L'option -oX spécifie le format de sortie XML.
  • 192.168.1.1 : C'est l'adresse IP cible que Nmap va scanner. Remplacez-la par l'adresse IP réelle que vous souhaitez scanner si nécessaire. Pour ce laboratoire, nous utiliserons 192.168.1.1.

Maintenant, exécutons la commande dans la machine virtuelle LabEx. Ouvrez votre terminal Xfce et accédez au répertoire ~/project. C'est votre répertoire de travail par défaut.

cd ~/project

Ensuite, exécutez la commande Nmap pour scanner l'adresse IP cible et enregistrer les résultats dans scan.xml :

sudo nmap -oX scan.xml 192.168.1.1

Vous verrez Nmap exécuter le scan et afficher la progression dans le terminal. La sortie montrera les différentes étapes du scan, telles que la découverte des hôtes et le balayage des ports.

Une fois le scan terminé, vous pouvez vérifier que le fichier scan.xml a été créé dans votre répertoire ~/project. Vous pouvez utiliser la commande ls pour lister les fichiers dans le répertoire :

ls -l

Vous devriez voir scan.xml dans la liste des fichiers.

Vous pouvez également afficher le contenu du fichier scan.xml à l'aide de la commande cat ou d'un éditeur de texte tel que nano :

cat scan.xml

ou

nano scan.xml

La sortie sera un document XML volumineux contenant les détails du scan Nmap, y compris l'adresse IP cible, les ports ouverts et autres informations.

Convertir le XML en HTML avec xsltproc /usr/share/nmap/nmap.xsl scan.xml -o scan.html

Dans cette étape, vous allez apprendre à convertir la sortie XML du précédent scan Nmap au format HTML à l'aide de xsltproc. xsltproc est un outil de ligne de commande pour appliquer des feuilles de style XSLT (Extensible Stylesheet Language Transformations) à des documents XML. Cela vous permet de transformer les données XML en un format plus lisible par l'homme, tel que HTML.

Analysons la commande :

xsltproc /usr/share/nmap/nmap.xsl scan.xml -o scan.html

  • xsltproc : C'est la commande pour exécuter le processeur XSLT.
  • /usr/share/nmap/nmap.xsl : C'est le chemin vers la feuille de style XSLT fournie par Nmap. Cette feuille de style définit comment les données XML doivent être transformées en HTML.
  • scan.xml : C'est le fichier XML d'entrée que vous avez créé dans l'étape précédente.
  • -o scan.html : Cette option spécifie le nom de fichier de sortie pour le document HTML transformé. L'option -o signifie sortie.

Maintenant, exécutons la commande dans la machine virtuelle LabEx. Assurez-vous d'être dans le répertoire ~/project. Si ce n'est pas le cas, accédez-y en utilisant :

cd ~/project

Ensuite, exécutez la commande xsltproc pour convertir le fichier scan.xml en scan.html :

xsltproc /usr/share/nmap/nmap.xsl scan.xml -o scan.html

Cette commande lira le fichier scan.xml, appliquera la feuille de style nmap.xsl et générera un fichier HTML nommé scan.html dans le même répertoire.

Une fois la commande terminée, vous pouvez vérifier que le fichier scan.html a été créé dans votre répertoire ~/project. Vous pouvez utiliser la commande ls pour lister les fichiers dans le répertoire :

ls -l

Vous devriez voir scan.html dans la liste des fichiers.

Vous pouvez également afficher le contenu du fichier scan.html à l'aide de la commande cat ou d'un éditeur de texte tel que nano :

cat scan.html

ou

nano scan.html

La sortie sera un document HTML contenant les résultats du scan Nmap formatés.

Dans cette étape, vous allez ouvrir le fichier scan.html que vous avez créé dans l'étape précédente à l'aide du navigateur web Xfce. Cela vous permettra de visualiser les résultats du scan Nmap dans un format visuellement attrayant et facile à naviguer.

Pour ouvrir le fichier HTML dans le navigateur Xfce, vous pouvez utiliser la commande xdg-open. Cette commande est un moyen indépendant du bureau pour ouvrir des fichiers avec leurs applications associées.

Tout d'abord, assurez-vous d'être dans le répertoire ~/project. Si ce n'est pas le cas, accédez-y en utilisant :

cd ~/project

Ensuite, exécutez la commande suivante pour ouvrir le fichier scan.html dans le navigateur Xfce :

xdg-open scan.html

Cette commande lancera le navigateur web par défaut dans Xfce et affichera le contenu du fichier scan.html. Vous devriez voir un rapport formaté des résultats du scan Nmap, y compris des informations sur l'adresse IP cible, les ports ouverts et autres détails.

Vous pouvez maintenant examiner les résultats du scan dans le navigateur. Le format HTML le rend plus facile à lire et à comprendre que la sortie XML brute.

Enregistrer la sortie pouvant être filtrée avec nmap -oG scan.grep 127.0.0.1

Dans cette étape, vous effectuerez un autre scan Nmap, mais cette fois-ci vous enregistrerez la sortie au format "pouvant être filtrée" (grepable). Ce format est spécifiquement conçu pour être facilement analysé par des outils tels que grep, ce qui en fait un moyen simple d'extraire des informations spécifiques des résultats du scan.

L'option -oG dans la commande Nmap spécifie que la sortie doit être enregistrée au format pouvant être filtrée.

Analysons la commande :

nmap -oG scan.grep 127.0.0.1

  • nmap : C'est la commande pour exécuter le scanner Nmap.
  • -oG scan.grep : Cette option indique à Nmap d'enregistrer la sortie au format pouvant être filtrée dans un fichier nommé scan.grep.
  • 127.0.0.1 : C'est l'adresse IP cible pour le scan. 127.0.0.1 est l'adresse de bouclage, qui fait référence à la machine locale.

Maintenant, exécutons la commande dans la machine virtuelle LabEx. Assurez-vous d'être dans le répertoire ~/project. Si ce n'est pas le cas, accédez-y en utilisant :

cd ~/project

Ensuite, exécutez la commande Nmap pour enregistrer la sortie pouvant être filtrée :

nmap -oG scan.grep 127.0.0.1

Cette commande scannera l'adresse de bouclage (127.0.0.1) et enregistrera les résultats au format pouvant être filtrée dans le fichier scan.grep.

Une fois la commande terminée, vous pouvez vérifier que le fichier scan.grep a été créé dans votre répertoire ~/project. Vous pouvez utiliser la commande ls pour lister les fichiers dans le répertoire :

ls -l

Vous devriez voir scan.grep dans la liste des fichiers.

Vous pouvez également afficher le contenu du fichier scan.grep à l'aide de la commande cat ou d'un éditeur de texte tel que nano :

cat scan.grep

ou

nano scan.grep

La sortie sera un fichier texte contenant les résultats du scan Nmap au format facilement analysable avec grep.

Extraire les adresses IP avec grep "Host" scan.grep > hosts.txt

Dans cette étape, vous utiliserez la commande grep pour extraire les lignes contenant le mot "Host" à partir du fichier scan.grep que vous avez créé dans l'étape précédente. Ces lignes contiennent les adresses IP des hôtes scannés. Vous enregistrerez ensuite les lignes extraites dans un nouveau fichier nommé hosts.txt.

La commande grep est un outil puissant pour rechercher des motifs spécifiques dans des fichiers texte. Dans ce cas, vous l'utilisez pour trouver les lignes qui contiennent le mot "Host".

Le symbole > est utilisé pour la redirection de sortie. Il prend la sortie de la commande grep et la sauvegarde dans le fichier spécifié (hosts.txt). Si le fichier existe déjà, il sera remplacé.

Analysons la commande :

grep "Host" scan.grep > hosts.txt

  • grep : C'est la commande pour rechercher un motif dans un fichier.
  • "Host" : C'est le motif que vous recherchez. Dans ce cas, vous recherchez les lignes qui contiennent le mot "Host".
  • scan.grep : C'est le fichier dans lequel vous recherchez.
  • > : C'est l'opérateur de redirection de sortie. Il prend la sortie de la commande grep et la sauvegarde dans le fichier spécifié.
  • hosts.txt : C'est le fichier dans lequel vous enregistrez la sortie.

Maintenant, exécutons la commande dans la machine virtuelle LabEx. Assurez-vous d'être dans le répertoire ~/project. Si ce n'est pas le cas, accédez-y en utilisant :

cd ~/project

Ensuite, exécutez la commande grep pour extraire les adresses IP et les enregistrer dans le fichier hosts.txt :

grep "Host" scan.grep > hosts.txt

Cette commande recherchera le fichier scan.grep pour les lignes contenant "Host" et enregistrera ces lignes dans un nouveau fichier nommé hosts.txt.

Une fois la commande terminée, vous pouvez vérifier que le fichier hosts.txt a été créé dans votre répertoire ~/project. Vous pouvez utiliser la commande ls pour lister les fichiers dans le répertoire :

ls -l

Vous devriez voir hosts.txt dans la liste des fichiers.

Vous pouvez également afficher le contenu du fichier hosts.txt à l'aide de la commande cat ou d'un éditeur de texte tel que nano :

cat hosts.txt

ou

nano hosts.txt

La sortie sera un fichier texte contenant les lignes de scan.grep qui contiennent le mot "Host". Ces lignes contiendront l'adresse IP de l'hôte scanné.

Vérifier les données extraites dans le terminal Xfce

Dans cette étape, vous vérifierez les données extraites dans le fichier hosts.txt à l'aide du terminal Xfce. Cela vous permet de voir les adresses IP identifiées lors du scan Nmap.

Vous pouvez utiliser la commande cat pour afficher le contenu du fichier hosts.txt directement dans le terminal. Alternativement, vous pouvez utiliser un éditeur de texte tel que nano pour ouvrir le fichier et vérifier les données.

Tout d'abord, assurez-vous d'être dans le répertoire ~/project. Si ce n'est pas le cas, accédez-y en utilisant :

cd ~/project

Pour afficher le contenu du fichier hosts.txt à l'aide de la commande cat, exécutez la commande suivante :

cat hosts.txt

Cela affichera le contenu du fichier hosts.txt dans le terminal. Vous devriez voir des lignes commençant par "Host:" suivies de l'adresse IP et d'autres informations.

Alternativement, pour ouvrir le fichier hosts.txt à l'aide de l'éditeur de texte nano, exécutez la commande suivante :

nano hosts.txt

Cela ouvrira le fichier hosts.txt dans l'éditeur nano. Vous pouvez ensuite parcourir le fichier et vérifier les données extraites. Pour quitter nano, appuyez sur Ctrl+X, puis Y pour enregistrer (si vous avez effectué des modifications), puis Entrée.

En vérifiant les données extraites, vous pouvez confirmer que la commande grep a extrait avec succès les lignes contenant les adresses IP à partir du fichier scan.grep.

Sommaire

Dans ce laboratoire, vous avez appris à utiliser Nmap pour enregistrer les résultats du scan dans différents formats. Tout d'abord, vous avez effectué un scan Nmap et enregistré la sortie au format XML en utilisant l'option -oX, en créant un fichier nommé scan.xml. Cela permet une analyse et un parsage faciles par d'autres outils.

Ensuite, le laboratoire vous guide dans la conversion de la sortie XML au format HTML en utilisant xsltproc et la feuille de style nmap.xsl, en créant un fichier scan.html lisible par l'homme. Enfin, vous allez apprendre à enregistrer la sortie au format grepable et à extraire des informations spécifiques, telles que les adresses IP, en utilisant grep.