Wieshark是什么?
wireshark是一个免费开源的网络数据包分析软件,功能十分强大。可以截取各种网络数据包,显示网络数据包的详细信息。
下载地址:https://www.wireshark.org/download.html
wireshark页面介绍
1.开始页面
2.wireshark是捕获机器上的一块网卡的网络包,当你有多块网卡时,选择其中的一个。
当你只有一块网卡时,选择网卡eth0。(默认选择网卡后自动抓包)
wireshark窗口介绍
wireshark主要分为5个界面
1.Display Filter(显示过滤器) ,用于过滤
2.Packet list Pane(数据包列表),显示捕捉到的数据包,有效IP和目标IP,端口号
3.Packet Details Pane(数据包详细信息) ,显示数据包中的字段
4.Dissector Pane(16进制数据)
5.Miscekkanous(地址栏)
wireshark过滤器
掌握过滤技能是非常重要的,初学者使用wireshark进行抓包时,由于抓到的数据包的种类繁多,很难找到自己需要的部分。
过滤器会帮助我们迅速找到我们需要的信息。
过滤器有两种。
一种是显示过滤器,,用来在我们捕获的数据包中找到我们需要的信息。(图二)
另一种是捕获过滤器,用来过滤捕获的数据包。在开始页面Capture中 (图一)
过滤表达式的规则
1.协议过滤
比如tcp,只显示捕获TCP协议
2.IP过滤
比如 ip.src ==10.1.1.1 只显示源地址为10.1.1.1的数据包
ip.dst== 10.1.1.1 只显示目的地址为10.1.1.1的数据包
3.端口过滤
tcp.port == 80 只显示目的地址80端口的TCP数据包
tcp.srcport == 80 只显示源地址80端口的TCP数据包
4.http模式过滤
http.request.method == "GET" ,只显示HTTP GET方法。
5.逻辑运算符为 AND/OR(不分大小写)
ip.dst ==10.1.1.1 and port == 80 只显示目标IP为10.1.1.1且端口为80的数据包
数据包列表
数据包列表的面板中显示,编号,时间,源地址,目标地址,协议,长度,以及数据包信息。从图中你可以看到不同的协议不同颜色,并且协议连接不成功和成功颜色也不一样。
数据包详细信息
在这个面板中,我们可以查看协议中的任意一个字段。
各行信息分别为
Frame: 物理层的数据帧概况
Ethernet II: 数据链路层以及以太网头部信息
Internet Protocol Version 4: 互联网Ip包头部信息
Transmission Control Protocol :传输层T的数据段头部信息,此处是TCP
Hypertext Transfer Protocol 应用层信息,此处是HTTP协议
数据包具体内容(本次用的例子TCP协议)
4.分析三次TCP握手过程
首先用wireshark进行抓包,下图是我用wireshark抓到的TCP三次握手的数据包。
(双击抓到的包就可以看到详细信息或者在页面第二个方框中也可以看到详细信息)
第一次握手数据包
客户端发送一个TCP数据包,标志位为SYN,序列号为0,代表客户端请求建立连接。如下图
第二次握手数据包
服务器发挥确认包,标志位为SYN,ACK,将确认序号(Acknowledgement Number)设置为客户的ISN+1,如下图
第三次握手的数据包
客户端再次发送确认包(ACK),SYN标志位为0,ACK标志位1,并且把服务器发来ACK的序号字段+1,放在确认字段中发送给对方,并且在数据段中的ISN+1,如下图
这样就完成了TCP三次握手,建立了连接!
关注我,以后还会介绍Kali的其他工具!