pypcap Python网络抓包库

程序名称:pypcap

授权协议: 未知

操作系统: Linux

开发语言: Python

pypcap 介绍

Ethereal 自带许多协议的
decoder,简单,易用,基于winpcap的一个开源的软件.但是它的架构并不灵活,如何你要加入一个自己定义的的解码器,得去修改
Ethereal的代码,再重新编译,很烦琐.对于一般的明文
协议,没有什么问题,但是对于加密协议,比如网络游戏,客户端程序一般会在刚连接上的时候,发送一个随机密钥,而后的报文都会用这个密钥进行加密,如此.
要想破解,得要有一个可编程的抓包器.

libpcap是一个不错的选择,但是对于抓包这样需要反复进行”试 验->修改”这个过程的操作,c 语言显然不是明智的选择.

Python提供了几个libpcapbind,http://monkey.org/~dugsong/pypcap/这里有
一个最简单的。在windows平台上,你需要先安装winpcap,如果你已经安装了Ethereal非常好用

一个规范的抓包过程

import pcap
import dpkt
pc=pcap.pcap() #注,参数可为网卡名,如eth0
pc.setfilter(‘tcp port 80’) #设置监听过滤器
for ptime,pdata in pc: #ptime为收到时间,pdata为收到数据
print ptime,pdata #…

对抓到的以太网V2数据包(raw packet)进行解包

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 data.dport==80:
print p.data.data.data # by gashero

一些显示参数

nrecv,ndrop,nifdrop=pc.stats()
返回的元组中,第一个参数为接收到的数据包,(by gashero)第二个参数为被核心丢弃的数据包。

pypcap 官网

http://code.google.com/p/pypcap/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


IPTraf是一个使用简单的网络状况监视工具。
所谓 rootkit ,是一类入侵者经常使用的工具。这类工具通常非常的隐秘、令用户不易察觉,通过这类工具,入侵者建立了一条能够常时入侵系统,或者说对系统进行实时控制的
系统管理员可以利用Health Monitor 去监控网络中的每一台工作站PC或者服务器,一旦出现问题,它可以用邮件或者短信息的方式通知你。你还可以自行指定让它监控哪些组件和服务,比如CPU利
当服务器遭到黑客攻击时,在多数情况下,黑客可能对系统文件等等一些重要的文件进行修改。对此,我们用Tripwire建立数据完整性监测系统。虽然
Hobbit是一个基于WEB用于监视系统运行状态和网络信息的系统。Hobbit能监视所指定的本地或远程主机以及服务,同时提供异常等通知功能
MX4J是Java管理扩展技术的一个开源实现,支持JSR3 (JMX) 和JSR160 (JMX Remote API).
JFoxMX是国内第一个完整实现SUN JMX 1.2 规范的产品,实现了SUN JMX 最新的 1.2 规范,JMX 1.2 规范。
Snort是美国Sourcefire公司开发的发布在GPL v2下的IDS(Intrusion Detection System)软件
Cerebro 是集群监控工具和库的集合。
Zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
Moodss是一个linux下监控操作系统、数据库、应用服务器等的工具
OpenNMS是一个企业级基于Java/XML的分布式网络和系统监控管理平台。OpenNMS是你管理网络的绝好工具,它能够显示你网络中各中终端和服务器的状态和配置,为你方便地管理网络提供有效的信息。
MRTG (Multi Router Traffic Grapher)是一套可用来绘出网络流量图的软件,由瑞士奥尔滕的Tobias
MemoryManager 是一个Eclipse插件,它提供一个图形界面告诉我们内存的使用情况。可以使用MemoryManager帮助我们分析哪些程序或workbench工具占用内存比较多。
Zenoss Core是开源企业级IT管理软件-是智能监控软件,他允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss
SYSSTAT 是一个软件包,包含监测系统性能及效率的一组工具,这些工具对于我们收集系统性能数据,比如 CPU
Ttyutils 是一套 UNIX/Linux 终端会话监控软件工具包,也是一个可定制和扩展的平台。通过建立一个伪终端来运行一个程序,Ttyutils
Nagios是一个监视系统运行状态和网络信息的监视系统。Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等
这个软件允许你连接到JMX服务器,并而提供浏览现有managed beans(MBeans)并可以对其时行操作。
Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用