0% ont trouvé ce document utile (0 vote)
195 vues10 pages

Analyse réseau avec Nmap sur Kali Linux

Ce document décrit les étapes pour effectuer une analyse réseau de base à l'aide de Nmap sur un réseau local virtuel contenant des machines Windows et Linux. Il montre comment effectuer un balayage ping, identifier les hôtes actifs, analyser les ports TCP et UDP, identifier les systèmes d'exploitation et les versions logicielles, et exécuter des scripts Nmap pour collecter des informations supplémentaires.

Transféré par

Mohamed El Haoudi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
195 vues10 pages

Analyse réseau avec Nmap sur Kali Linux

Ce document décrit les étapes pour effectuer une analyse réseau de base à l'aide de Nmap sur un réseau local virtuel contenant des machines Windows et Linux. Il montre comment effectuer un balayage ping, identifier les hôtes actifs, analyser les ports TCP et UDP, identifier les systèmes d'exploitation et les versions logicielles, et exécuter des scripts Nmap pour collecter des informations supplémentaires.

Transféré par

Mohamed El Haoudi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Lab: Analyse avec Nmap

Pour cet exercice pratique, utilisez la machine virtuelle Kali Linux et les trois
machines virtuelles cibles que vous avez configurées dans la « Configuration de
l'environnement des LABS ». Vous devez avoir trois machines virtuelles en cours
d’exécution : un contrôleur de domaine Active Directory, un client Windows 10 et
une machine virtuelle CentOS exécutant un serveur web. Cet exercice pratique
passe en revue une analyse réseau de base, l’enregistrement de la sortie et
l’utilisation de différents indicateurs.
ATTENTION Tout au long de ce laboratoire et des ateliers suivants, nous ferons
référence aux réseaux virtuels et aux adresses IP de la « Configuration de
l'environnement des LABS ». Si vous avez choisi de ne pas utiliser cette
configuration réseau, vous devez modifier les commandes pour analyser
correctement votre réseau de test configuré.

Comme présenté dans ce chapitre, la première étape pour trouver des cibles
possibles consiste à effectuer un balayage ping. Nmap permet plusieurs façons de
spécifier des adresses IP cibles. Vous pouvez spécifier une adresse IP unique, une
plage d’adresses IP, un réseau en notation CIDR ou même un fichier avec une liste
d’hôtes ou d’adresses IP à l’aide du <filename>flag.
CONSEIL Si vous avez une étendue spécifique, il peut être utile de créer un fichier
avec une liste de vos cibles dans la portée et d’utiliser l’indicateur -iL lors de
l’exécution de nmap. Vous êtes moins susceptible d’analyser par erreur quelque
chose qui est hors de portée si vous utilisez à plusieurs reprises la même liste au
lieu d’avoir à taper des adresses IP et des noms d’hôte à la main à chaque fois.
 

1. Commencez par faire un balayage ping sur votre réseau. Dans Kali Linux, ouvrez
deux fenêtres de console, l’une pour taper vos commandes nmap et l’autre pour
effectuer des tcpdumps si nécessaire. Dans la fenêtre de console nmap, tapez
nmap -sn -n -v [Link]/24 –reason, comme illustré à la Figure 3-25.

Page 1 sur 10
Figure 3-25 Balayage ping Nmap

Vous devriez avoir une sortie qui a un certain nombre de messages « [hôte vers le
bas, reçu aucune réponse] » et quelques messages « L’hôte est en place, a reçu
arp-réponse ». Comme indiqué précédemment, la première chose que nmap
tente pour un balayage ping ciblant le même réseau local est une demande ARP.
2. L’exécution de tcpdump -nnv -i eth0 lors de cette prochaine analyse confirmera que nmap
envoie uniquement des requêtes ARP. Vous pouvez également affiner vos
réponses pour n’afficher que les hôtes qui sont en place en ajoutant l’indicateur
--open à votre commande nmap. Révisez votre commande nmap afin d’obtenir une liste
des adresses IP uniquement qui répondent et videz-la dans un fichier que vous
pouvez utiliser comme liste cible pour une inspection plus approfondie (cet
exercice suppose que vous utilisez le nom de fichier myIPs) :
nmap -n -v -sn [Link]/24 --open | | du rapport grep cut -d » " -f 5 > myIPs; chat myIPs

Page 2 sur 10
3. Il y a quelques adresses IP qui n’ont pas besoin d’être analysées, à savoir celles
de votre machine hôte vm et de votre vm Kali, donc en utilisant votre éditeur de
texte préféré, supprimez ces adresses IP du fichier que vous venez de créer
nommé myIPs, et vous avez trois adresses IP restantes, comme indiqué ci-après.

4. Vous pouvez effectuer une traceroute sur ces hôtes, mais comme ils se trouvez
sur le même sous-réseau, vous n’obtiendriez vraiment pas beaucoup
d’informations, alors passez à l’analyse des ports.
5. Vous devriez avoir une liste de deux ou trois cibles, et il est maintenant temps
d’essayer de déterminer quels ports, le cas échéant, les hôtes écoutent. Étant
donné que nous sommes l’utilisateur root et que nous aimerions que cette
analyse de port soit effectuée le plus rapidement possible, nous allons effectuer
une analyse SYN (semi-ouverte) détaillée par rapport à la liste cible et enregistrer
la sortie (voir Figure 3-26)dans les trois principaux formats de fichiers : nmap
normal, nmap greppable et XML :
nmap -n -v -sS --reason -oA SYNScan -iL myIPs

Page 3 sur 10
Figure 3-26 Nmap SYN scan et enregistrer la sortie

6. Comme vous pouvez le voir dans la sortie, nous avons pas mal de ports ouverts,
certains sur chaque hôte. Si vous ajoutez l’indicateur --packet-trace à la fin de votre
commande précédente et que vous l’exécutez à nouveau, vous remarquerez

Page 4 sur 10
quelques éléments intéressants. Tout d’abord, les ports sont analysés dans un
ordre aléatoire. Toutefois, le même port sera analysé en même temps sur chaque
hôte. Deuxièmement, rappelez-vous que par défaut nmap analyse uniquement
les 1000 premiers ports TCP (par fréquence). Si nous voulons analyser les ports
UDP, nous devons le spécifier dans notre commande. Nous allons revenir aux 100
premiers ports et utiliser -T4 car les analyses UDP prennent plus de temps (voir
Figure 3-27):
ATTENTION Comme indiqué précédemment dans le chapitre, les analyses UDP
prennent plus de temps à se terminer en raison de UDP étant un protocole de «
meilleur effort » et s’appuyant sur des délais d’attente pour déterminer l’état du
port.
nmap -n -v -sU --top-ports 100 --reason --oA UDPScan -iL myIPs -T4

Page 5 sur 10
Figure 3-27 Analyse UDP Nmap

7. Notez lors de notre dernière analyse que dans le premier hôte, [Link],
nmap a pu déterminer que les ports UDP 53, 123 et 137 sont ouverts en raison de

Page 6 sur 10
l’analyse spécifique au protocole, tandis que sur l’hôte [Link], tous les
ports UDP s’affichent comme filtrés, car cet hôte exécute iptables. Vous devriez
maintenant avoir six fichiers d’analyse enregistrés ainsi.
8. Nous allons aller plus loin en essayant d’identifier les systèmes d’exploitation et
les versions de logiciels en cours d’exécution sur nos cibles. Nous allons faire un à
la fois: d’abord la numérisation de la version avec l’indicateur -V, et la seconde en
utilisant l’indicateur -O. L’exécution de nmap -n -v -sSV -oA VersionScans -iL myIPs nous donne
la sortie illustrée à la Figure 3-28.

Figure 3-28 Nmap avec analyse de version

9. L’utilisation de nmap -n -v -sS -O -oA OSScans -iL myIPs (sortie non affichée) enregistrera
les informations du système d’exploitation dans les trois formats de fichiers
principaux. Comme vous pouvez le voir, il n’est peut-être pas nécessaire
d’effectuer des analyses du système d’exploitation. Dans notre cas, nous pouvons
être à peu près certains que nous avons affaire à une organisation qui exécute
une majorité de systèmes d’exploitation Windows. Si c’est toute l’information
dont nous avions besoin, nous pourrions nous arrêter ici. Si, cependant, nous
n’étions pas sûrs du système d’exploitation à partir de l’analyse de la version ou si
nous avions besoin d’informations plus détaillées, nous pourrions effectuer notre
analyse des empreintes digitales du système d’exploitation.

Page 7 sur 10
10. Nous connaissons maintenant la version du système d’exploitation ainsi que
les versions du logiciel en cours d’exécution sur le système cible. Nous vérifierons
s’il existe des scripts que nous pouvons exécuter pour recueillir plus
d’informations sur notre cible. Par défaut, tous les scripts NSE sont stockés
dans /usr/share/nmap/scripts. Si vous souhaitez voir tous les scripts pour une
catégorie donnée, vous pouvez utiliser grep pour rechercher tous les fichiers pour
cette catégorie, dos dans cet exemple et les imprimer à l’écran comme suit :
grep -H categories /usr/share/nmap/scripts/* | grep dos | couper -d « : » -f 1
11. Si vous souhaitez rechercher une catégorie différente, modifiez simplement
votre deuxième commande grep, en remplaçant dos par la catégorie de votre choix.
Gardez à l’esprit que les scripts peuvent être dans plusieurs catégories.
12. Nous allons commencer par analyser un hôte cible avec les scripts activés.
N’oubliez pas que vous pouvez effectuer ces analyses sur l’ensemble d’un réseau.
Nous ne ciblons qu’un seul hôte pour minimiser un peu notre sortie. En regardant
la figure 3-29,nous exécutons une analyse SYN avec la détection de version et les
scripts par défaut activés par rapport à [Link], qui est notre serveur
Windows 2016: nmap -sSVC -n -v -iL myIPs. Dans la sortie (tronquée), nous voyons que
nmap a exécuté des scripts SMB et NetBIOS pour essayer de collecter des
informations sur le serveur Windows, et il a pu déterminer le nom d’hôte et le
domaine auquel le serveur appartient. Vous devriez voir plus de sortie dans votre
analyse, y compris des informations sur le serveur Web en cours d’exécution, ainsi
que certaines informations Active Directory. N’oubliez pas, cependant, qu’il n’y a
pas que les scripts par défaut.

Page 8 sur 10
Figure 3-29 Nmap avec les scripts par défaut activés

13. Il existe une catégorie de script appelée vuln, et nous pouvons le spécifier lors
de l’exécution de notre analyse nmap en utilisant l’option --script=vuln en tant que
telle : nmap --script=vuln [Link] -Pn -n -v. Cela peut prendre un peu plus de temps à
exécuter car nous recherchons de nombreuses vulnérabilités, mais si vous n’avez
pas mis à jour votre machine virtuelle Windows 2016 depuis que vous l’avez
configurée dans Configuration de l'environnement des LABS,vous devriez voir
quelque chose de similaire à la figure 3-30, un serveur VULNÉRABLE!

Figure 3-30 Nmap MS17-010 VULNERABL

Page 9 sur 10
14. Notez que nmap a vérifié trois vulnérabilités SMB, MS10-054, MS10-061 et
MS17-010. Ces scripts (et tous) peuvent être exécutés indépendamment les uns
des autres en utilisant la même option --script= en utilisant le nom de fichier du script
moins l’extension .nse. Par exemple, si nous voulions vérifier uniquement ms17-
010, nous pourrions utiliser la commande nmap --script=smb-vuln-ms17-010 -p445 [Link] .
Allez-y et essayez-le. Vous devriez obtenir le même résultat VULNÉRABLE.
15. Mais comment avons-nous su spécifier le port? Nous avons lu le fichier NSE!
Nous pouvons également utiliser grep pour obtenir les informations d’utilisation
de tout script que nous voulons exécuter. Chaque script NSE a une section @usage qui
explique comment utiliser le script. Si nous voulions obtenir les informations
d’utilisation du script que nous venons d’exécuter, nous pourrions utiliser la
commande suivante:
grep -A5 « @usage » /usr/share/nmap/scripts/[Link]
16. Essayez de faire de même pour le script [Link], et vous devriez
remarquer qu’il existe une autre option disponible dans ce script, à savoir l’option
--script-args. Cette option n’est nécessaire qu’avec certains scripts, vous n’aurez donc
pas besoin de la spécifier avec chaque script que vous exécutez. En cas de doute,
jetez toujours un coup d’œil à la section @usage dans le fichier NSE pour obtenir des
exemples sur la façon d’utiliser chaque script. Vous pouvez également utiliser
l’option --script-help=script_name pour obtenir des informations de base sur ce que le
script vérifiera.
17. Une fois que vous avez terminé de tester différentes options nmap et NSE,
vous pouvez fermer les fenêtres de votre terminal.

Page 10 sur 10

Vous aimerez peut-être aussi