可视化数据包分析工具-CapAnalysis
我们知道,Xplico是一个从pcap文件中解析出IP流量数据的工具,本文介绍又一款实用工具―CapAnalysis(可视化数据包分析工具),将比Xplico更加细致的分析功能,先别着急安装,下面我们首先了解Pcap包的基本结构,然后告诉你如何使用,最后是一段多媒体教程给大家演示一些精彩环节。
下面这段我制作的可视化视频也深受大家喜欢:
http://www.tudou.com/programs/view/kpZrZxCk5ZI/
1.PCAP结构
以太网中的数据帧是由数据链路层负责封装,网络层传输的数据包都被加上帧头和帧尾成为可以被数据链路层识别的数据帧。虽然帧头和帧尾所用的字节数是固定的,但依被封装的数据包大小的不一样,所以以太网的长度也在动态变化,但其大小在64~1518B。下图我们先了解一下PCAP格式文件结构,从下图我们能看出Pcap文件的整体结构和头结构。
图1Pcap包结构
1.PCAP文件的头数据结构含义
PCAP文件头数据24(4+2+2+4+4+4+4)B各字段说明:
?Magic:4B0x1A2B3C4D,用来标示文件的开始;
?Major:2B0x0200,代表当前文件主要的版本号;
?Minor:2B0x0400,代表当前文件次要的版本号;
?ThisZone:4B,代表当地的标准时间;
?SigFigs:4B,表示时间戳的精度;
?SnapLen:4B,表示最大的存储长度;
?LinkType:4B,表示链路类型。
2Packet数据包头和组成含义
PCAP格式文件中数据包的组成与数据包头的结构字段说明如下:
?Timestamp:时间戳高位,精确到s;
?Timestamp:时间戳低位,精确到μs;
?Caplen:当前数据区的长度,即抓到的数据帧长度,由此可以得到下一个数据帧的位置;
?Len:离线数据长度,网络中实际数据帧的长度,一般不大于Caplen,多数情况下和Caplen数值相等;
Packet数据即Packet(通常就是链路层的数据帧)具体内容,长度就是Caplen,这个长度的后面,就是当前PCAP文件中存放的下一个Packet数据包,也就是说:PCAP文件里面并没有规定捕获的Packet数据包之间有什么间隔字符串,下一组数据在文件中的起始位置。需要靠第一个Packet包确定。最后Packet数据部分的格式其实就是标准的网络协议格式。
1)分析工具安装
选用Ubuntu10.x以上系统,执行一下命令
$sudoapt-getupdate&&sudoapt-getinstall-ygdebi&&sudogdebi-ncapanalysis_*.deb
注意,除了上面手动安装CapAnalysis工具以外,我们可以使用DEFT8.0工具盘来直接使用,用它启动系统并进入到图形界面就能直接使用。由于CapAnalysis后台使用的数据库是PostgreSQL,所以它的运行性能要较Mysql数据库的一些工具高。
2)Deft8中启动Capanalysis方法
在服务中先启动Apache服务,然后启动capanalysis服务,最后启动数据库。
#sudoservicepostgresqlstop
#sudoservicepostgresqlstart
3)访问CapanalysisWeb界面:
http://your_server_ip:9877orhttp://localhost:9877
注意,为了激活系统首先要获取Key,点击“clickheretirequestthekey”,这时输入email地址,并确认,网站会发送一个临时的key给你。注意同一个Ip不能重复申请。
刚进去是需要初始化系统的,点击New,新添加一个分析事件名称,然后用抓包工具例如tcpdump、wireshark等工具抓取pacp包,一般我们要通过过滤器,过滤掉无用的数据包。
4)导入分析数据包
#catcgweb.pcap|nc127.0.0.130001
如果有新的包过来可以继续导入,第二次抓包,再导入:
#catcgweb2.pcap|nc127.0.0.130001
数据流会进行累加,并记录次序。我们还可以在Ossim系统中,导出Snort抓到的可疑数据包,然后通过这种方法导入,来集中分析,你会得到一些意想不到的效果。
系统会启动如下界面
为了激活系统首先要获取Key,点击clickheretirequestthekey
这时输入email地址,并确认,网站会发送一个临时的key给你。注意同一个Ip不能重复申请。
刚进去是需要初始化系统的
点击New,新添加一个表单
收集数据包:
先用tcpdump抓包(您也可以选用Wireshark图形化抓包工具)
#tcpdump�Cwcgweb.pcap
#catcgweb.pcap|nc127.0.0.130001
这是第一次抓包,
执行文这条命令以后发现有了数据
第二次抓包
#tcpdump�Cwcgweb2.pcap
在执行
#catcgweb2.pcap|nc127.0.0.130001数据流会进行累加
分析数据包:
通过下图我们能够发现,它通过可视化的方式展现流量,有读者会问,这是一种什么图像呢?雷达图、柱状图都认识了,最下方的是什么图形表达方式呢?它叫桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应网络数据流量的大小,这里应用于数据的可视化分析。
浏览高清视频请点击:http://www.tudou.com/programs/view/PN9Xi8IlQW0/