之前的nDPI项目里为了分析HTTP协议浪费了很长时间,自己编写函数解析gzip、chunked等传输格式,着实浪费了很长时间,而且解析的效果并不好。前几天看到了一个Python的开源软件httpcap,效果很好,在这里记录一下。
首先安装十分简单,使用命令pip install httpcap即可安装成功。
和NDPI很类似,他也可以直接从网卡抓取数据包或者直接处理已经得到的.pcap网络数据包。
# Use tcpdump to capture packets:
tcpdump -wtest.pcap tcp port 80
# only output the requested URL and response status
parse-pcap test.pcap
# or use pipe
sudo tcpdump -w- tcp port 80 | parse-pcap
# parse-live need to be root. capture network device en1
# on linux/osx ifconfig to see all network devices
sudo parse-live en1
# capture traffics on all devices
sudo parse-live
可以输入不同参数选择要显示的信息。
# output http req/resp headers
parse-pcap -v test.pcap
# output http req/resp headers and body which belong to text type
parse-pcap -vv test.pcap
# output http req/resp headers and body
parse-pcap -vvv test.pcap
# display and attempt to do url decoding and formatting json output
parse-pcap -vvb test.pcap
测试效果不错,比之前自己写的HTTP解析文件效果好多了,仔细看了一下源代码,感觉思路很清晰,也比较容易理解。时间比较紧,先写到这里,之后再把使用过程中学到的东西补上。
本文介绍了一个高效的Python开源软件httpcap,用于HTTP协议分析。通过简单的命令行操作即可完成网络数据包抓取及解析,相较于手动编写解析函数,httpcap不仅安装便捷且功能强大,能够输出请求/响应头和正文等详细信息。
3万+

被折叠的 条评论
为什么被折叠?



