Wireshark

作者: 听闻白依 | 来源:发表于2020-10-20 07:38 被阅读0次

    Wireshark模块介绍

    一.窗口简介

    二.过滤器使用

    1.捕获过滤器

    概念:当进行数据包捕获时,只有那些满足给定的包含/排除表达式的数据包或被捕获

    如何打开捕获过滤器:

    (1)打开Wireshark时

    (2)使用Wireshark过程中,点击设置按钮,也可打开捕获过滤器界面。

    操作实例一:

    捕获过滤器中输入表达式 host www.163.com and port 80(80 等效于http)

    点击start按钮开始

    浏览器访问www.163.com

    Wireshark进行抓包,显示如下:

    2.显示过滤器

    概念:该过滤器根据指定的表达式用于在一个已捕获的数据包集合中,隐藏不想显示的数据包,或者只显示那些需要的数据包。

    操作实例一:

    捕获过滤器中筛选了满足 host www.163.com and port 80 表达式的数据包。

    在显示过滤器中输入表达式 tcp.stream eq 0 筛选出第一个TCP流(包含完整的一次TCP连接:三次握手和四次握手)

    三次握手抓包

    TCP三次握手

    什么是三次握手(Three-way Handshake)

    三次握手,是指建立一个TCP连接时,需要客户端和服务器总共发三个包。三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换TCP窗口大小信息。

    第一次握手:客户端发送syn包(syn=x)的数据包到服务器,并进入SYN_SEND状态,等待服务器确认;

    第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;

    第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

    握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP连接都将被一直保持下去。

    Wireshark三次握手过程:

    (1)第一次握手数据包

    客户端发送一个TCP,标志位为SYN(syn=0),序列号为0,代表客户端请求建立连接。

    (2)第二次握手数据包

    服务器收到SYN包后,确认客户端的SYN,ack=x+1,同时向客户端发送自己的SYN(syn=y)包,即最后会向客户端发送SYN+ACK包。

    (3)第三次握手数据包

    客户端收到SYN+ACK包后,向服务器发送确认包ACK(ack=y+1)。

    三.封包

    什么是封包

    计算机只能识别二进制的数据,数据也是用二进制的方式存储在计算机中。要想实现多台计算机之间的通信,就要依赖一定的通信协议,如TCP/IP//HTTP等网络协议。为了区分每个协议,数据在传输过程中,会被用到的协议加上指定的格式。也可以理解为对数据的打包发送。例如:快递人员要把你购买的东西送到你家,就要先包装好,然后加上你的个人信息,最后送到你手中,整个过程称为封包。

    Wireshark封包

    点击Wireshark  按钮,开始抓包。

    1.封包详细信息(Packet Details Pane)

    显示封包中的字段

    Frame(帧)物理层的数据帧概况(对应OSI七层模型中的物理层)。Frame 494指的是要发送的数据块,494为所抓帧的序号,捕获字节数等于传送字节数:62 bytes

    Ethernet II(以太网)数据链路层以太网帧头部信息(对应OSI七层模型中的数据链路层)。源Mac地址:2a:31:66:39:90:27; 目标Mac地址:38:f9:d3:84:41:e4

    Internet Protocal Version 4(IPV4协议,也称网际协议):互联网层IP包头部信息(对应OSI七层模型中的网络层)。源IP地址:203.119.129.47; 目标IP地址:192.168.43.91

    Transmission Control Protocol(TCP协议)传输层的数据段头部信息(对应OSI七层模型中的传输层)。 源端口:443;目标端口:51610;序列号:143; ACP: 是TCP数据包首部中的确认标志,对已接收到的TCP报文进行确认,值为1:确认号有效; 长度为0。

    Hypertext Transfer Protocol(HTTP协议)应用层信息(对应OSI七层模型中的应用层)。

    [后续补充]

    2.每层封包详细含义

    物理层的数据帧概况

    数据链路层以太网帧头部信息

    互联网层IP包头部信息

    传输层TCP数据段头部信息

    TCP头格式

    Wireshark过滤规则

    使用过滤器

    1.过滤IP

    来源IP或者目标IP等于某个IP

    ip.src eq 192.168.43.91  (来源)

    ip.dst eq 192.168.43.91  (目标)

    ip.addr eq 192.168.43.91  (来源、目标同时显示)

    2.过滤端口

    显示来源端口和目标端口同时满足条件

    tcp.port eq 80

    tcp.port == 80

    tcp.port eq 80 or udp.port eq 80

    显示目标端口满足条件

    tcp.dstport == 80

    显示来源端口满足条件

    tcp.srcport == 80

    过滤端口范围

    tcp.port >=1 and tcp.port <= 80

    协议过滤

    比如TCP,只显示TCP协议。

    IP 过滤

    比如 ip.src ==192.168.1.102 显示源地址为192.168.1.102,

    ip.dst==192.168.1.102, 目标地址为192.168.1.102

    端口过滤

    tcp.port ==80,  端口为80的

    tcp.srcport == 80,  只显示TCP协议的愿端口为80的。

    Http模式过滤

    http.request.method=="GET",   只显示HTTP GET方法的。

    逻辑运算符为 AND/ OR

    相关文章

      网友评论

          本文标题:Wireshark

          本文链接:https://www.haomeiwen.com/subject/akvlmktx.html