Scapy è uno strumento di manipolazione dei pacchetti per le reti scritto in Python. Con scapy include packet generator, network scanner, network discovery tool e packet sniffer e tanto altro.
Scapy fornisce un’interfaccia Python in libpcap in un modo simile a quella di Wireshark.
Ecco qua le basi sull’ utilizzo di scapy.
Prima cosa per installare Scapy su ubuntu basta la seguente istruzione.
1 |
sudo apt-get install python-scapy |
Dopo aver fatto cio lanciamo il nostro scapy
1 |
sudo scapy |
Ora abbiamo il nostro prompt di scapy digitiamo le seguenti istruzioni:
1 2 |
ip = IP() ip.display() |
Con queste istruzioni creiamo un oggetto ip e poi con la funziona display vediamo le proprietà.
Ora sostituiamo ip destinatario e visualizziamo i cambiamenti
1 2 |
ip.dst="192.168.198.138" i.display() |
Ora creiamo un oggetto ICMP e con la funziona display vediamo le proprietà.
1 2 |
icmp = ICMP() icmp.display() |
Ora utilizzeremo questo comando per inviare il pacchetto alla rete e ascoltare un singolo pacchetto in risposta. Si noti che il terzo carattere è il numero 1
1 |
sr1 (ip / icmp) |
Utilizzare questo comando per inviare un pacchetto IP/ICMP che contiene il dato “Pinco Pallo via icmp”
1 |
sr1 (ip / icmp / "Pinco Pallo via icmp") |
Ora vediamo come mandare un udp la procedura è quasi uguale.
Creiamo oggetto Udp e sempre con la funzione display vediamo le proprietà
1 2 |
udp = UDP() udp.display() |
Ora settiamo la porta giusta da mandare al server udp e visualizziamo il cambiamento.
1 2 |
udp.dport = 5555 udp.display() |
Dopo aver fatto tutto questo lanciamo il comando per inviare il pacchetto UDP.
1 |
send(ip/udp/"Pinco Pallo via udp \n") |