Wireshark零基础使用教程(超详细)

2023-10-27

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「专栏简介」:此文章已录入专栏《网络安全快速入门》

在这里插入图片描述

一、Wireshark是什么

Wireshark是使用最广泛的一款「开源抓包软件」,常用来检测网络问题、攻击溯源、或者分析底层通信机制。

它使用WinPCAP作为接口,直接与网卡进行数据报文交换。

二、Wireshark抓包原理

Wireshark使用的环境大致分为两种,一种是电脑直连互联网的单机环境,另外一种就是应用比较多的互联网环境,也就是连接交换机的情况。

「单机情况」下,Wireshark直接抓取本机网卡的网络流量;
「交换机情况」下,Wireshark通过端口镜像、ARP欺骗等方式获取局域网中的网络流量。

  • 端口镜像:利用交换机的接口,将局域网的网络流量转发到指定电脑的网卡上。
  • ARP欺骗:交换机根据MAC地址转发数据,伪装其他终端的MAC地址,从而获取局域网的网络流量。

三、Wireshark安装入门。

详细安装步骤请参考我的另一篇文章:
超详细,Wireshark 3.6.3安装教程(Windows系统)

安装完成后,我们学习一下快速抓包。

1. 选择网卡

打开 Wireshark 后,会直接进入「网卡选择界面」,WLAN 是我连接无线的网卡,我们抓一下这个网卡的流量,双击网卡名,自动开始抓包。

在这里插入图片描述

2. 停止抓包

点击左上角的「红色按钮」,可以停止抓包
在这里插入图片描述

3. 保存数据

点击右上角的「文件」,选择「保存」,可以保存抓包的数据

在这里插入图片描述
也可以直接点击工具栏的保存按钮

在这里插入图片描述

四、界面介绍

在这里插入图片描述
Wireshark 的主界面包含6个部分:

  1. 菜单栏:用于调试、配置
  2. 工具栏:常用功能的快捷方式
  3. 过滤栏:指定过滤条件,过滤数据包
  4. 数据包列表:核心区域,每一行就是一个数据包
  5. 数据包详情:数据包的详细数据
  6. 数据包字节:数据包对应的字节流,二进制

五、基础操作

接下来,我们学习一下Wireshark常用的操作。

1. 调整界面大小

工具栏中的三个「放大镜」图标,可以调整主界面数据的大小。
在这里插入图片描述
从左到右依次是:放大、缩小、还原默认大小。

2. 设置显示列

数据包列表是最常用的模块之一,列表中有一些默认显示的列,我们可以添加、删除、修改显示的列。

1)添加显示列

想要在数据列表中显示某一个字段,可以将这个数据字段添加至显示列中。
左键选中想要添加为列的字段,右键选择「应用为列」

在这里插入图片描述
选中字段,按 Ctrl + Shift + I ,也可以实现同样的效果。

添加为列的字段会在数据列表中显示。
在这里插入图片描述

2)隐藏显示列

暂时不想查看的列,可以暂时隐藏起来。
在显示列的任意位置右键,取消列名的「勾选」,即可隐藏显示列。

在这里插入图片描述

3)删除显示列

不需要查看的字段,可以从显示列中删除。
右键需要删除的列,点击最下方的「Remove this Column」

在这里插入图片描述
注意:隐藏字段时,在列名栏的任意位置右键即可;而删除字段时,需要在指定的列名位置右键,以防误删。

3. 设置时间

数据包列表栏的时间这一列,默认显示格式看起来很不方便,我们可以调整时间的显示格式。
点击工具栏的「视图」,选择「时间显示格式」,设置你喜欢的格式。
在这里插入图片描述

4. 标记数据包

对于某些比较重要的数据包,可以设置成高亮显示,以达到标记的目的。
选中需要标记的数据包,右键选择最上面的「标记/取消标记」

在这里插入图片描述
选中数据包,按 Ctrl + M 也可以实现同样的效果,按两次可以取消标记。

5. 导出数据包

演示快速抓包时,我们讲过保存数据包的操作,保存操作默认保存所有已经抓取的数据包。但有时候,我们只需要保存指定的数据包,这时候可以使用导出的功能。

1)导出单个数据包

选中数据包,点击左上角的「文件」,点击「导出特定分组」

在这里插入图片描述
「导出分组界面」,选择第二个 「Selected packets only」,只保存选中的数据包。

在这里插入图片描述

2)导出多个数据包

有时候我们需要导出多个数据包,Wireshark有一个导出标记的数据包的功能,我们将需要导出的数据包都标记起来,就可以同时导出多个数据包。

点击左上角的「文件」,点击「导出特定分组」

在这里插入图片描述
「导出分组界面」,勾选第三个 「Marked packets only」,只导出标记的数据包。

在这里插入图片描述

6. 开启混杂模式

局域网的所有流量都会发送给我们的电脑,默认情况下,我们的电脑只会对自己mac的流量进行解包,而丢弃其他mac的数据包。
开启混杂模式后,我们就可以解析其他mac的数据包,因此,我们使用Wireshark时,通常都会开启混杂模式。

点击菜单栏的「捕获」按钮,点击「选项」

在这里插入图片描述
勾选 在所有接口上使用混杂模式。

在这里插入图片描述

六、过滤器操作

过滤器是Wireshark的核心功能,也是我们平时使用最多的一个功能。

Wireshark提供了两个过滤器:抓包过滤器 和 显示过滤器。两个过滤器的过滤思路不同。

  1. 抓包过滤器:重点在动作,需要的包我才抓,不需要的我就不抓。
  2. 显示过滤器:重点在数据的展示,包已经抓了,只是不显示出来。

1. 抓包过滤器

抓包过滤器在抓包前使用,它的过滤有一个基本的语法格式:BPF语法格式。

1)BPF语法

BPF(全称 Berkeley Packet Filter),中文叫伯克利封包过滤器,它有四个核心元素:类型、方向、协议 和 逻辑运算符。

  1. 类型Type:主机(host)、网段(net)、端口(port)
  2. 方向Dir:源地址(src)、目标地址(dst)
  3. 协议Proto:各种网络协议,比如:tcp、udp、http
  4. 逻辑运算符:与( && )、或( || )、非( !)

四个元素可以自由组合,比如:

  • src host 192.168.31.1:抓取源IP为 192.168.31.1 的数据包
  • tcp || udp:抓取 TCP 或者 UDP 协议的数据包

2)使用方式

使用抓包过滤器时,需要先停止抓包,设置完过滤规则后,再开始抓包。

停止抓包的前提下,点击工具栏的捕获按钮,点击选项。

在这里插入图片描述
在弹出的捕获选项界面,最下方的输入框中输入过滤语句,点击开始即可抓包。

在这里插入图片描述
提示:抓包过滤器的输入框,会自动检测语法,绿色代表语法正确,红色代表语法错误。

2. 显示过滤器

显示过滤器在抓包后或者抓包的过程中使用。

1)语法结构

显示过滤器的语法包含5个核心元素:IP、端口、协议、比较运算符和逻辑运算符。

  1. IP地址:ip.addr、ip.src、ip.dst
  2. 端口:tcp.port、tcp.srcport、tcp.dstport
  3. 协议:tcp、udp、http
  4. 比较运算符:> < == >= <= !=
  5. 逻辑运算符:and、or、not、xor(有且仅有一个条件被满足)

5个核心元素可以自由组合,比如:

  • ip.addr == 192.168.32.121:显示IP地址为 192.168.32.121 的数据包
  • tcp.port == 80 :显示端口为 80 的数据包

2)使用方式

在过滤栏输入过滤语句,修改后立即生效。

在这里插入图片描述
提示:过滤栏有自动纠错功能,绿色表示语法正确,红色表示语法错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Wireshark零基础使用教程(超详细) 的相关文章

  • python通过docker打包执行

    背景 正常情况下 python脚本执行需要安装有python环境 那python环境虽然也可以通过移植的方法来安装 那总归是比较麻烦的 下面通过docker打包的方式来执行python脚本 1 安装python镜像 准备两个文件即可 doc
  • 前端LayUI框架快速上手实现登入注册

    目录 一 Layui简介 1 什么是LayUI 2 LayUI的特点 二 LayUI入门 1 LayUI下载 2 LayUI入门使用 2 1 在web项目中导入LayUI文件中的layui文件 2 2 在JSP页面引入css js文件 2

随机推荐

  • linux建立虚拟内存,如何在Linux环境下建立虚拟内存

    虚拟内存是将硬盘规划出一个区间用来读取数据的空间 但是有很多用户们都不知道Linux环境下如何建立虚拟内存 那么现在我们就一起跟小编去看看具体内容吧 在Linux 下就是建立swap file 基本步骤 先建立swap这个装置或是档案后 将
  • Java程序员到架构师的推荐阅读书籍

    Java程序员到架构师的推荐阅读书籍 作为Java程序员来说 最痛苦的事情莫过于可以选择的范围太广 可以读的书太多 往往容易无所适从 我想就我自己读过的技术书籍中挑选出来一些 按照学习的先后顺序 推荐给大家 特别是那些想不断提高自己技术水平
  • Python文件读写

    Python的文件操作函数 open filename mode 文件打开模式 执行操作 r 以只读方式打开 默认 w 以写入的方式打开文件 会覆盖已经存在的文件 x 如果指定文件已经存在 使用此模式打开将引发异常 a 以写入模式打开 如果
  • 分治法求解汉诺塔问题

    汉诺塔问题简介 汉诺塔 又称河内塔 问题是源于印度一个古老传说的益智玩具 大梵天创造世界的时候做了三根金刚石柱子 在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘 大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上 并且规定
  • GD32E230使用J-LINK下载调试问题

    1 无法识别到GD32的芯片 j link的版本要V9的才行 也就是下图的HW版本V9 4 之前是V7一直无法识别 换成V9的j link之后就可以了 2 打开J link的setting时弹出盗版警告 Warning the connec
  • Dialog居中显示

    最新使用Dialog时 发现在以下低版本系统中会出现Dialog弹窗在左上角显示的情况 搜索了一下 发现了这个方法 记录一下 dialog 居中显示 Window window dialog getWindow if dialog null
  • C++中私有变量的值想怎么改就怎么改

    这应该算是C 的一个不足吧 C 是优秀的编程语言 但不是完美的 include
  • Mybatis-plus中,如何提前获取实体类用雪花算法生成的ID?

    Mybatis plus中 通过设置 TableId可以让Mybatis plus自动为我们生成雪花算法的ID号 该ID号是一个长整型数据 非常方便 但是雪花算法的ID号是在Insert执行的时候生成的 我们在Insert执行前是不知道En
  • 论文期刊分类学习记录

    SCI主要偏重理论性研究 EI偏工程应用 SCI源刊 gt SCI会议 gt EI源刊 影响因子较好 gt 既是中文核心又是EI源刊的期刊 gt EI源刊 影响因子一般 gt EI会议 权威会议 gt 中文核心期刊 南大核心 CSCS gt
  • SQL开窗函数(窗口函数)详解

    一 什么是开窗函数 开窗函数 分析函数 over 开窗函数也叫分析函数 有两类 一类是聚合开窗函数 一类是排序开窗函数 开窗函数的调用格式为 函数名 列名 OVER partition by 列名 order by列名 如果你没听说过开窗函
  • java8 list根据实体单字段、多字段分组。去重

    Map
  • boost静态链接库和c++/clr不兼容问题:未能加载文件或程序集,不是有效的Win32应用程序。

    项目上遇到的问题 c 编写的类使用托管c 包装成dll提供给c 项目使用 c 需要使用boost clr 项目目标平台都是win32 x86 开发环境win10 x64系统 vs2013 Net Framework 4 0 boost 1
  • Node之加密与解密处理

    crypto模块概述 在Node js中 使用OpenSSL类库作为其内部实现加密与解密处理的基础手段 这是因为目前OpenSSL已经成为了一个经过严格测试的可靠的加密与解密算法的实现工具 在Node js中 OpenSSL类库被封装在cr
  • 以太坊智能合约编程入门(一)

    原文地址 https medium com ConsenSys a 101 noob intro to programming smart contracts on ethereum 695d15c1dab4 1 ABBewYWJfdIFh
  • SMBMS项目

    一 准备工作 1 基本架构 2 在数据库中创建对应的表 对应数据库代码如下 CREATE DATABASE smbms USE smbms DROP TABLE IF EXISTS smbms address CREATE TABLE sm
  • 网络通信,UDP通信,TCP通信

    网络通信3要素 要素1 IP地址 IP地址操作类 InetAddress package com heima test import java net InetAddress import java net UnknownHostExcep
  • Python入门到机器学习再到深入学习及应用整个学习系统

    就在昨天我们收到了一位刚拿到Google offer的九章学员发来的截图 作为一名同是转专业到cs的程序猿 对此猿我定要表示万分真心的理解和祝贺 其中滋味 唯吾猿类方懂 此外这位细心的猿还找到了老师当时告诉她的6个妙招分享给大家 如上 在祝
  • MFC基本控件使用——列表控件(ListCtrl)

    咳咳 花了2天的时间 好好的把列表控件ListCtrl的基本使用研究了下 ListCtrl一共有4种样式 小图标 大图标 列表和报告 其实呢 列表控件我们再熟悉不过了 因为当你随便打开一个文件夹的时候 显示的就是一个列表控件 不相信 那可以
  • DVWA之CSP Bypass

    CSP Content Security Policy 即内容安全策略 点击这里有详细的介绍 不过简单了解下就是指 开发者在开发过程中设置了一个类似于白名单的策略 要信任某个页面 哪些外部资源可以执行 哪些不可以 这可以从根本上防御XSS
  • Wireshark零基础使用教程(超详细)

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 专栏简介 此文章已录入专栏 网络安全快速入门 Wireshark零基础使用教程 一 Wireshark是什么 二 Wiresh