wireshark抓包新手使用教程(超详细)

news2024/9/29 1:27:06

一、简介

Wireshark是一款非常流行的网络封包分析软件,可以截取各种网络数据包,并显示数据包详细信息。

为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。

wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容

二、安装

2.1、安装地址

Wireshark开源地址:https://github.com/wireshark/wireshark
Wireshark下载地址:https://www.wireshark.org/download

安装的话,就是傻瓜式的一步步点鼠标安装,没什么可说的了,安装步骤这里就省略了。

另外笔者个大家准备了139G的网络安全学习资源,有需要的可以评论区评论1我挨个发,或者关注后自取哦!

三、抓包示例

3.1、Wireshark抓包简单流程
1)主界面

2)3.2、 选择菜单栏上【捕获】 -> 【选项】,当然也可以点击【捕获选项】的图标一步到位,勾选【WLAN】网卡(这里需要根据各自电脑网卡使用情况选择,简单的办法可以看使用的IP对应的网卡),点击【开始】,启动抓包。

3)wireshark启动后,wireshark处于抓包状态中。

4)在window CMD命令行ping baidu.com

5)通过在过滤栏设置过滤条件进行数据包列表过滤,以免抓取无用包影响查看,这里就以ping baidu.com为例,只过滤百度的ip,设置如下:

ip.addr == 39.156.69.79 and icmp

表示只显示ICPM协议且源主机IP或者目的主机IP为39.156.69.79的数据包。注意:协议名称icmp要小写

关于Wireshark抓包流程就是如上步骤。

3.2、Wireshark抓包界面介绍

 

说明:数据包列表区中不同的协议使用了不同的颜色区分。协议颜色标识定位在菜单栏【视图】-> 【着色规则】。如下所示:

WireShark 主要分为这几个界面:
1)Display Filter(显示过滤器), 用于设置过滤条件进行数据包列表过滤。菜单路径:【分析】-> 【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协议

TCP包的具体内容

4)Dissector Pane(数据包字节区)。

3.3、Wireshark过滤器设置

wireshark工具中自带了两种类型的过滤器,学会使用这两种过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。

1)抓包过滤器
捕获过滤器的菜单栏路径为【捕获】 -> 【捕获过滤器】。用于在抓取数据包前设置。

如何使用?可以在抓取数据包前设置如下:

ip host www.baidu.com表示只捕获主机host为www.baidu.com的ICMP数据包。获取结果如下:

 

2)显示过滤器

显示过滤器是用于在抓取数据包后设置过滤条件进行过滤数据包。通常是在抓取数据包时设置条件相对宽泛或者没有设置导致抓取的数据包内容较多时使用显示过滤器设置条件过滤以方便分析。

然后可以通过设置显示器过滤条件进行提取分析信息。ip.addr == 183.232.231.174 and icmp。并进行过滤。

3.4、以上两者间的语法以及它们的区别

1、wireshark过滤器表达式的规则
1)抓包过滤器语法和实例

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

2)协议过滤
比较简单,直接在抓包过滤框中直接输入协议名即可。

tcp,只显示TCP协议的数据包列表

http,只查看HTTP协议的数据包列表

icmp,只显示ICMP协议的数据包列表

3)IP过滤

host 192.168.182.104

src host 192.168.182.104

dst host 192.168.182.104

4)端口过滤

port 80

src port 80

dst port 80

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

src host 192.168.182.104 && dst port 80 抓取主机地址为192.168.182.80、目的端口为80的数据包

host 192.168.182.104 || host 192.168.182.102 抓取主机为192.168.182.104或者192.168.182.102的数据包

!broadcast 不抓取广播数据包

2、显示过滤器语法和实例
1)比较操作符

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

2)协议过滤
比较简单,直接在Filter框中直接输入协议名即可。注意:协议名称需要输入小写。

tcp,只显示TCP协议的数据包列表

http,只查看HTTP协议的数据包列表

icmp,只显示ICMP协议的数据包列表

3)ip过滤

ip.src ==192.168.182.104 显示源地址为192.168.182.104的数据包列表

ip.dst==192.168.182.104, 显示目标地址为192.168.182.104的数据包列表

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

4)端口过滤

tcp.port ==80,  显示源主机或者目的主机端口为80的数据包列表。

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

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

4)Http模式过滤

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

5)逻辑运算符为 and/or/not

过滤多个条件组合时,使用and/or。比如获取IP地址为183.232.231.174的ICMP数据包表达式为ip.addr == 183.232.231.174 and icmp

四、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 == 120.240.100.48 and tcp,这里只抓取tcp的包,要不然其它信息有点多不好看。

图中可以看到wireshark截获到了三次握手的三个数据包。但是从上图看不止一个三次握手;其实还有一个重要的信息,如果眼尖的同学,会发现后面还有两次TLS的握手,没错,因为是通过https去发请求的,三次握手后就是TLS的握手了。虽然上面是通过http访问,但是会跳到https,流程图大致如下:

以下就是TLS握手过程

五、Wireshark分析tcpdump抓包结果

【文件】->【打开】选择要解析的文件。最后点击右边的箭头开始解析。

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

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

相关文章

day47-Testimonial Box Switcher(推荐箱切换器-动态进度条自动更新卡片信息)

50 天学习 50 个项目 - HTMLCSS and JavaScript day47-Testimonial Box Switcher&#xff08;推荐箱切换器-动态进度条自动更新卡片信息&#xff09; 效果 index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"…

Docker续集+Docker Compose

目录 Containerd与docker的关系 runCrunC与Containerd的关联 OCI协议Dockerfile多阶段构建&#xff08;解决&#xff1a;如何让一个镜像变得更小 &#xff09;多阶段构建Images瘦身实践.dockerignore Docker Compose快速开始Quick StartCompose 命令常用命令命令说明 Compose 模…

11. Mybatis 的增删查改【万字详解】

目录 1. 数据的查找 select 1.1 查询所有数据 1.2 通过 id 进行查找 2. 插入数据 insert 3. 修改数据 update 4. 删除数据 delete 5. $ 和 # 的区别 5.1 SQL 注入 用户登录 6. Spring Boot 打印 SQL 日志 7. order by 排序 8. like 查询 9. 通过页面返回数据 10. …

C++--菱形继承

1.什么是菱形继承 单继承&#xff1a;一个子类只有一个直接父类时称这个继承关系为单继承 多继承&#xff1a;一个子类有两个或以上直接父类时称这个继承关系为多继承 菱形继承的问题&#xff1a;菱形继承有数据冗余和二义性的问题&#xff0c;数据冗余是由于创建多个相同类型的…

【C++】优先级队列的基本概念以及其模拟实现

文章目录 补充知识&#xff1a;仿函数一、优先级队列&#xff1a;1.引入2.介绍 二、priority_queue的模拟实现1.大体框架2.私有成员函数&#xff1a;1.向下调整&#xff08;AdjustDown&#xff09;2.向上调整&#xff08;AdjustUp&#xff09; 3.公有成员函数1大小&#xff08;…

Windows驱动第一节(什么是驱动?)

本文来自微软,由本人兴趣爱好人工翻译(非机翻) What is a driver? - Windows drivers | Microsoft Learn 我想很难给驱动这个词一个准确的定义.最基础的定义是驱动是一个用于让操作系统和硬件设备通信的软件组件. 举一个例子,假设一个应用程序需要从硬件设备读取一些数据,这…

2023河南萌新联赛第(三)场:郑州大学 A - 发工资咯

2023河南萌新联赛第&#xff08;三&#xff09;场&#xff1a;郑州大学 A - 发工资咯 时间限制&#xff1a;C/C 2秒&#xff0c;其他语言4秒 空间限制&#xff1a;C/C 262144K&#xff0c;其他语言524288K 64bit IO Format: %lld 题目描述 一个公司有n个人&#xff0c;每个月都…

C++类与对象 - 3(拷贝构造函数和运算符重载)(超详细)

C类与对象 - 3 1. 拷贝构造函数1.1 概念1.2 特征 2. 赋值运算符重载2.1 运算符重载2.2 赋值运算符重载记点2.3 前置和后置重载 3. const成员函数记点 4. 取地址及const取地址操作符重载 1. 拷贝构造函数 1.1 概念 在现实生活中&#xff0c;可能存在一个与你一样的自己&#x…

RK3566 android代码编译

一、搭建环境 所用的ubuntu系统之前已编译过linux代码&#xff0c;所以只需安装编译android所需的环境。 安装jdk-8 如果之前系统没有安装则执行以下命令安装&#xff1a; sudo apt-get install openjdk-8-jdk 查看当前系统是否有jdk-8 $ sudo update-alternatives --conf…

奇舞周刊第 501 期:前端打包加个性能插件检测~ 性能不过关就发邮件告诉领导!...

记得点击文章末尾的“ 阅读原文 ”查看哟~ 下面先一起看下本期周刊 摘要 吧~ 奇舞推荐 ■ ■ ■ 前端打包加个性能插件检测~ 性能不过关就发邮件告诉领导&#xff01; 本文作者结合 Lighthouse 是一个开源的自动化工具&#xff0c;给组内的项目都在 CICD 流程上更新上了性能守卫…

每日一博 - How To Improve API Performance

文章目录 包括但局限于以下措施1. 采用分页显示2. 异步记录日志3. 利用缓存技术4. 实施负载压缩5. 管理数据库连接池 包括但局限于以下措施 1. 采用分页显示 当查询结果过多时&#xff0c;将结果分为多个页面进行显示&#xff0c;可以有效地提高系统的响应速度。这样&#xff…

高效率,38V最大输入单电感同步升/降稳压器SYV939C

SYV939是一种高压同步降压-升压转换器。该器件工作在4V至28V的宽输入电压范围内&#xff0c;具有10max平均电感电流能力。四个集成的低RDS(ON)开关最大限度地减少了传导损耗。 SYV939c包括完整的保护功能&#xff0c;如输出过流/短路保护&#xff0c;过压保护和热停机&#xff…

找到刀郎《罗刹海市》--微信小程序调用地图--【小程序花园】

微信目录集链接在此&#xff1a; 详细解析黑马微信小程序视频–【思维导图知识范围】难度★✰✰✰✰ 不会导入/打开小程序的看这里&#xff1a;参考 让别人的小程序长成自己的样子-更换window上下颜色–【浅入深出系列001】 文章目录 本系列校训学习资源的选择地图在小程序里…

数据库的下一个变革方向——云原生数据库

快速上手亚马逊云原生数据库 数据库免费试用及在线大会 亚马逊数据库产品支持免费试用&#xff0c;并且提供上手教程。【数据库免费试用&上手教程】 回看人类历史上每一次技术的跨越&#xff0c;生产力变革永远不会缺席。“云原生数据库”也已经悄然走到了第十个年头。未…

RabbitMQ 教程 | 客户端开发向导

&#x1f468;&#x1f3fb;‍&#x1f4bb; 热爱摄影的程序员 &#x1f468;&#x1f3fb;‍&#x1f3a8; 喜欢编码的设计师 &#x1f9d5;&#x1f3fb; 擅长设计的剪辑师 &#x1f9d1;&#x1f3fb;‍&#x1f3eb; 一位高冷无情的编码爱好者 大家好&#xff0c;我是 DevO…

后台管理系统中常见的三栏布局总结:使用element ui构建

vue2 使用 el-menu构建的列表布局&#xff1a; 列表可以折叠展开 <template><div class"home"><header><el-button type"primary" click"handleClick">切换</el-button></header><div class"conte…

Arcgis画等高线

目录 数据准备绘制等高线3D等高线 今天我们将学习如何在ArcGIS中绘制等高线地图。等高线地图是地理信息系统中常见的数据表现形式&#xff0c;它通过等高线将地形起伏展现得一目了然&#xff0c;不仅美观&#xff0c;还能提供重要的地形信息。 数据准备 在开始之前&#xff0c…

【javaSE】 类和对象详解

目录 面向对象的初步认知 什么是面向对象 面向对象与面向过程 类定义和使用 简单认识类 类的定义格式 注意事项 练习定义类 定义一个狗类 定义一个学生类 注意事项 类的实例化 什么是实例化 注意事项 类和对象的说明 this引用 为什么要有this引用 什么是this引…

FSM:Full Surround Monodepth from Multiple Cameras

参考代码&#xff1a;None 介绍 深度估计任务作为基础环境感知任务&#xff0c;在基础上构建的3D感知才能更加准确&#xff0c;并且泛化能力更强。单目的自监督深度估计已经有MonoDepth、ManyDepth这些经典深度估计模型了&#xff0c;而这篇文章是对多目自监督深度估计进行探…

实用科研网站(自用)

网站网址Papers With Codehttps://paperswithcode.com/AMinerhttps://www.aminer.cn/Connected Papershttps://www.connectedpapers.com/ Papers With Code Papers With Code&#xff0c;在这个网站上可以看到最新的机器学习信息&#xff0c;如&#xff1a;当前研究热点、趋势…