首先是抓包,使用scapy模块,
sniff()函数 在其中参数为本地文件路径时,操作为打开本地文件
若参数为BPF过滤规则和回调函数,则进行Sniff,回调函数用于对Sniff到的数据包进行处理
import os from scapy.all import * pkts=[] count=0 pcapnum=0 filename='' def test_dump_file(dump_file): print "Testing the dump file..." if os.path.exists(dump_file): print "dump fie %s found." %dump_file pkts=sniff(offline=dump_file) count = 0 while (count<=2): print "----Dumping pkt:%s----" %dump_file print hexdump(pkts[count]) count +=1 else: print "dump fie %s not found." %dump_file def write_cap(x): global pkts global count global pcapnum global filename pkts.append(x) count +=1 if count ==3: <span >#每3个TCP操作封为一个包(为了检测正确性,使用时尽量增多)</span> pcapnum +=1 pname="pcap%d.pcap"%pcapnum wrpcap(pname,pkts) filename ="./pcap%d.pcap"%pcapnum test_dump_file(filename) pkts=[] count=0 if __name__=='__main__': print "Start packet capturing and dumping ..." sniff(filter="dst net 127.0.0.1 and tcp",prn=write_cap) #BPF过滤规则
当前名称:python抓包保存为pcap文件并解析的实例-创新互联
本文链接:https://www.cdcxhl.com/article42/deoeec.html
成都网站建设公司_创新互联,为您提供网站导航、网站建设、用户体验、App开发、全网营销推广、域名注册
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联