python语言下linux&windows下安装pcap包
2016-03-29 22:26
609 查看
0x01. 写了一个嗅探流量的工具,利用的就是pcap包对网站进行流量嗅探,但是直接安装pypcap包是出现
pcap.h not found的错误。原来准备写这篇博客的,昨天移植的时候有出现这样的问题,也忘记怎么解决
了,于是又是各种测试,看到问这个问题的挺多,给出答案的却很少。
0x02.windows下的要先按照winpcap,设置环境变量,安装python的pcap包才能成功,由于大家用的多为
linux系统,windows下就不在详细解析了。
0x03. linux下安装pcap包
如果出现make: yacc:命令未找到错误
安装bison包进行解决问题
apt-get install bison
首先要安装flex-2.6.0安装包,版本其他应该可以
下载地址 http://flex.sourceforge.net/
执行命令如下
tar -xvf flex-2.6.0.tar.bz2
进入flex-2.6.0目录下,执行命令
./configure
make
sudo make install
在安装libpcap-1.7.4安装包,其他版本应该也可以,具体没有测试
下载地址 http://www.tcpdump.org/
tar -zxvf libpcap-1.7.4.tar.gz
进入libpcap-1.7.4目录下,执行命令
./configure
make
sudo make install
如果安装成功,进入python命令下,import pcap不会出现错误,如下所示
下一步就是我们要安装的pypcap包
下载地址
https://pypi.python.org/pypi/pypcap
解压pypcap-1.1.4.tar.gz,进入pypcap-1.1.4文件夹
安装命令
python setup.py install
安装成功后就可以进行拦截流量了,拦截流量的代码如下:
如果要想解析pcap包还需要安装dpkt包
获取http流量代码如下:
pcap.h not found的错误。原来准备写这篇博客的,昨天移植的时候有出现这样的问题,也忘记怎么解决
了,于是又是各种测试,看到问这个问题的挺多,给出答案的却很少。
0x02.windows下的要先按照winpcap,设置环境变量,安装python的pcap包才能成功,由于大家用的多为
linux系统,windows下就不在详细解析了。
0x03. linux下安装pcap包
如果出现make: yacc:命令未找到错误
安装bison包进行解决问题
apt-get install bison
首先要安装flex-2.6.0安装包,版本其他应该可以
下载地址 http://flex.sourceforge.net/
执行命令如下
tar -xvf flex-2.6.0.tar.bz2
进入flex-2.6.0目录下,执行命令
./configure
make
sudo make install
在安装libpcap-1.7.4安装包,其他版本应该也可以,具体没有测试
下载地址 http://www.tcpdump.org/
tar -zxvf libpcap-1.7.4.tar.gz
进入libpcap-1.7.4目录下,执行命令
./configure
make
sudo make install
如果安装成功,进入python命令下,import pcap不会出现错误,如下所示
下一步就是我们要安装的pypcap包
下载地址
https://pypi.python.org/pypi/pypcap
解压pypcap-1.1.4.tar.gz,进入pypcap-1.1.4文件夹
安装命令
python setup.py install
安装成功后就可以进行拦截流量了,拦截流量的代码如下:
如果要想解析pcap包还需要安装dpkt包
获取http流量代码如下:
import pcap import dpkt pc = pcap.pcap('eth0') pc.setfilter('tcp port 80') for ptime,pdata in pc: p = dpkt.ethernet.Ethernet(pdata) if p.data.__class__.__name__ == 'IP': ip='%d.%d.%d.%d' % tuple(map(ord,list(p.data.dst))) if p.data.data.__class__.__name__ == 'TCP': if p.data.data.dport == 80 and len(p.data.data.data)>0: http = dpkt.http.Request(p.data.data.data) print http.headers结果如下
相关文章推荐
- centos 6 环境下用maven编译安装hadoop2.7.2源码包
- 关于RT2870 linux驱动Ad-Hoc模式下出错的调试
- linux find cp创建对应目录并复制
- CentOS系统资源监控软件四大软件htop,top,ps,dstat
- 《Linux内核分析》第六周学习笔记
- CentOS7或RHEL 7上修改主机名
- Linux内核分析(第六周)
- Centos环境中Rstudio的安装
- linux gpio export
- linux开机自启动
- linux字体配置问题之修改字族名称导致的覆盖问题
- 刘遄:读完《鸟哥的Linux私房菜》的感受。
- 2013337朱荟潼 Linux第三章读书笔记——进程管理
- insmod module.ko 出现Invalid parameters, dmesg显示信息:disagrees about version of symbol..
- linux下时间子系统
- linux基础命令练习1
- linux系统基础及简单安装步骤
- 【9】Linux-设备驱动概述
- Linux学习之路:变量值的删除、替代和替换
- Linux开发环境搭建 二 (Ubuntu串口工具minicom的安装及使用)