[Python] [Scapy] Recevoir de la Data [Expert Network & Python Only]
bonjour voila mon projet est de pouvoir envoyer un packet avec scapy avec un port de destination tres special (genre 80 ou 22 ou 161 ou 123 ...)
et si l'ip repond au packet envoyer c'est bon cela veux dire que le port est ouvert
bon voila je sais comment envoyer le packet
dans l'exemple j'ai choisis le protocole UDP (port 161) lié au service SNMP
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
#!/usr/bin/env python
from scapy.all import *
import socket
import subprocess
import sys
from datetime import datetime
subprocess.call('clear', shell=True)
adresseIP = raw_input("Adresse IP : ")
data ="\x14"
packet = IP(dst=adresseIP)/UDP(dport=161)/Raw(load=data)
send(packet) |
Bon voila la j'ai envoyer le packet mais comment obtenir la reponse et savoir si on recoit quelque chose ou pas pour savoir si le port est ouvert ou fermer
j'ai penser a cette fonction sr1()
en codant ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
#!/usr/bin/env python
import socket
import subprocess
import sys
from scapy.all import *
from datetime import datetime
subprocess.call('clear', shell=True)
adresseIP = raw_input("Adresse IP : ")
pingr = IP(dst=adresseIP)/UDP(dport=161)
sr1(pingr) |
La aussi le probleme est que meme sur des machines ou j'ai installer snmp et activer via un service snmpd restart et où le port 161 est open (test via nmap) je got aucun packet
mais genre si je tape www.google.com je recois quelque chose 8O
Des idée pour m'aider a recevoir la reponse d'un packet envoyer sur le port 161 ?
Merci d'avance