Bonjour à tous,
Lors de mes dernières visites sur le forum, j'ai pu remarquer un ou deux codes python permettant d'analyser un réseau local.
Je vais présenter un module python dont son principal intérêt est de travailler toutes sortes d'outils réseau, il s'agit de scapy.
Scapy est téléchargeable facilement, vous pouvez faire une recherche via votre moteur de recherche préféré en indiquant scapy + votre OS.
Objectif
À partir d'une plage d'adresses, vous pourrez tester les périphériques connectés à votre réseau... alors quel intérêt ?
C'est un code très basique, si vous souhaitez plus élaboré, on peut y travailler sans problème, c'est simplement pour donner une meilleure idée à ceux qui veulent faire la même chose mais avec des outils non portables (commande ping, nmap, ...) de trouver mieux !
Voici ce que vous attendez depuis un moment
Ce code s'exécute simplement et en mode administrateur !
Exemple sous Ubuntu
Avec comme résultat
J'attends vos avis et questions... car on peut évidemment aller bien plus loin avec ce module.
Bonne soirée !
Lors de mes dernières visites sur le forum, j'ai pu remarquer un ou deux codes python permettant d'analyser un réseau local.
Je vais présenter un module python dont son principal intérêt est de travailler toutes sortes d'outils réseau, il s'agit de scapy.
Scapy est téléchargeable facilement, vous pouvez faire une recherche via votre moteur de recherche préféré en indiquant scapy + votre OS.
Objectif
À partir d'une plage d'adresses, vous pourrez tester les périphériques connectés à votre réseau... alors quel intérêt ?
- Savoir si quelqu'un d'autre se connecte à votre réseau
- Se souvenir de l'adresse IP d'un périphérique
C'est un code très basique, si vous souhaitez plus élaboré, on peut y travailler sans problème, c'est simplement pour donner une meilleure idée à ceux qui veulent faire la même chose mais avec des outils non portables (commande ping, nmap, ...) de trouver mieux !
Voici ce que vous attendez depuis un moment
Code:
from sys import exit import logging logging.getLogger("scapy.runtime").setLevel(logging.ERROR) try: from scapy.all import * except: exit("Il vous manque l'installation du module scapy") IPS = [] rang = '192.168.0.1-255' rep,non_rep = sr( IP(dst=rang) / ICMP() , timeout=0.5 ) for elem in rep: emis, recu = elem if recu.type == 0: IPS.append(recu.src) #On ajoute l'IP print('\n'.join(IPS))
Exemple sous Ubuntu
Code:
sudo python3 network.py
Code:
Begin emission: .*Finished to send 15 packets. Received 5 packets, got 3 answers, remaining 12 packets 192.168.0.1 192.168.0.2 192.168.0.5
Bonne soirée !
Commentaire