当前位置:网站首页>Wireshark classic practice and interview 13-point summary

Wireshark classic practice and interview 13-point summary

2022-08-10 00:55:00 cui_yonghua

1. 软件概述(谁开发的?什么时候?)

wireshark是目前全球使用最广泛的开源抓包软件(前身为Ethereal),由Gerald Combs编写并与1998年以GPL开源许可证发布.能在多种平台上抓取和分析网络包.图形界面非常友好,The command line form can also be used: TShark .

wiresharkIs a network sniffing tool.The status of the network can be monitored、Data flow and information transmitted over the network.

WiresharkNot only supports the analysis of hundreds of network protocols(如Network base protocol:ARP, DNS, DHCP; 数据传输协议:TCP, UDP; Advanced Application Protocol:HTTP, SMTP/POP3, SMB等),Numerous analytical functions are also provided,It can meet the data analysis needs of different users.

Some protocols are more complex,as used for authenticationKerberos,也可以用Wireshark进行分析.

2. 软件功能(可以用来干什么?)

作用
1、分析网络底层协议;
2、解决网络故障问题;
3、Look for cybersecurity issues;

原理:当信息以明文的形式在网络上传输时,便可以使用网络监听的方式来进行攻击.将网络接口设置在监听模式,便可以将网上传输的源源不断的信息截获.Sniffing techniques are often used for network troubleshooting、协议分析、Application performance analysis and network security assurance and other fields.

3. 适合人群(who is using?)

网络管理员,网络工程师,安全工程师,IT运维工程师等

4. 平台支持(What platform can it run on?)

Windows, MacOS, Linux/Unix

5. 相关网址(哪里下载?where to study?)

官网:https://www.wireshark.org/
书籍推荐:https://www.chappell-university.com/
wiki帮助页面:https://wiki.wireshark.org/

6. 相关软件(Similar software is recommended)

Sniffer, Omnipeek, Fidder, Httpwatch, 科来网络分析系统.

7. 抓包界面介绍

在这里插入图片描述
说明:数据包列表区中不同的协议使用了不同的颜色区分.协议颜色标识定位在菜单栏View --> Coloring Rules.

macinterface in the computer:
在这里插入图片描述
1、Display Filter(显示过滤器), 用于设置过滤条件进行数据包列表过滤.菜单路径:Analyze --> Display Filters.

2、Packet List Pane(数据包列表), 显示捕获到的数据包,每个数据包包含编号,时间截,源地址,目标地址,协议,长度,以及数据包信息. 不同协议的数据包使用了不同的颜色区分显示.

3、Packet Details Pane(数据包详细信息), 在数据包列表中选择指定数据包,在数据包详细信息中会显示数据包的所有详细信息内容.**数据包详细信息面板是最重要的,用来查看协议中的每一个字段.**各行信息分别为
(1)Frame: 物理层的数据帧概况
(2)Ethernet II: 数据链路层以太网帧头部信息
(3)Internet Protocol Version 4: 互联网层IP包头部信息
(4)Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
(5)Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议

4、 Dissector Pane(16进制数据)
5、 Miscellanous(地址栏,杂项)

8. TCP包的具体内容

从下图可以看到wireshark捕获到的TCP包中的每个字段.
在这里插入图片描述
在TCP层,有个Flags字段,这个字段有以下几个标识:SYN, FIN, ACK, PSH, RST, URG.

其中,对于我们日常的分析有用的就是前面的五个字段.它们的含义是:
SYN:表示建立连接,
FIN:表示关闭连接,
ACK:表示响应,
PSH:表示有DATA数据传输,
RST:表示连接重置.

9. Wireshark过滤器设置

初学者使用wireshark时,将会得到大量的冗余数据包列表,以至于很难找到自己自己抓取的数据包部分.wireshar工具中自带了两种类型的过滤器,学会使用这两种过滤器会帮助我们在大量的数据中迅速找到我们需要的信息.
(1)抓包过滤器

捕获过滤器的菜单栏路径为Capture --> Capture Filters.用于在抓取数据包前设置.如何使用?可以在抓取数据包前设置如下.
在这里插入图片描述

ip host 60.207.246.216 and icmp 表示只捕获主机IP为60.207.246.216的ICMP数据包.获取结果如下:
(2)显示过滤器
显示过滤器是用于在抓取数据包后设置过滤条件进行过滤数据包.通常是在抓取数据包时设置条件相对宽泛,When the content of the captured data packets is large, use the display filter to set the conditional filtering to facilitate analysis.Extract analysis information by setting display filter conditions.
The figure below shows the useip.addr == 211.162.2.183 and icmp 进行过滤.
在这里插入图片描述

在组网不复杂或者流量不大情况下,使用显示器过滤器进行抓包后处理就可以满足我们使用.

10. wireshark过滤器表达式的规则

1、抓包过滤器语法和实例

抓包过滤器类型Type(host、net、port)、方向Dir(src、dst)、协议Proto(ether、ip、tcp、udp、http、icmp、ftp等)、逻辑运算符(&& 与、|| 或、!非)

(1)协议过滤
比较简单,直接在抓包过滤框中直接输入协议名即可.
tcp,只显示TCP协议的数据包列表
http,只查看HTTP协议的数据包列表
icmp,只显示ICMP协议的数据包列表

(2)IP过滤

  host 192.168.1.104
  src host 192.168.1.104
  dst host 192.168.1.104

(3)端口过滤

  port 80
  src port 80
  dst port 80

(4)逻辑运算符&& 与、|| 或、!非

  src host 192.168.1.104 && dst port 80 抓取主机地址为192.168.1.80、目的端口为80的数据包
  host 192.168.1.104 || host 192.168.1.102 抓取主机为192.168.1.104或者192.168.1.102的数据包
  !broadcast 不抓取广播数据包

2、显示过滤器语法和实例

(1)比较操作符

比较操作符有== 等于、!= 不等于、> 大于、< 小于、>= 大于等于、<=小于等于.

(2)协议过滤

比较简单,直接在Filter框中直接输入协议名即可.注意:协议名称需要输入小写.
tcp,只显示TCP协议的数据包列表
http,只查看HTTP协议的数据包列表
icmp,只显示ICMP协议的数据包列表
在这里插入图片描述

(3) ip过滤

 ip.src ==192.168.1.104 显示源地址为192.168.1.104的数据包列表
  ip.dst==192.168.1.104, 显示目标地址为192.168.1.104的数据包列表
  ip.addr == 192.168.1.104 显示源IP地址或目标IP地址为192.168.1.104的数据包列表

在这里插入图片描述
(4)端口过滤

tcp.port ==80,  显示源主机或者目的主机端口为80的数据包列表.
tcp.srcport == 80,  只显示TCP协议的源主机端口为80的数据包列表.
tcp.dstport == 80,只显示TCP协议的目的主机端口为80的数据包列表.

在这里插入图片描述

(5) Http模式过滤
http.request.method==“GET”, 只显示HTTP GET方法的.

(6)逻辑运算符为 and/or/not
过滤多个条件组合时,使用and/or.比如获取IP地址为192.168.1.104的ICMP数据包表达式为:ip.addr == 192.168.1.104 and icmp
在这里插入图片描述

11. Wireshark抓包分析TCP三次握手

(1)TCP三次握手连接建立过程

Step1:客户端发送一个SYN=1,ACK=0标志的数据包给服务端,请求进行连接,这是第一次握手;

Step2:服务端收到请求并且允许连接的话,就会发送一个SYN=1,ACK=1标志的数据包给发送端,告诉它,可以通讯了,并且让客户端发送一个确认数据包,这是第二次握手;

Step3:服务端发送一个SYN=0,ACK=1的数据包给客户端端,告诉它连接已被确认,这就是第三次握手.TCP连接建立,开始通讯.
在这里插入图片描述
(2)wireshark抓包获取访问指定服务端数据包

Step1:启动wireshark抓包,打开浏览器输入www.huawei.com.
Step2:使用 ping www.huawei.com 获取IP.
在这里插入图片描述
Step3:输入过滤条件获取待分析数据包列表 ip.addr == 211.162.2.183
在这里插入图片描述
图中可以看到wireshark截获到了三次握手的三个数据包.第四个包才是HTTP的, 这说明HTTP的确是使用TCP建立连接的.

第一次握手数据包

客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接. 如下图.
在这里插入图片描述

数据包的关键属性如下:
SYN :标志位,表示请求建立连接
Seq = 0 :初始建立连接值为0,数据包的相对序列号从0开始,表示当前还没有发送数据
Ack =0:初始建立连接值为0,已经收到包的数量,表示当前没有接收到数据

第二次握手的数据包

服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即0+1=1, 如下图
在这里插入图片描述
数据包的关键属性如下:
[SYN + ACK]: 标志位,同意建立连接,并回送SYN+ACK
Seq = 0 :初始建立值为0,表示当前还没有发送数据
Ack = 1:表示当前端成功接收的数据位数,虽然客户端没有发送任何有效数据,确认号还是被加1,因为包含SYN或FIN标志位.(并不会对有效数据的计数产生影响,因为含有SYN或FIN标志位的包并不携带有效数据)

第三次握手的数据包

客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1, 如下图:
在这里插入图片描述
数据包的关键属性如下:
ACK :标志位,表示已经收到记录
Seq = 1 :表示当前已经发送1个数据
Ack = 1 : 表示当前端成功接收的数据位数,虽然服务端没有发送任何有效数据,确认号还是被加1,因为包含SYN或FIN标志位(并不会对有效数据的计数产生影响,因为含有SYN或FIN标志位的包并不携带有效数据).

就这样通过了TCP三次握手,建立了连接.开始进行数据交互

部分参考博客:[https://www.cnblogs.com/linyfeng/p/9496126.html](https://www.cnblogs.com/linyfeng/p/9496126.html

12. 从WiresharkLook at network layering

应用层(NFS头+Data):由于NFS是基于RPC协议,所以Wireshark把它分成NFS和RFCtwo lines to display.

传输层(TCP头+NFS头+Data): 这一层用到了TCP协议,The data generated by the application layer is thereTCPto control transmission.

网络层(IP头+TCP头+NFS头+Data):主要任务是把TCPThe data passed from the layer plus the destination address and the source address.有了目标地址,Only then can the data reach the recipient,have the source address,Only the receiver knows who the sender is.

数据链路层(以太帧头+IP头+TCP头+NFS头+Data):You can see two adjacent devicesMAC地址.

13. 调整数据包列表中时间戳显示格式

调整方法为View -->Time Display Format --> Date and Time of Day.调整后格式如下:
在这里插入图片描述

原网站

版权声明
本文为[cui_yonghua]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/222/202208092242577641.html