Wireshark数据包分析(一)——使用入门
Wireshark简介:
Wireshark是一款最流行和强大的开源数据包抓包与分析工具,没有之一。在SecTools安全社区里颇受欢迎,曾一度超越Metasploit、Nessus、Aircrack-ng等强悍工具。该软件在网络安全与取证分析中起到了很大作用,作为一款网络数据嗅探与协议分析器,已经成为网络运行管理、网络故障诊断、网络应用开发与调试的必用工具。
上面是wireshark的主窗口,分三大主块:Packlist List(数据包列表)、Packet Details(数据包细节)、Packet Bytes(数据包字节)。
首选项设置
在wireshark的首选项里有很多设置,以方便定制,可在菜单栏的Edit里的Preferences里设置,其界面如下:
包括这几个部分:User Intereface(用户接口)、Capture(捕获)、Name Resolutions(名字解析)、Statistics(统计)、Protocols(协议)
查找数据包:
按ctrl+N打开查找对话框
可以看到有三种查询条件:
- Display filter 通过表达式进行筛选,其功能强大,后面有具体介绍,如ip.addr==192.168.1.23
- Hex value 通过十六进制对数据包进行筛选,如00:ff
- String 通过字符串进行查找,如passwd
按ctrl+N向下查找,按ctrl+B向前查找。其实wireshark的使用说明已经做的非常非常的人性化的,它的所有设置窗口都有在线的帮助说明,上面是左下角的“Help”就是。而且是英文的,那么问题来了,你是到底啥不懂呢?
标记数据包:
在Packet List中选中一个数据包,右键选择Mark Packet就可以将该数据包标记,标记后该数据包会高亮显示。快捷键是选中一个数据包,按ctrl+M,取消标记同样是ctrl+M,
在多个被标记的数据之间切换可用shift+ctrl+N、shift+ctrl+B。
捕获设置:
启动Wireshark后,在左边的网络接口里的Capture Optiion可以用来设置各种数据包抓取规则。
- 在‘1’处设置网络接口,可以选择一个接口双击,弹出该接口的具体设置信息(如下图)。这里可以设置是否开启混杂模式,是否以pcap-ng格式捕获数据包,以及按字节数限制每个捕获数据包的大小。
- 在‘3’捕获文件的设置:这里提供了过滤规则,各种触发器(基于文件大小或时间),其中的Ring Buffer With选项可以设置环形缓冲创建文件,采用FIFO原则,只保留所设定的文件数目,从而只会捕获指定的数据包数,不会因为大量数据包占用大量空间。
- 在‘4’停止捕获:同样的,可以以文件大小、时间或者数据包数目为触发条件,停止数据包捕获。
- 在‘5’显示设置的相关设置。注意实时显示会增加CPU负荷,可以取消该项。
- 在‘6’名字解析.MAC地址解析,尝试将数据链路层的MAC地址解析成网络层的IP,如果解析失败,则会按MAC地址前三个字节转换成设定制造商的名称,如Netgear_01:02:03;网络名字解析:尝试使用DNS协议,将IP地址解析成主机名,注意这会产生格外的DNS流量;传输名字解析:尝试将端口号解析成与其相关的名字,如80端口转换成http显示。
查看端点与会话:
在wireshark的Endpoints窗口里(Statistics -> Endpoints)已经统计出了每一个端点的地址、传输发送数据包的数量u以及字节数。这里一个很有用的地方是:单击一个数据包右键,在相关选项里有该数据包的过滤语法规则,很值得学习,对于过滤规则学习很有用!!
网络会话是指地址A与地址B之间的会话,同样地,可以右键单击一个会话,用以创建一些有用的过滤规则。可以在Statistics -> Conversations里查看。
协议数据的分层统计:
有时需要分析捕获数据包中各协议所占的比例,以分析网络流量是否正常。此时可以选择Statistics->Protocol Hierarchy。
跟踪TCP数据流:
burpsuite的功能相似,Wireshark也有TCP流量重组功能。右键单击一个数据包选择Follw TCP/UDP Stream即可重组出数据流交互过程。其中红色表示从源地址发往目标地址,蓝色反之。
wireshark的入门就简单到这里了。我只是简单的介绍了一下,其功能十分强大,是数据包分析的一大利器!!要想深入学习,还需要使用者去探索尝试,特别是在实战中的应用,有很多的乐趣哦。后期将继续讲解wireshark高级过滤的实战应用,也欢迎各位感兴趣的同学一起交流技术:)