【网络技术】【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

相关文章

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at

Linux下如何使用C++获取硬件信息

《Linux下如何使用C++获取硬件信息》这篇文章主要为大家详细介绍了如何使用C++实现获取CPU,主板,磁盘,BIOS信息等硬件信息,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录方法获取CPU信息:读取"/proc/cpuinfo"文件获取磁盘信息:读取"/proc/diskstats"文

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、