Utilisation de Nmap en Python

Voici un exemple de code Python qui utilise la bibliothèque Nmap pour effectuer une analyse de port sur une adresse IP ou une plage d’adresses IP spécifiée.

Tout d’abord, il faut installer la bibliothèque python-nmap.

Pour cela, il suffit d’ouvrir le terminal et de saisir la commande suivante :

pip install python-nmap

Une fois installée, voici un exemple de code pour utiliser nmap :

import nmap

# Créez un objet nmap.PortScanner
scanner = nmap.PortScanner()

# Définir l'adresse IP à scanner
ip_address = "127.0.0.1"

# Utilisez la méthode scan() de l'objet scanner pour effectuer une analyse de port sur l'adresse IP spécifiée
scanner.scan(ip_address, arguments="-p 1-65535")

# Récupérer les détails de l'analyse
print("Host : %s (%s)" % (ip_address, scanner[ip_address].hostname()))
print("State : %s" % scanner[ip_address].state())

# Itérez sur les ports pour récupérer les détails
for port in scanner[ip_address]['tcp']:
    print("Port : %s\tState : %s\tService : %s" % (port, scanner[ip_address]['tcp'][port]['state'], scanner[ip_address]['tcp'][port]['name']))

Dans cet exemple, nous avons créé un objet nmap.PortScanner et défini l’adresse IP à scanner. Nous avons ensuite utilisé la méthode scan() de l’objet scanner pour effectuer une analyse de port sur l’adresse IP spécifiée.

Nous avons utilisé l’argument -p 1-65535 pour spécifier que nous voulons analyser tous les ports de 1 à 65535.

Enfin, nous avons itéré sur les ports pour récupérer les détails de chaque port, y compris son état (ouvert ou fermé) et le nom du service s’il est disponible.

Il est important de noter que nmap peut être utilisé pour bien plus que l’analyse de port – il peut également être utilisé pour effectuer des scans de vulnérabilité, des scans d’exploration de réseau, etc. Vous pouvez consulter la documentation de la bibliothèque Nmap pour plus d’informations sur ses capacités.

Un petit rappel des commandes de base de Nmap : https://blog.nohackme.com/2023/03/cheat-sheet-des-commandes-nmap/

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.