scapy 学习小记

前几天用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指定的函数对过滤到的包进行处理。


发表评论