大家好,今天我要介绍的是一款实用工具——CapAnalysis(可视化数据包分析工具)。相比于Xplico,CapAnalysis提供了更加细致的分析功能。在开始安装之前,让我们先了解一下Pcap包的基本结构,然后再告诉你如何使用。
PCAP结构
在以太网中,数据帧由数据链路层封装,网络层传输的数据包都会被加上帧头和帧尾,形成可以被数据链路层识别的数据帧。虽然帧头和帧尾所用的字节数是固定的,但由于被封装的数据包大小不同,以太网的长度也会动态变化,通常在64~1518字节之间。接下来我们先来了解一下PCAP格式文件结构,从下图我们可以看出Pcap文件的整体结构和头结构。
图1 Pcap包结构
- PCAP文件的头数据结构含义
- Magic: 4字节,0x1A2B3C4D,用来标识文件的开始;
- Major: 2字节,0x0200,代表当前文件的主要版本号;
- Minor: 2字节,0x0400,代表当前文件的次要版本号;
- ThisZone: 4字节,代表当地的标准时间;
- SigFigs: 4字节,表示时间戳的精度;
- SnapLen: 4字节,表示最大的存储长度;
- LinkType: 4字节,表示链路类型。
- Packet数据包头和组成含义
- Timestamp: 时间戳高位,精确到秒;
- Timestamp: 时间戳低位,精确到微秒;
- Caplen: 当前数据区的长度,即抓到的数据帧长度;
- Len: 离线数据长度,网络中实际数据帧的长度;
- Packet数据即Packet(通常就是链路层的数据帧)具体内容,长度就是Caplen。
PCAP分析工具
- 分析工具安装
- 在Ubuntu10.x以上系统中,执行以下命令:
$ sudo apt-get update && sudo apt-get install -y gdebi && sudo gdebi -n capanalysis_*.deb
- 除了手动安装CapAnalysis工具外,也可以使用DEFT8.0工具盘直接启动系统并进入图形界面使用。
- Deft8中启动Capanalysis方法
- 先启动Apache服务,然后启动capanalysis服务,最后启动数据库。
sudo service postgresql stop
sudo service postgresql start
- 访问CapanalysisWeb界面:yourserverip:9877 or :9877
- 导入分析数据包
- 使用命令
# cat cgweb.pcap | nc 127.0.0.1 3001
导入数据包。 - 可以继续导入新的包,第二次抓包后再导入。
为了激活系统,首先需要获取Key,点击”click here to request the key”,输入email地址并确认,网站会发送一个临时的key给您。同一个IP不能重复申请。刚进入系统时需要初始化。
点击New,新添加一个表单,收集数据包:先使用tcpdump抓包,然后执行命令导入数据包。
第二次抓包后,再次导入数据流会进行累加。通过可视化方式分析数据包,使用桑基图进行数据的可视化分析。