NetAnalyzer笔记 之 十三 NetAnalyzer 6.0 的使用方法 -- 2.抓包与数据选择
1. NetAnalyzer使用方法
1.1.数据获取
通过上面的说明,我们已经可以很快的获取到网络数据了,但是,仅仅知道上面内容却远远不够。
在NetAnalyzer中将数据加载到软件有三种方式。
- 数据文件
- 字节字符串录入
- 网卡采集
抓包开始菜单
在开始标签中数据包组合数据采集组包含了这三种功能点
数据文件,很多的数据采集软件都具备将采集到的数据包汇总成为文件的功能,用于交流和存储,通常这些数据通过一定的方案进行存储,目前比较流行的方式是基于tcpdump方案的数据存储方式,NetAnalyzer支持这类的存储方案,所以我们可以将这些数据文件读入到内存中进行分析。
NetAnalyzer支持的文件以及图标
目前NetAnalyzer提供了兼容tcpdump的pcapng、pcap、cap等文件的支持,并且默认保存类型为 *.pcapng文件,兼容市面上绝大部分的协议分析软件(如:wireshark等软件)。
为了更加方便使用数据,NetAnalyzer在文件便签中添加了最近使用的文件功能,双击即可打开文件。还可以通过传统的打开文件方式打开相关的文件。
最近使用的文件列表
读入后的文件,在标题栏将会显示该文件的路径。
当前加载的的文件信息
对于一些大文件在读取的时候,状态栏会显示文件载入进度,如果在读取过程中不想再读取了,可以点击后面的 按钮就可以停止文件读入,并且清理前期读入的内容。
文件载入进度
同样NetAnalyzer支持将内存中获取到的数据包保存为文件,软件默认存储格式为pcapng,如果是通过文件读入的,则可以使用保存按钮下拉的另存为功能进行存储。
相对于pcap,cap等类型的文件,pcapng文件更多的记录了数据采集时的系统信息,如CPU、操作系统、网卡等各种信息。这对数据统计非常有用。
字节录入方式,该方式是通过输入一组十六进制数据的字符串,再通过配置硬件类型和时间生成一个数据包,目前该功能只支持生成单个数据包。
通过字符串导入数据包
网卡采集,点击【网卡】下拉列表,即可列出当前系统已启用的网卡(包含虚拟网卡),在新版的NetAnalyzer中已经显示网卡的IP地址。
网卡列表
第一个为监听全部网卡选项,顾名思义,选该选项的是后,开启对后面多个网卡的共同监听。当我们选择了一个网卡,接下来就是对这个网卡进行操作,如开启抓包,停止抓包等等。
在这里我们只看到了网卡的系统给定的名称,有时候我们想要看看这块网卡具体的的配置信息,如IP地址、MAC地址之类的信息是,只需要点击 便可以看到我们需要的内容。
网卡信息
我们从这里只可以看到本机的一些网卡,但是有时候我们需要看看远程电脑的网卡那该怎么操作呢,首先在远程电脑上安装Winpcap,然后运行C:\Program Files (x86)\Winpcap\rpcapd.exe,具体使用方法如下:
配置winpcap远程监控方式
在NetAnalyzer中添加远程网卡
添加了远程网卡的网卡列表
具体操作步骤如下,最后点击确定按钮,完成对远程网卡的添加(本次模拟添加当前系统的网卡)
过滤表达式,对于过滤表达式,依托于Winpcap,只要使用符合Winpcap内核的过滤表达即可,在此处不会过多的讨论表达式的编写,这里会介绍一些基本的使用方法和一些抓包的特殊技巧。点击 开始 标签页 进行过滤表达式配置,当然也可以直接在过滤配
置前面的输入框中设置过滤表达式。
配置过滤表达式
点击过滤表达式帮助可以看到一些简单的过滤表达式说明,如果想要完整的表达式说明,可以参考通过winpcap官网获取。
通过表达式示例
可以通过主机输入IP或域名地址,然后在端口输入端口地址,配置器会自动生成简单的过滤表达。同时,配置窗口还提供了一些示例,可以通过示例与记录查看。设置结果如图
配置完成的过滤表达式
接下来就是过滤表达式的一些使用技巧,该技巧同样适用于Wireshark软件
接下来就是开始进行通过,采集数据了,在这里网卡是数据源,过滤表达式为筛选条件,有了这两个准备我们就可以进行数据抓包了。
首先选择网卡:我们选择以太网,因为我现在使用的是网线连接,所以此处选在以太网作为我们将要监控的网卡。
接下来就是设置过滤表达式:我们设置了 port http 所以接下来我们只抓http协议的数据包,然后点击开始,就可以抓包了
配置了过滤表达式为:port http的采集信息
状态栏会实时显示抓包信息
抓包状态
在抓包过程中我们可以随时暂停或停止抓包,当然也可以重新启动重新开始抓包。
开始抓包
暂停抓包:当点击暂停仅仅停止网卡监控,NetAnalyzer中的分析线程等还在继续工作,如果点击开始,软件不会进行初始化操作,而是在此基础上继续进行抓包。
停止抓包:当点击停止时软件会完全停止所有的操作,包括数据采集和数据分析,并且取消界面中的功能限制。当在此点击开始时,会销毁当前采集到的数据。
重新启动:当点击重新启动时,软件会自动终止当前的抓包分析等操作并且销毁当前抓到的数据,然后自动启动重新进行抓包。
(*注 在销毁抓取到的数据的时候会有是否保存的提示)
除了刚才常规的抓包方式,NetAnalyzer还提供了基于进程的抓包方式。对基于进程的抓包本质上来说其实就是自动生成过滤表达式抓包,获取系统打开端口的所有进程,并获取进程所开启的端口、IP地址以及使用的协议等信息,生成对应的过滤表达式,然后给NetAnalyzer设置该过滤表达式,最后开始抓包。
点击开始标签页中的
进程抓包
勾选需要监控的进程,点击开始抓包,进行基于进程的抓包操作。
通过上面三种数据获取方式,我们就可以在NetAnalyzer中得到需要网络数据了,当然在使用过程中也会有一些小的使用技巧,在这里总结一下。
技巧 一 抓取环回地址(127.0.0.1)的数据包
通过 route add 添加本地IP地址跳转,是数据经过指定的网管然后再传输到本机,通过 route delete 移除跳转,以减少不必要的跳转,影响系统网络效率
示例:192.168.1.110 为本机IP地址192.168.1.1 为网管地址
子网掩码视情况而定,若不清楚具体的iP地址,可以在DOS中 通过ipconfig 查看
代码如下:
route add 192.168.1.110 mask 255.255.255.255 192.168.1.1 metric 1
route delete 192.168.1.110 mask 255.255.255.255 192.168.1.1 metric 1
技巧 二 抓取ASDL数据包
在一些个别地方还在使用拨号上网(ASDL),我们在抓包时,设置了TCP或UDP端口的过滤表达式,往往不起作用,事实上,因为拨号上网在IP层上封装了PPP协议,然后再通过 PPPoE封装PPP协议,如下图所示
对于该种,协议Winpcap所使用的过滤表达式会与一般的方式不同,对于这部分抓包需要使用 pppoes and (XXX) 方式
示例:
pppoes and (ip host 192.168.0.1 and tcp port 80)
协议分析数据解析
技巧 三 抓取一段端口
有时候需要监控一段端口比如要监控目标地址的8000~80099端口之间的所有Tcp数据包,那么设置如下表达式如下表达式:
tcp dst portrange 8000-8009
1.2.数据选择
NetAnalyzer 提供了多种筛序方式,包含了会话筛选、自定义筛选、隐藏、查找、标记等功能。
会话定义:相互做网络数据交换一次通信叫做会话,会话标志为该组IP地址与端口号(对于非传输协议使用ip地址或mac地址)
会话功能,通过配置菜单找的会话窗口就可以打开会话窗口功能,需要注意的是,为了NetAnalyzer的数据包处理性能考虑,只有在打开会话窗口后,载入的数据才会进行会话分组,
通过点击会话中的数据条目,可以快速选择当前的会话数据。
会话筛序窗口
筛选功能,NetAnalyzer中使用C#绑定的方式来处理数据包列表的呈现,所以提供了类似RowFilter的筛选功能。通过使用RowFilter表达式完成对数据包的精确查找。
字段 | 说明 | 示例 |
id | 界面:编号 | id>10 |
pro | 界面:协议 | pro='tcp' |
len | 界面:数据长度(bytes) | len> 200 |
src | 界面:源地址 | src like '%10%' |
dst | 界面:目标地址 | dst like '%10%' |
info | 界面:信息 | info like '%时间%' |
sip | IP地址 | sip = '192.168.0.1' |
dip | IP地址 | dip = '192.168.0.1' |
sport | 端口号 | sport='80' |
dport | 端口号 | dport='80' |
prlst | 协议,包含数据包中全部的协议,使用逗号分隔 | prlst like '%arp%' |
筛选字段表
数据筛选功能
隐藏,对于无用的数据可以选择临时屏蔽,此时就可以使用到隐藏功能,选中数据包,点击隐藏,则可以隐藏当前会话,并在隐藏列表中显示该会话标志。
隐藏功能
查找 对于指定的数据包查询、NetAnalyzer提供了查询功能,通过点击查找或是使用Ctrl+F快捷键,就可以打开查找功能。该功能提供了编号、地址、关键字、字节数组等多种查询方式。
查找功能
标记 为了实现多组会话数据的快速识别,NetAnalyzer添加了标记功能,该功能会对指定的会话进行颜色标记处理,选中一行数据,然后执行【分析】-标记组里面的颜色即可
执行标记
执行标记后的显示效果
至此对于数据抓包和筛序就讲述完毕了,下一篇将对单个数据包进行分析