【网络技术】【Kali Linux】Wireshark嗅探(十四)QUIC(快速UDP互联网连接)协议报文捕获及分析

news2024/11/24 18:42:30

往期 Kali Linux 上的 Wireshark 嗅探实验见博客:

【网络技术】【Kali Linux】Wireshark嗅探(一)ping 和 ICMP

【网络技术】【Kali Linux】Wireshark嗅探(二)TCP 协议

【网络技术】【Kali Linux】Wireshark嗅探(三)用户数据报(UDP)协议

【网络技术】【Kali Linux】Wireshark嗅探(四)域名系统(DNS)

【网络技术】【Kali Linux】Wireshark嗅探(五)文件传输协议(FTP)

【网络技术】【Kali Linux】Wireshark嗅探(六)地址解析协议(ARP)

【网络技术】【Kali Linux】Wireshark嗅探(七)超文本传送协议(HTTP)

【网络技术】【Kali Linux】Wireshark嗅探(八)动态主机配置协议(DHCP)

【网络技术】【Kali Linux】Wireshark嗅探(九)安全HTTP协议(HTTPS协议)

【网络技术】【Kali Linux】Wireshark嗅探(十)IPv4和IPv6

【网络技术】【Kali Linux】Wireshark嗅探(十一)以太网Ethernet协议报文捕获及分析

【网络技术】【Kali Linux】Wireshark嗅探(十二)NBNS协议报文捕获及分析

【网络技术】【Kali Linux】Wireshark嗅探(十三)IGMP(因特网组管理)协议报文捕获及分析

一、QUIC协议简介(摘录自维基百科)

QUIC(读作“quick”)是一个通用的传输层网络协议,最初由Google的Jim Roskind设计。该协议于2012年实现并部署,2013年随着实验范围的扩大而公开发布,并向IETF描述。虽然长期处于互联网草案阶段,但从Chrome浏览器至Google服务器的连接中超过一半的连接都使用了QUIC。Microsoft Edge、Firefox都已支持此协议;Safari实现了QUIC,但默认情况下没有启用。QUIC于RFC9000中被正式标准化。

QUIC最初是“快速UDP互联网连接”(Quick UDP Internet Connection)的首字母缩写,但在IETF标准中,QUIC不是任何内容的缩写。QUIC提高了目前使用TCP的面向连接的网络应用的性能。QUIC通过UDP协议在两个端点之间建立若干个多路连接,以达到在网络层淘汰TCP的目标。因为其设计目标在于取代TCP协议,该协议偶尔也被昵称为“TCP/2”。

QUIC与HTTP/2的多路复用连接协同工作,允许多个数据流独立到达所有端点,因此不受涉及其他数据流的丢包影响。与之相比,HTTP/2建立在传输控制协议(TCP)上,如果任何一个TCP数据包延迟或者丢失,所有多路数据流都会遭受队头阻塞延迟。

QUIC的次要目标包括降低连接和传输时延,以及每个方向的带宽估计以避免拥塞。它还将拥塞控制算法移到了两个端点的用户空间,而不是内核空间,据称这将使这些算法得到更快的改进。此外,该协议还可以扩展前向纠错(FEC),以进一步提高预期错误时的性能,这被视为协议演进的下一步。

2015年6月,QUIC规范的互联网草案提交给IETF进行标准化。2016年,成立了QUIC工作组。2018年10月,IETF的HTTP工作组和QUIC工作组共同决定将QUIC上的HTTP映射称为 “HTTP/3”,以提前使其成为全球标准。2021年5月IETF公布RFC9000,QUIC规范推出了标准化版本。

二、网络环境

本次实验采用无线局域网(WLAN)进行,只需要1台运行Windows 11操作系统的主机。

三、QUIC协议报文捕获

启动Wireshark,选择本地无线局域网连接,在过滤条件一栏中输入quic,捕获结果如下图所示:

在这里插入图片描述

四、QUIC协议报文分析

选中捕获的其中一则报文,右键其QUIC协议段,选择“复制——所有可见项目”,得到报文的内容如下:

# 1、物理层
Frame 32: 1292 bytes on wire (10336 bits), 1292 bytes captured (10336 bits) on interface \Device\NPF_{6D6E1E4D-E75A-45D1-9A8C-A0E81BEF93DC}, id 0
# 2、传输层
Ethernet II, Src: IntelCor_63:91:33 (38:87:d5:63:91:33), Dst: Shenzhen_17:72:58 (c0:7c:90:17:72:58)
# 3、网际层(使用IPv4)
Internet Protocol Version 4, Src: 192.168.1.4, Dst: 64.233.188.84
# 4、传输层(可见,使用UDP协议而不是TCP协议)
User Datagram Protocol, Src Port: 52645, Dst Port: 443
# IETF的QUIC协议部分
QUIC IETF
    QUIC Connection information
        [Connection Number: 0]
    [Packet Length: 1250]
    1... .... = Header Form: Long Header (1)
    .1.. .... = Fixed Bit: True
    ..00 .... = Packet Type: Initial (0)
    .... 00.. = Reserved: 0
    .... ..00 = Packet Number Length: 1 bytes (0)
    Version: 1 (0x00000001)
    Destination Connection ID Length: 8
    Destination Connection ID: 758cb946c047c17b
    Source Connection ID Length: 0
    Token Length: 0
    Length: 1232
    Packet Number: 1
    Payload:   47ceb5ce102c9e1b9ca812e36d3d1989c3f8d2248b9e1ca5dba1aaf9e370dfdb82c221e8…
    CRYPTO  # 加密部分

协议加密部分(CRYPTO)内容:

    CRYPTO
        Frame Type: CRYPTO (0x0000000000000006)  # 帧的分类(加密帧)
        Offset: 0  # 初始偏置
        Length: 1211  # 数据长度
        Crypto Data  # 加密的数据
        TLSv1.3 Record Layer: Handshake Protocol: Client Hello (fragment)  # TLS握手
            Handshake Protocol: Client Hello (fragment)
            Reassembled Handshake Message in frame: 33

五、实验总结

本次实验使用Wireshark软件,对无线局域网中使用的QUIC(快速UDP互联网连接)协议进行了初步探测和报文分析,对协议的发展历史和工作原理获得了初步了解。

六、参考文献

1、《计算机网络(第7版)》,谢希仁 编著,北京,电子工业出版社,2017年10月;

2、《Kali Linux 2 网络渗透测试——实践指南(第2版)》,李华峰 著,北京,人民邮电出版社,2021年3月。

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

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

相关文章

【Unity2D:Animator】为角色添加动画效果

一、添加Animator组件并创建Animator Controller文件 1. 添加Animator组件: 2. 在Assets-Art文件夹中新建一个名为Animations的文件夹,用来存储所有动画资源 3. 在Animations文件夹中新建一个名为Player的文件夹,再创建一个名为Animators的文…

2024电工杯数学建模A题Matlab代码+结果表数据教学

2024电工杯A题保姆级分析完整思路代码数据教学 A题题目:园区微电网风光储协调优化配置 以下仅展示部分,完整版看文末的文章 %A_1_1_A % 清除工作区 clear;clc;close all;warning off; %读取参数%正常读取 % P_LOADxlsread(附件1:各园区典…

springboot vue 开源 会员收银系统 (2) 搭建基础框架

前言 完整版演示 前面我们对会员系统https://blog.csdn.net/qq_35238367/article/details/126174288进行了分析 确定了技术选型 和基本的模块 下面我们将从 springboot脚手架开发一套收银系统 使用脚手架的好处 不用编写基础的rabc权限系统将工作量回归业务本身生成代码 便于…

盲人社会适应性训练:打开生活的新篇章

在现代社会的快节奏中,每一位成员都在寻求更好的方式来适应环境,对于盲人群体而言,这种适应性尤为关键。盲人社会适应性训练作为一个旨在提升盲人生活质量和独立性的系统性过程,正逐步受到广泛关注。在这一过程中,一款…

Jmeter+prometheus+grafana性能测试

文章目录 Jmeterprometheusgrafana性能测试背景目标设计思路原理案例启发 Jmeterprometheusgrafana性能测试 背景 ​ 在现代社会中,人们对于应用程序的响应速度和性能体验提出了越来越高的要求。无论是电子商务网站、社交媒体平台还是企业级软件系统,都…

Playwright教程

Playwright简介 支持多数浏览器 在Chromium,Firefox和WebKit上进行测试。Playwright拥有适用于所有现代浏览器的完整API覆盖,包括Google Chrome和Microsoft Edge(带有Chromium),Apple Safari(带有WebKit&a…

VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION--论文笔记

论文笔记 论文来源 Very Deep Convolutional Networks for Large-Scale Image Recognition 代码来源 还没上传 数据集 这里采用的是猫狗数据集 还没上传 1论文摘要的翻译 在这项工作中,我们研究了卷积网络深度对其在大规模图像识别设置中的准确性的影响。我…

CTFHUB技能树——SSRF(二)

目录 上传文件 ​FastCGI协议 Redis协议 上传文件 题目描述&#xff1a;这次需要上传一个文件到flag.php了.祝你好运 index.php与上题一样&#xff0c;使用POST请求的方法向flag.php传递参数 //flag.php页面源码 <?phperror_reporting(0);if($_SERVER["REMOTE_ADDR&…

删除MySQL中所有表的外键

方法一&#xff1a; 原理 查询schema中所有外键名称然后拼接生成删除语句 第一步&#xff1a; SELECT CONCAT(ALTER TABLE ,TABLE_SCHEMA,.,TABLE_NAME, DROP FOREIGN KEY ,CONSTRAINT_NAME, ;) FROM information_schema.TABLE_CONSTRAINTS c WHERE c.TABLE_SCHEMA数据库名…

node环境问题(无法加载文件D:\Software\Node.js\node_global\vue.ps1,因为在此系统上禁止运行脚本。)

问题&#xff1a;npm安装lerna显示安装成功&#xff0c;但是lerna -v的时候报错 解决步骤&#xff1a; 1、输入&#xff1a;Get-ExecutionPolicy 2、输入&#xff1a;Set-ExecutionPolicy -Scope CurrentUser&#xff08;有选项的选Y&#xff09; 3、输入&#xff1a;RemoteSi…

超详细的前后端实战项目(Spring系列加上vue3)前端篇(二)(一步步实现+源码)

好了&#xff0c;兄弟们&#xff0c;继昨天的项目之后&#xff0c;开始继续敲前端代码&#xff0c;完成前端部分 昨天完成了全局页面的代码&#xff0c;和登录页面的代码&#xff0c;不过昨天的代码还有一些需要补充的&#xff0c;这里添加一下 内容补充&#xff1a;在调用登…

信息系统项目管理师0129:输入(8项目整合管理—8.7监控项目工作—8.7.1输入)

点击查看专栏目录 文章目录 8.7 监控项目工作8.7.1 输入8.7 监控项目工作 监控项目工作是跟踪、审查和报告整体项目进展,以实现项目管理计划中确定的绩效目标的过程。本过程的主要作用: 让干系人了解项目的当前状态并认可为处理绩效问题而采取的行动;通过成本和进度预测,让…

房地产支持政策加码不断,美克家居全力变革未来可期

2023年我国经济处于恢复发展阶段&#xff0c;而家具制造业“回温”速度明显慢于经济增速&#xff0c;在这一背景下&#xff0c;美克家居如此营收表现并不令人感到意外。而在充沛现金流支撑下&#xff0c;辅以全方位开展降本增效的年度经营规划&#xff0c;公司亏损收窄或已为期…

rclone迁移对象存储之间的数据

1 概述 rclone是一款文件复制工具&#xff0c;既可以用于在linux主机之间复制文件&#xff0c;也可以在对象存储之间复制文件。 rclone的官网为&#xff1a; https://rclone.orgrlcone关于对象存储的官方文档为&#xff1a; https://rclone.org/s32 安装 2.1 yum安装 yum …

【全网最全】2024电工杯数学建模A题前两问完整解答+21页初步参考论文+py代码+保奖思路等(后续会更新成品论文)

您的点赞收藏是我继续更新的最大动力&#xff01; 一定要点击如下的卡片链接&#xff0c;那是获取资料的入口&#xff01; 【全网最全】2024电工杯数学建模A题前两问完整解答21页初步参考论文py代码保奖思路等&#xff08;后续会更新成品论文&#xff09;「首先来看看目前已有…

在线生成数据库er图的工具

网址 https://databasediagram.com/ 其实很早之前我也有类似的想法&#xff0c;根据数据表结构&#xff0c;显示数据表之间的关系图。 当时我还写了一个工具&#xff0c;可惜后来就没怎么用过了。 这个网站和我当时的思路很像&#xff0c;只不过他这个页面显示比我的好得多&…

谈恋爱没经验?那就来刷谈恋爱经验宝宝吧

❤️作者主页&#xff1a;小虚竹 ❤️作者简介&#xff1a;大家好,我是小虚竹。2022年度博客之星评选TOP 10&#x1f3c6;&#xff0c;Java领域优质创作者&#x1f3c6;&#xff0c;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;掘金年度人气作…

C++青少年简明教程:If选择语句

C青少年简明教程&#xff1a;If选择语句 C中选择语句的语法是&#xff1a; if (条件) { 条件成立时需要执行的语句... } [else { 条件不成立时需要执行的语句... }] 说明&#xff1a; if后面使用一个括号&#xff0c;括号里是条件——关系表达式。 所谓的关系表达式就是判…

报错:找不到或无法加载主类 com.example.SpringbootApplication(idea)

OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 错误: 找不到或无法加载主类 com.example.SpringbootApplication 原因: java.lang.NoClassDefFoundError: com/example/SpringBootAppli…

上位机图像处理和嵌入式模块部署(mcu中的串口接口)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 在mcu开发中&#xff0c;mcu扮演着非常重要的角色。一方面&#xff0c;串口可以帮助我们对固件功能进行调试&#xff0c;另外一方面&#xff0c;串…