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

2024-01-15 13:44

本文主要是介绍【网络技术】【Kali Linux】Wireshark嗅探(九)安全HTTP协议(HTTPS协议),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、实验目的

本次实验是基于之前的实验:Wireshark嗅探(七)(HTTP协议)进行的。本次实验使用Wireshark流量分析工具进行网络嗅探,旨在初步了解安全的HTTP协议(HTTPS协议)的工作原理。

二、HTTPS与HTTP的区别

HTTPS的含义是HTTP + SSL,即使用SSL(安全套接字)协议对通信数据进行加密。HTTP和HTTPS协议的区别(用协议栈结构)可以简要地表示如下图:

在这里插入图片描述

三、实验网络环境设置

本次实验在 Kali Linux 虚拟机上完成,主机操作系统为 Windows 11,虚拟化平台选择 Oracle VM VirtualBox,网络模式选择 网络地址转换(NAT),如下图所示:

虚拟机设置:

在这里插入图片描述

网络模式设置:

在这里插入图片描述

四、协议报文捕获及分析

1、使用明文传输的HTTP协议

HTTP协议使用明文传输网络上的超文本(HyperText)格式。使用Wireshark捕获一条HTTP 应答 (Response)报文:

在这里插入图片描述

在HTTP协议报文中,选中 “File Data(文件数据)” 字段,可以看出该字段并未经过加密,所有的信息内容在网络中以明文传播,大大地增加了隐私信息被窃取的可能性。

在这里插入图片描述

2、TLS(传输层安全协议)加密

TLS的全称是Transport Layer Security,即传输层安全协议,用于加密传输层的数据。即应用层的HTTP数据在使用TCP协议进行传输前,先进行加密(加密使用SSL协议,即Secure Sockets Layer,安全套接字协议)。使用Wireshark捕获一条TLS协议报文:

在这里插入图片描述

单击TLS协议报文下的Encrypted Application Data(加密的应用层数据)字段,可见TLS协议将传输的数据进行了加密。

在这里插入图片描述

此外,Application Data Protocol(应用层数据协议)字段为 http-over-tls,可见TLS协议位于HTTP协议之下,它所加密的数据内容正是HTTP协议原本以明文传输的超文本数据。而且由于加密算法和密钥是未知的,攻击者无法通过截获的密文恢复出传输层上的明文,保证了数据的安全性。

至此,本次实验结束。

五、参考文献

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

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

这篇关于【网络技术】【Kali Linux】Wireshark嗅探(九)安全HTTP协议(HTTPS协议)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/609096

相关文章

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送