Wireshark数据包分析入门

news2024/12/23 17:24:17

Wireshark数据包分析

  • 1. 网络协议基础
    • 1.1. 应传网数物(应表会传网数物)
  • 2. 三次握手
    • 2.1. 第一次握手
    • 2.2. 第二次握手
    • 2.3. 第三次握手
    • 2.4. 三次握手后流量特征
  • 3. 第一层---物理层(以太网)
  • 4. 第二层---数据链路层(PPP L2TP PPTP)
  • 5. 第三层---网络层(IP ICMP ARP)
    • 5.1. ip协议解析
    • 5.2. ARP协议解析
  • 6. 第四层---传输层(TCP UDP TLS)
    • 6.1. Tcp协议解析
  • 7. 第五层---应用层(HTTP SSH FTP TELNET DNS)
  • 8. https之wireshrk解密
    • 8.1. 获取证书(略)
    • 8.2. 进行动态获取对称加密密钥解码
  • 9. wireshrk常用语法
    • 9.1. 按协议查询
    • 9.2. 按ip地址查询
    • 9.3. 按ip端口查询
    • 9.4. 按GET,POST查询
    • 9.5. 按MAC查询
    • 9.6. 按包长度过滤
    • 9.7. 按正则过滤
  • 10. 常见问题
    • 10.1. Eth/ethernet(以太网) ip tcp http关系?
    • 10.2. 序列标识?
    • 10.3. 结束包标识?
    • 10.4. Flags标识?
    • 10.5. 数据包分组的标识?
  • 11. 实战案例

1. 网络协议基础

1.1. 应传网数物(应表会传网数物)

Wireshark 是分成了tcp/ip五层模型的方式
在这里插入图片描述

2. 三次握手

2.1. 第一次握手

在这里插入图片描述

2.2. 第二次握手

在这里插入图片描述

2.3. 第三次握手

在这里插入图片描述

2.4. 三次握手后流量特征

在这里插入图片描述
在这里插入图片描述

注1:"TCP segment of a reassembled PDU"意味着你正在查看的是一个重新组装后的PDU中的一个TCP段。这通常发生在数据包的原始大小超过了网络的最大传输单元(MTU)时,因此数据在发送前被分割成多个段,并在接收端被重新组装。

3. 第一层—物理层(以太网)

简介:在物理层上所传数据的单位是比特。物理层的任务就是透明地传送比特流。

种类:以太网 · 调制解调器 · 电力线通信(PLC) · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线等。

在这里插入图片描述

4. 第二层—数据链路层(PPP L2TP PPTP)

简介:两个相邻结点之间传送数据是直接传送的(点对点),需要使用专门的链路层的协议,而在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧(framing),在两个相邻结点之间的链路上“透明”地传送帧中的数据。

种类:Wi-Fi(IEEE 802.11) · WiMAX(IEEE 802.16) ·ATM · DTM · 令牌环 · 以太网 ·FDDI · 帧中继 · GPRS · EVDO ·HSPA · HDLC · PPP · L2TP ·PPTP ·
ISDN·STP · CSMA/CD等。

在这里插入图片描述

5. 第三层—网络层(IP ICMP ARP)

简介:1.在发送数据时,网络层把传输层产生的报文封装成分组或包进行传送。2.选则合适的路由,找到目的主机。

种类:IP (IPv4 · IPv6) · ICMP· ICMPv6·IGMP ·IS-IS · IPsec · ARP ·
RARP · RIP等。

5.1. ip协议解析

在这里插入图片描述

注1:Flags标记是否分片与流量包过大分包传输的主要区别在于:前者是数据包头部的一个标志位,用于指示数据包的状态或特性;而后者是一种数据传输机制,用于处理超过MTU限制的数据包。要注意的是,虽然flags标记和分包传输都与数据包的处理和传输有关,但它们在实际应用中可能相互独立或相互关联。例如,一个数据包可能因为其大小超过了MTU而被分片传输,同时其flags标记也可能指示其他状态或特性。

注2:Identification:02xa3f(10815) 为数据包标识,用于判断回复包的对应id

注3:TTL:128 意思是能跳转128个路由或交换机,超出128次,则丢弃。

5.2. ARP协议解析

在这里插入图片描述

6. 第四层—传输层(TCP UDP TLS)

简介:负责向两个主机中进程之间的通信提供服务。由于一个主机可同时运行多个进程,因此运输层有复用(多个应用层进程可同时使用下面传输层的服务)和分用(把收到的信息分别交付给上面应用层中相应的进程)的功能。

种类:TCP · UDP · TLS · DCCP · SCTP · RSVP · OSPF 等。

6.1. Tcp协议解析

在这里插入图片描述

注1:Stream index : 组序号,用来表示多个数据白是否属于同一组的id表示。

注2:TCP payload :后续携带的相关数据

注3:TCP Segment : 当传输数据较大时,一个完整消息会被分割成多个请求包,每个请求包的大小。

注4:[Conversation completeness: Incomplete,ESTABLISHED(7)] :会话完整标记,计算方法:
1:SYN 2:SYN-ACK 4:ACK 8:DATA 16:FIN 32:RST
如:7=1+2+4 表示一个仅包含标准TCP三次握手的会话。

7. 第五层—应用层(HTTP SSH FTP TELNET DNS)

简介:直接为用户的应用进程提供服务

种类: DNS · FTP(文件传送)· HTTP(万维网应用)· SMTP(电子邮件)·SSH
·TELNET · SNMP · POP3 ·RPC · RTCP · RTP · RTSP· SDP· SOAP · GTP · STUN
· NTP · SSDP · BGP · DHCP · Gopher · IMAP4 · IRC · SIP · NNTP · XMPP等。

8. https之wireshrk解密

在这里插入图片描述

8.1. 获取证书(略)

8.2. 进行动态获取对称加密密钥解码

  1. 首先针对Chrome浏览器进行配置
    a) 先创建保存密期文件,最好是英文路径,文件以英文名称,如:
    E:\Wireshark\wiresharkkey\sslkeylog.log
    在这里插入图片描述
    b) 找到Chrome的快捷方式,快捷方式->鼠标右键->快捷方式->目标,目标启动路径后面添加–ssl-key-log-file=E:\Wireshark\wiresharkkey\sslkeylog.log
    在这里插入图片描述
  2. 针对wireshark进行配置
    a) 编辑->首选项->Protocols->TLS->修改路径
    在这里插入图片描述

在这里插入图片描述
3. 重启浏览器,解密成功。
在这里插入图片描述

9. wireshrk常用语法

9.1. 按协议查询

tcp,udp,arp,icmp,http,ftp,dns,ip,ssl等
排除arp包,如!arp 或者 not arp

9.2. 按ip地址查询

(ip.dst == 192.168.70.1 && ip.src == 192.168.70.128)

(ip.dst == 192.168.70.1 && ip.src == 192.168.70.128) || (ip.dst == 192.168.70.128 && ip.src == 192.168.70.1)

9.3. 按ip端口查询

tcp.port eq 80 // 不管端口是来源的还是目标的都显示
tcp.port == 80
tcp.port eq 2722
tcp.port eq 80 or udp.port eq 80
tcp.dstport == 80 // 只显tcp协议的目标端口80
tcp.srcport == 80 // 只显tcp协议的来源端口80
udp.port eq 15000

过滤端口范围
tcp.port >= 1 and tcp.port <= 80

9.4. 按GET,POST查询

http.request.method == “GET”
http.request.method == “POST”
http.request.uri == “/img/logo-edu.gif”
http contains “GET”
http contains “HTTP/1.”
// GET包
http.request.method == “GET” && http contains "Host: "
http.request.method == “GET” && http contains "User-Agent: "
// POST包
http.request.method == “POST” && http contains "Host: "
http.request.method == “POST” && http contains "User-Agent: "
// 响应包
http contains “HTTP/1.1 200 OK” && http contains "Content-Type: "
http contains “HTTP/1.0 200 OK” && http contains "Content-Type: "

9.5. 按MAC查询

太以网头过滤
eth.dst == A0:00:00:04:C5:84 // 过滤目标mac
eth.src eq A0:00:00:04:C5:84 // 过滤来源mac
eth.dst == A0:00:00:04:C5:84
eth.dst == A0-00-00-04-C5-84
eth.addr eq A0:00:00:04:C5:84 // 过滤来源MAC和目标MAC都等于A0:00:00:04:C5:84的

9.6. 按包长度过滤

udp.length == 26 这个长度是指udp本身固定长度8加上udp下面那块数据包之和
tcp.len >= 7 指的是ip数据包(tcp下面那块数据),不包括tcp本身
ip.len == 94 除了以太网头固定长度14,其它都算是ip.len,即从ip本身到最后
frame.len == 119 整个数据包长度,从eth开始到最后

eth —> ip or arp —> tcp or udp —> data

9.7. 按正则过滤

1、wireshark基本的语法字符
\d 0-9的数字
\D \d的补集(以所以字符为全集,下同),即所有非数字的字符
\w 单词字符,指大小写字母、0-9的数字、下划线
\W \w的补集
\s 空白字符,包括换行符\n、回车符\r、制表符\t、垂直制表符\v、换页符\f
\S \s的补集
. 除换行符\n外的任意字符。 在Perl中,“.”可以匹配新行符的模式被称作“单行模式”
.* 匹配任意文本,不包括回车(\n)? 。 而,[0x00-0xff]* 匹配任意文本,包括\n
[…] 匹配[]内所列出的所有字符
[^…] 匹配非[]内所列出的字符

2、定位字符 所代表的是一个虚的字符,它代表一个位置,你也可以直观地认为“定位字符”所代表的是某个字符与字符间的那个微小间隙。
^ 表示其后的字符必须位于字符串的开始处
$ 表示其前面的字符必须位于字符串的结束处
\b 匹配一个单词的边界
\B 匹配一个非单词的边界

3、重复描述字符
{n} 匹配前面的字符n次
{n,} 匹配前面的字符n次或多于n次
{n,m} 匹配前面的字符n到m次
? 匹配前面的字符0或1次
+ 匹配前面的字符1次或多于1次
* 匹配前面的字符0次或式于0次

4、and or 匹配
and 符号 并
or 符号 或
例如:
tcp and tcp.port==80
tcp or udp

10. 常见问题

10.1. Eth/ethernet(以太网) ip tcp http关系?

HTTP协议定义了数据传输的格式和语义,而TCP协议提供了实际的传输通道当客户端向服务器发送请求时,TCP协议将请求消息分割成多个数据包进行传输,而HTTP协议则解析这些数据包并进行处理,最终返回响应消息。 当数据传输完成后,TCP协议通过四次握手来断开连接,HTTP协议也随之结束。

10.2. 序列标识?

在这里插入图片描述

在这里插入图片描述

10.3. 结束包标识?

tcp.flags.fin

10.4. Flags标识?

SYN : 为1表示这是连接请求或是连接接受请求,用于创建连接和使顺序号同步。
ACK : 为1表示确认号字段有效。
FIN : 为1表示发送方没有数据要传输了,要求释放连接。
RST : 为1表示出现严重差错。可能需要重新建立TCP连接,还可以用于拒绝非法的报文段和拒绝连接请求
Windows : 窗口,表示从确认号开始,本报文的发送方可接收的最大流量。
标记中括号【】的都是wireshark自动实现的。

10.5. 数据包分组的标识?

【stream index :29】 数据包分组的标识 追踪流就是按这个来的

11. 实战案例

暂无

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

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

相关文章

139GB,台北倾斜摄影OSGB数据V0.1版

本月初发布了谷歌倾斜摄影数据OSGB转换工具V0.2版(更新&#xff01;谷歌倾斜摄影转换生成OSGB瓦片V0.2版),并免费分享了基于V0.2版转换工具生产的澳门地区OSGB数据(首发&#xff01;澳门地区OSGB数据V0.2版免费分享),V0.2版本在生产速度、显示效率和OSGB数据轻量化方面进行了优…

软考:高级系统架构师案例必备概念

根据2013年-2023年真题整理 必背案例概念 软件架构风格 软件架构风格是指描述特定软件系统组织方式的惯用模式。 组织方式描述了系统的组成构件和这些构件的组织方式。 惯用模式则反映众多系统共有的结构和语义。 架构风险 架构风险是指架构设计中潜在的、存在问题的架构…

零碳家庭 “光”的力量

有行业专家乐观预测&#xff0c;在供给充足、基础设施建设与时俱进的情况下&#xff0c;2025年&#xff0c;我国新能源汽车市场的占有率将会达到50%&#xff0c;2030年更有望突破90%的大关。为了方便新能源汽车的出行&#xff0c;在家中安装一个智能充电桩是越来越多驾驶者的选…

计算机网络---第十一天

生成树协议 stp作用&#xff1a; 作用&#xff1a;stp用于解决二层环路问题。 BPDU&#xff1a; 含义&#xff1a;桥协议数据单元&#xff0c;用于传递stp协议相关报文 分类&#xff1a;配置bpdu---用于传递stp的配置信息 tcn bpdu---用于通告拓扑变更信息 包含信息&…

基于SpringBoot的智慧物业管理设计与实现论文

摘  要 随着我国发展和城市开发&#xff0c;物业管理已形成规模&#xff0c;其效益也越来越明显。在经济效益对地方政府而言&#xff0c;主要体现为&#xff1a;减少了大量的财政补贴&#xff0c;对住宅区开发企业而言&#xff0c;能提高物业市场竞争力&#xff0c;使开发企…

系统思考—啤酒游戏

最近有不少的合作伙伴来询问我啤酒游戏这个来自于MIT&#xff08;麻省理工学院&#xff09;经典的沙盘&#xff0c;上周刚刚结束Midea旗下的一家公司市场运营部《啤酒游戏沙盘-应对动态性复杂的系统思考智慧》的课程。 参与这次沙盘体验的团队成员深刻体会到了全局思考的重要性…

dtc、fdtdump、fdtget、fdtput、convert-dtsv0

目录标题 1. dtc&#xff08;Device Tree Compiler&#xff09;2. fdtdump3. fdtget4. fdtput5. convert-dtsv0 dtc、fdtdump、fdtget、fdtput、convert-dtsv0这些工具都与Linux设备树&#xff08;Device Tree&#xff09;的处理有关。 设备树是一种数据结构&#xff0c;用于描…

JavaSE学习文档(上)

JavaSE学习文档 第一章 Java概述1.2 计算机编程语言1.3 Java语言版本概述1.4 Java语言分类1.5 JDK,JRE,JVM的关系1.6 JDK安装1.7 DOS命令1.8 Java程序执行过程1.9 编写HelloWorld1.10 常见错误1.11 编写程序时要注意的点 第二章 Java基础语法2.1 Java中的注释文档注释 2.2 关键…

免杀技术之白加黑的攻击防御

一、介绍 1. 什么是白加黑 通俗的讲白加黑中的白就是指被杀软列入到可信任列表中的文件。比如说微软自带的系统文件或者一些有有效证书签名的文件,什么是微软文件&#xff0c;或者什么是有效签名文件在后面我们会提到他的辨别方法。黑就是指我们自己的文件&#xff0c;没有有…

【办公类-26-01】20240422 UIBOT网络教研(自动登录并退出多个账号,半自动半人工)

作品展示&#xff1a; 背景需求&#xff1a; 每学期有多次网络教研 因为我有历任搭档的进修编号和登录密码&#xff0c; 所以每次学习时&#xff0c;我会把历任搭档的任务也批量完成。 但是每次登录都要从EXCEL里复制一位老师的“进修编号”“密码”&#xff0c;还要点击多次…

53.基于微信小程序与SpringBoot的戏曲文化系统设计与实现(项目 + 论文)

项目介绍 本站采用SpringBoot Vue框架&#xff0c;MYSQL数据库设计开发&#xff0c;充分保证系统的稳定性。系统具有界面清晰、操作简单&#xff0c;功能齐全的特点&#xff0c;使得基于SpringBoot Vue技术的戏曲文化系统设计与实现管理工作系统化、规范化。 技术选型 后端:…

最快2周录用!多领域EI,征稿范围广!各指标优秀!

计算机工程类EI&#xff08;最快2周录用&#xff09; 【期刊简介】最新EI期刊目录内源刊 【检索情况】EI&Scopus双检 【版面情况】仅10篇版面 【年发文量】60篇左右 【国人占比】约13% 【收录年份】2009年被EI数据库收录 【审稿周期】预计1个月左右录用 【征稿领域…

aqs 条件队列和同步队列、独占模式和共享模式

同步/条件队列 先上代码 import java.util.LinkedList; import java.util.Queue; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.ReentrantLock;public class ProducerConsumerExample {private static final int CAPACITY 5;private fi…

二维码存储图片如何实现?相册二维码的制作技巧

如何将照片生成二维码后存储展示&#xff1f;现在很多人会将图片生成二维码以后&#xff0c;用于分享或者储存的用途&#xff0c;减少个人内存的占用量&#xff0c;而且分享照片也会更加的方便&#xff0c;只需要扫描二维码就可以让其他人查看图片。 想要制作图片二维码的步骤…

【C++题解】1033. 判断奇偶数

问题&#xff1a;1033. 判断奇偶数 类型&#xff1a;分支 题目描述&#xff1a; 输入一个整数&#xff0c;判断是否为偶数。是输出 y e s &#xff0c;否则输出n o。 输入&#xff1a; 输入只有一行&#xff0c;包括 1 个整数&#xff08;该整数在 1∼10000 的范围内&#…

【算法刷题 | 贪心算法02】4.24(摆动序列)

文章目录 3.摆动序列3.1题目3.2解法&#xff1a;贪心3.2.1贪心思路3.2.2代码实现 3.摆动序列 3.1题目 如果连续数字之间的差严格地在正数和负数之间交替&#xff0c;则数字序列称为 摆动序列 。 第一个差&#xff08;如果存在的话&#xff09;可能是正数或负数。仅有一个元素…

python爬虫 - 爬取html中的script数据(zum.com新闻信息 )

文章目录 1. 分析页面内容数据格式2. 使用re.findall方法&#xff0c;编写爬虫代码3. 使用re.search 方法&#xff0c;编写爬虫代码 1. 分析页面内容数据格式 &#xff08;1&#xff09;打开 https://zum.com/ &#xff08;2&#xff09;按F12&#xff08;或 在网页上右键 --…

书生·浦语大模型第二期实战营第四节-XTuner 微调 LLM:1.8B、多模态、Agent 作业-XTuner 微调个人小助手认知

视频教程&#xff1a;XTuner 微调 LLM:1.8B、多模态、Agent 文字教程&#xff1a;XTuner 微调 LLM:1.8B、多模态、Agent 作业来源&#xff1a;https://github.com/InternLM/Tutorial/blob/camp2/xtuner/homework.md XTuner 微调个人小助手认知 1. 环境安装 2.准备工作 2.1…

(done) 什么是 SVD 奇异值分解?什么是 TruncatedSVD 截断奇异值分解?

来源&#xff1a;https://www.bilibili.com/video/BV16A411T7zX/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c7355c5490fc600 奇异值分解其实就是如下图&#xff0c;把矩阵 M 分解成一个正交方阵 U&#xff0c;乘以一个不规则奇异值矩阵 sigma…

校企联合,共谋发展 | 欢迎陕西科技大学一行来访Aigtek安泰电子交流洽谈!

为进一步深化校企合作共建&#xff0c;促进优秀人才引进。4月12日&#xff0c;陕西科技大学电智学院的院长马院长、副院长任院长、电子信息工程专业副主任张攀峰老师、郭拓老师&#xff0c;到访西安安泰电子科技有限公司&#xff0c;就开展校企合作展开了学习交流&#xff0c;安…