Я пытаюсь проанализировать файл pcap в python. Моя цель состоит в том, чтобы вытащить тип файла TCP или UDP и время начала и окончания. Кто-нибудь может посоветовать какие-либо определенные пакеты, которые могут быть полезны для использования, и документация для них или совет в целом при написании?
Анализ pcap файла в python
Ответ 1
Я бы использовал python-dpkt. Вот документация: http://www.commercialventvac.com/dpkt.html
Это все, что я знаю, как это сделать, хотя извините.
#!/usr/local/bin/python2.7
import dpkt
counter=0
ipcounter=0
tcpcounter=0
udpcounter=0
filename='sampledata.pcap'
for ts, pkt in dpkt.pcap.Reader(open(filename,'r')):
counter+=1
eth=dpkt.ethernet.Ethernet(pkt)
if eth.type!=dpkt.ethernet.ETH_TYPE_IP:
continue
ip=eth.data
ipcounter+=1
if ip.p==dpkt.ip.IP_PROTO_TCP:
tcpcounter+=1
if ip.p==dpkt.ip.IP_PROTO_UDP:
udpcounter+=1
print "Total number of packets in the pcap file: ", counter
print "Total number of ip packets: ", ipcounter
print "Total number of tcp packets: ", tcpcounter
print "Total number of udp packets: ", udpcounter
Update:
Ответ 2
Возможно, вы захотите начать с scapy.