抓包工具 Wireshark 的下载、安装、使用、快捷键

目录

    • 一、什么是Wireshark?
    • 二、Wireshark下载
    • 三、Wireshark安装
    • 四、Wireshark使用
      • 4.1 基本使用
      • 4.2 过滤设置
        • 1)捕获过滤器
        • 2)显示过滤器
      • 4.3 过滤规则
        • 1)捕获过滤器-规则语法
        • 2)显示过滤器-规则语法
      • 4.4 常用的显示过滤器规则
    • 五、Wireshark快捷键

一、什么是Wireshark?

Wireshark 是一款广泛使用、免费开源的 网络封包分析软件。其主要功能是 捕获和显示网络数据包的详细信息,以便进行深入的 网络分析故障排查

wire:导线。shark:鲨鱼。可以理解为游行于导线,吞噬数据的鲨鱼。

Wireshark 作用于 OSI 七层协议的传输层,通过 WinPCAP 接口与网卡直接交换数据报文,从而能够截取各种网络封包,并尽可能详细地显示这些封包的内容。这使得 Wireshark 在网络封包和流量分析领域具有强大的功能,深受各种网络工程师和网络分析师的喜爱。

补充: 即使强大如 Wireshark 也无法抓取到本地ip、localhost、127.0.01这类回环地址的请求,需要依赖其它插件才能实现。


二、Wireshark下载

  • 下载地址: https://www.wireshark.org/

进入首页,点击 Download Wireshark Now

可以根据自己的操作系统下载不同的版本。

下载后如下所示:


三、Wireshark安装

双击打开,一直 Next。(其中有一步需要勾选是否在桌面展示,建议勾选)

注意,Wireshark 底层依赖了 WinPCAP当安装进行到下面这一步的时候会卡住

然后这时会有一个 Npcap 的安装界面弹出来,我们需要先完成 Npcap 的安装,Wireshark的安装进度条才会继续走

最终 Wireshark 安装完毕,点击 Finish 即可。

安装后,可以看到桌面上图标如下:(安装时勾选了桌面图标才会显示)

在这里插入图片描述


四、Wireshark使用

4.1 基本使用

双击图标启动之后,首先要选择网卡,曲线代表网卡的流量波动,选择后 双击网卡开始监控

双击网卡进入后便自动开始捕获网络请求,如下所示:

其中,数据详情区每行的内容如下:

  1. Frame:物理层的数据帧概况。
  2. Ethernet II:数据链路层以太网帧头部信息。
  3. Internet Protocol Version 4:互联网层IP包头部信息。
  4. Transmission Control Protocol:传输层T的数据段头部信息,此处是TCP。
  5. Hypertext Transfer Protocol:应用层的信息,此处是 HTTP 协议。

其中第4行的传输层包含了TCP的报文信息:

4.2 过滤设置

初学者使用 Wireshark 时,将会得到 大量的冗余数据包列表,以至于很难找到自己想要抓取的部分。这里我们对 Wireshark 的过滤功能进行介绍。

Wireshark 中自带了两种过滤器:

  • 捕获过滤器: 在抓包之前就进行过滤,只捕获目标数据。
  • 显示过滤器: 依然抓取所有数据包,但是显示的时候只显示目标数据。
1)捕获过滤器

点击 捕获 -> 捕获过滤器在抓包前设置,只抓取目标数据

里面自带了很多常用的过滤器,可以直接使用。

也可以新建自己的捕获过滤器,点击左下角的 +,创建一个新的过滤器。

创建好后,双击编辑名称和规则。下面这段规则表示:只筛选源ip为192.168.1.15的数据。

src host 192.168.1.15

创建好捕获过滤器之后,并不会自动生效,有两种方式去选择使用哪种捕获过滤器:

  • 第1种方式:点击工具栏的齿轮按钮⚙可以进行选择。

点击左侧的绿色按钮就可以看到刚才新创建的捕获过滤器了,这里也可以直接输入捕获过滤器的规则,不过常用的规则还是建议去手动创建下。选择后点击开始即可按照制定好的规则进行抓包。

可以看到,过滤规则成功生效,新捕获的内容全部都是以 192.168.1.15 作为源IP的请求数据。

在这里插入图片描述

  • 第2种方式:我们可以在双击 Wireshark 图标一进来的界面进行选择。

如果是已经进入捕获页面了,可以点击工具栏的 关闭捕获文件,返回选择网卡的界面。

在这里插入图片描述

2)显示过滤器

显示过滤器 是用于 在抓取数据包后根据设置好的过滤条件进行过滤。可以直接在上方的搜索栏编辑规则,回车生效

下面这段规则表示:只筛选源ip为192.168.1.15的数据。

ip.src == 192.168.1.15

在这里插入图片描述

4.3 过滤规则

根据上面的示例,假如我想实现 只筛选源ip为192.168.1.15的数据,两种过滤器的写法如下:

  • 捕获过滤器: src host 192.168.1.15
  • 显示过滤器: ip.src == 192.168.1.15

可以看出来,捕获过滤器、显示过滤器的规则语法是不一样的。这里我们就分别来总结一下常用的过滤规则有哪些。

1)捕获过滤器-规则语法

捕获过滤器采用的是 BPF(Berkeley Packet Filter) 语法,这是一种用于过滤数据包的表达式,广泛应用于各种抓包工具中。

BPF 语法中,过滤表达式的基本单位是 原语。相关的规则如下:

  1. 原语通常由多个 限定符(如:dir方向、type类型、proto协议)和一个 过滤值(如:192.168.1.1、80、443)组成。

限定符的类型和常用值如下:

dir(方向)

  • src: 过滤 请求源 中包含该内容的数据。
  • dst: 过滤 请求目标 中包含该内容的数据。
  • src or dst: 过滤 请求源 或者 请求目标 中包含该内容的数据。
  • src and dst: 过滤 请求源 并且 请求目标 都包含该内容的数据。(默认)

type(类型)

  • host: 根据 IP 进行过滤,可以是 ipv4、ipv6。(不支持直接使用域名,域名的话需要先解析为ip再进行筛选)
  • net: 根据 网段 进行过滤,支持net(网关,例:192.168.1)、mask(掩码,例:255.255.255.0)、CIDR(路由,例:192.168.1.0/24)三种形式。
  • port: 根据 端口 进行过滤(例:80、443等)。
  • portrange: 根据 端口范围 进行过滤(例:1-100)。

proto(协议):(默认不筛选协议类型。)

语法: 可以使用 ether proto + 协议,也可以直接使用如下协议。

  • ipip6arptcpudp。(其中 ip 指的是 IPv4 协议)
  • 不常用协议:ddi、 wlan、arprarp、decnet、 lat、 sca、 moproc、 mopdl。
  1. 一个表达式中可以包含多个原语,原语之间使用逻辑运算符进行拼接。

(注意:这里的逻辑运算符 &&||! 不能用 andornot 替代。)

2)显示过滤器-规则语法

IP地址过滤:

  • ip.addr:过滤 请求 中包含该IP地址的数据。
  • ip.src:过滤 请求源地址 为该IP地址的数据。
  • ip.dst:过滤 请求目标地址 为该IP地址的数据。

协议过滤:

  • tcpipicmparphttpdnsbootp(dhcp) 等。

端口过滤:

  • <协议>.port:过滤特定端口。
  • <协议>.srcport:过滤特定源端口。
  • <协议>.dstport:过滤特定目的端口。
  • <协议>.flags.sync:过滤SYN标志。
  • <协议>.flags.ack:过滤ACK标志。
  • ……

比较操作符:

  • ==!=><>=<=

逻辑操作符:

  • eq== 表示等于。
  • ne!= 表示不等于。
  • and&& 表示逻辑与。
  • or|| 表示逻辑或。
  • not! 表示逻辑非。

4.4 常用的显示过滤器规则

  1. 地址过滤: 过滤特定源地址或目的地址的数据包。例如:
  • 筛选目的地址为 192.168.1.164 的HTTP请求:http && ip.dst == 192.168.1.164

http只能过滤 HTTP 请求,如果是HTTPS请求需要使用 tls 过滤 TLS 协议的请求。但是过滤只有也 只能看到加密后的 TCP 请求信息,如果需要查看明文信息,则 需要在电脑安装wireshark的证书信息 才行。

  • 过滤TPC协议的80端口:tcp.port == 80
  • 过滤UDP协议的53端口:udp.port == 53
  • 过滤GET请求:http.request.method == “GET”
  • 过滤状态码为200的请求:http.response.status == 200
  • 筛选uri中包含"findById"的HTTP请求:http.request.uri contains “findById”
  • 使用逻辑运算符(如andor)组合多个过滤条件:ip.src == 192.168.1.107 and tcp.port == 80

通过这些常用显示过滤器规则,用户可以有效地从捕获的数据包中筛选出感兴趣的信息,从而提高分析效率和准确性。


五、Wireshark快捷键

  • Ctrl + E 开始/停止捕获。
  • Ctrl + R 重新开始捕获。
  • Ctrl + W 关闭捕获文件。
  • Ctrl + / 焦点定位到显示过滤器。
  • Ctrl + Alt + Shift + T 追踪TCP数据流。
  • Ctrl + Alt + Shift + H 追踪HTTP数据流。
  • Ctrl + Alt + Shift + S 追踪TLS数据流。
  • Ctrl + 合并所有数据详细区内容。
  • Ctrl + 展开所有数据详细区内容。
  • Ctrl + F 搜索。

整理完毕,完结撒花~🌻





参考地址:

1.网络分析工具——WireShark的使用(超详细),https://blog.csdn.net/zzwwhhpp/article/details/113077747

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/27035.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

94. 二叉树的中序遍历(Swift实现, 迭代)

题目描述 使用迭代方法解题 class TreeNode {var val: Intvar left: TreeNode?var right: TreeNode?init(_ val: Int) {self.val valself.left nilself.right nil} }func inorderTraversal(_ root: TreeNode?) -> [Int] {var result [Int]() // 用于存储中序遍历…

kali中安装zsteg教程

1、下载文件 git clone http://www.github.com/zed-0xff/zsteg 2、第一步需要保证虚拟机是有网络的&#xff0c;不然无法克隆 3、可以将网络设置成如下后重启&#xff0c;访问百度看看能不能访问&#xff0c;若可以访问&#xff0c;则进行下一步 4、查看源&#xff0c;删除源&…

elasticsearch结构化搜索

Elasticsearch的结构化搜索&#xff08;Structured Search&#xff09;是指对具有明确格式和结构的数据进行搜索的过程。这类数据包括日期、时间、数字、布尔值等&#xff0c;它们都有精确的格式&#xff0c;可以进行逻辑操作&#xff0c;比如比较数值范围或判断值的大小。结构…

Python-程序流程控制

目录 1. 分支语句 1.1 if 1.2 if-else 1.3 if-elif-else 2. 循环语句 2.1 while 2.2 for 3.跳转语句 3.1 break 3.2 continue 1. 分支语句 1.1 if aint(input("请输入成绩")) if a>100:print ("牛逼") if a<60:print("不牛逼")1.2 if-e…

css预处理是什么?作用是什么?

CSS预处理器是一种增强和扩展标准CSS的工具。它们允许开发者使用变量、嵌套规则、Mixin&#xff08;混合&#xff09;以及函数等高级功能&#xff0c;以更模块化和可维护的方式编写CSS代码。预处理器如Sass&#xff08;SCSS&#xff09;、Less和Stylus等&#xff0c;通过引入这…

期末复习5---PTA

以下是提交正确的代码&#xff1a; int max_len( char *s[], int n ) {int i;int max0;for(i1;i<n;i){if(strlen(s[i])>strlen(s[max]))maxi;}return strlen(s[max]); } 以下是我自己写的代码&#xff1a; 出现的问题是 &#xff1a;括号加的不对&#xff0c;需要细心…

同城如何异地共享文件?

在现代社会中&#xff0c;跨地区的合作变得越来越普遍&#xff0c;而这也带来了共享文件的需求。当我们身处不同的城市&#xff0c;如何高效地共享文件已经成为一项迫切的需求。本文将介绍一种名为“同城异地共享文件”的解决方案&#xff0c;帮助解决这一问题。 2. 天联组网—…

hiberfil.sys文件在Windows系统作用

hiberfil.sys文件在Windows系统中起着关键的作用&#xff0c;主要涉及到计算机的休眠功能。以下是关于hiberfil.sys的详细解释&#xff1a; 定义与功能&#xff1a; hiberfil.sys是Windows休眠功能&#xff08;Windows Hibernation&#xff09;将内存数据与会话保存至硬盘所需…

struct易错点

namespace FXTest {class Program{static void Main(string[] args){List<Ast> l1 new List<Ast>();List<IAst> l2 new List<IAst>();l1.Add(new Ast());l2.Add(new Ast());l1[0].id 2;//报错}}interface IAst{}struct Ast:IAst{public int id;} }以…

程序员应该有什么职业素养?Doge

程序员应该有什么职业素养&#xff1f; 1.关爱家人第一&#xff0c;工作第二 2.享受生活第一&#xff0c;工作第二 3.身体健康第一&#xff0c;工作第二 4.取悦自己第一&#xff0c;工作第二

二手物品交易系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;商家管理&#xff0c;用户管理&#xff0c;商品管理&#xff0c;用户咨询管理 商家账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;商品管理&#xff0c;用…

C++设计模式----桥接模式

1、介绍 桥接模式&#xff08;Bridge Pattern&#xff09;是一种结构型设计模式&#xff0c;它将抽象部分与实现部分分离&#xff0c;使得它们可以独立地变化。桥接模式的核心思想是利用组合关系代替继承关系&#xff0c;将系统划分成多个独立的、功能不同的类层次结构&#xf…

LogicFlow 学习笔记—7. LogicFlow 基础 背景 Background

背景 Background 提供可以修改画布背景的方法&#xff0c;包括背景颜色或背景图片&#xff0c;背景层位于画布的最底层。 info 创建画布时&#xff0c;通过 background 选项来设置画布的背景层样式&#xff0c;支持透传任何样式属性到背景层。默认值为 false 表示没有背景。 …

SAP Web IDE 安装使用

For training SAP Web IDE 是基于 Eclipse 内核的在线开发 IDE&#xff0c;可以使用在线的试用版本&#xff0c;但服务器在德国&#xff0c;访问的网速特别慢。也可以使用 Personal Edition&#xff0c;在本机启动和编写代码。 打开官网下载WEBIDE工具包&#xff0c;包含 Tri…

开源AGV调度系统OpenTCS中的路由器(router)详解

OpenTCS中的任务分派器router详解 1. 引言2. 路由器(router)2.1 代价计算函数&#xff08;Cost functions&#xff09;2.2 2.1 Routing groups2.1 默认的停车位置选择2.2 可选停车位置属性2.3 默认的充电位置选择2.4 即时运输订单分配 3. 默认任务分派器的配置项4. 参考资料与源…

C#——析构函数详情

析构函数 C# 中的析构函数&#xff08;也被称作“终结器”&#xff09;同样是类中的一个特殊成员函数&#xff0c;主要用于在垃圾回收器回收类实例时执行一些必要的清理操作。 析构函数: 当一个对象被释放的时候执行 C# 中的析构函数具有以下特点&#xff1a; * 析构函数只…

简单了解RS485与RS232(UART)

简单了解RS485与RS232&#xff08;UART&#xff09; 一、UART和RS232、RS485的关系1、UART2、RS232/RS4853、RS232 与 RS485 的区别与联系 二、Modbus协议说明1、什么是协议2、Modbus协议说明3、Modebus通信过程4、Modbus存储区5、Modbus协议类型6、Modbus功能码 三、stm32HC-S…

短视频压缩与编码技术在短剧APP小程序开发中的应用:技术选择与工具推荐

在短剧APP小程序开发中&#xff0c;选择合适的短视频压缩与编码技术及工具对于实现高效的视频处理至关重要。本文将探讨如何选择合适的技术和工具&#xff0c;以及推荐一些在实际开发中常用的解决方案。 技术选择的原则 平衡压缩率与视频质量&#xff1a;在选择压缩技术时&…

flutter开发实战-RichText富文本居中对齐

flutter开发实战-RichText富文本居中对齐 在开发过程中&#xff0c;经常会使用到RichText&#xff0c;当使用RichText时候&#xff0c;不同文本字体大小默认没有居中对齐。这里记录一下设置过程。 一、使用RichText 我这里使用RichText设置不同字体大小的文本 Container(de…

Kimichat使用案例013:用kimichat批量识别出图片版PDF文件中的文字内容

文章目录 一、介绍二、具体操作三、信息识别一、介绍 图片版的PDF文件,怎么才能借助AI工具来提取其中全部的文字内容呢? 第一步:将PDF文件转换成图片格式 具体方法参见文章: Kimichat使用案例011:用kimichat将PDF自动批量分割成多个图片(零代码编程) 第二步:识别图片中…