前几天用scapy写了个用于802.1x认证的小程序。写完了回顾一下,虽然花了自己两天,但是其实是相当简单的。
今天找了一下,发现 http://blog.csdn.net/wang_walfred/article/details/40044141 一文,对入门非常有帮助。如果当时看了,至少能少耗一天呀。
在这里补充一下我的一点心得。
我的开发是从抓包开始的。抓包之后,就可以通过
pkts = rdpcap('xxxx.pcap')
读取,读取之后就可以用类似列表的办法如 pkgs[1] 来操作特定的数据包。
下面是一些命令:
hexdump(pkt) #have an hexadecimal dump pkt.command() #return a Scapy command that can generate the packet pkt.show() #for a developped view of the packet
其中 pkt.command() 可以返回一个string,运行就可以生成相应的packet,之后的修改就很方便了。
最后的心得是sniff:
sniff(filter='your filter', prn = lambda x: x.show()) # -> list of packets
可以调用prn指定的函数对过滤到的包进行处理。
发表评论