Wireshark抓包工具解析HTTPS包
一、遇到的问题
本学期的计算机网络课程需要使用到Wireshark抓包工具进行网络抓包实验,原本可以看到在该软件中捕获到的数据包都被按照各个协议进行分类好了,例如ARP包,TCP报文段,UDP数据报等等。但是当我想要抓取访问某网站时传输的数据,例如访问bilibili时,我先使用ping命令得到bilibili的IP地址:

得到的ip地址为:120.240.78.230
而当我使用这个ip地址在Wireshark中进行抓包筛选时却发现什么http的请求都找不到:

经查找资料发现现在互联网使用的HTTP协议基本都是HTTP2.0以上的了,因而数据包都是加密之后再在网络中进行传输,保证了信息的安全性。因而我们收到的HTTP请求在Wireshark中只能看到一个个的TLS包,这些TLS包在使用秘钥解密之后可以得到正确的HTTP报文。

二、解决方案
1. 动态生成签名证书
以下解决方案是针对使用Chrome浏览器的。(也许Edge等浏览器也可以?)
首先我们需要通过Chrome浏览器获得一个签名证书,方法是给浏览器添加以下的启动参数:
--ssl-key-log-file=D:\sslkey.log
这个只是一个范例,后面填写的目录可以是任意的位置。
为了方便起见,在windows系统下可以右键点击Chrome浏览器的快捷方式进行设置:

添加上参数后,我们使用该快捷方式启动Chrome就会发现在上面设置的目录下生成了对应的sslkey.log文件:

2. Wireshark配置
然后打开Wireshark,依次点击:编辑 -> 首选项 -> Protocols:

老版本的Wireshark中可以看到SSL的选项,而新版本中则变成了TLS。我们打开相应的选项(SSL或TLS),然后将sslkey.log文件的路径配置到(Pre)-Master-Secret log filename项中即可:

至此配置完成。
3. 最终效果
此时再次访问b站首页,可以在Wireshark中看到许多http2请求报文了,这些都是原先的TLS包解析后得到的结果:

Wireshark抓包工具解析HTTPS包的更多相关文章
- 为什么用抓包工具看HTTPS包是明文的
测试或者开发调试的过程中,经常会进行抓包分析,并且装上抓包工具的证书就能抓取 HTTPS 的数据包并显示.由此就产生了一个疑问,为什么抓包工具装上证书后就能抓到 HTTPS 的包并显示呢?不是说 HT ...
- Wireshark抓包工具--TCP数据包seq ack等解读
1.Wireshark的数据包详情窗口,如果是用中括号[]括起来的,表示注释,在数据包中不占字节 2.在二进制窗口中,如“DD 3D”,表示两个字节,一个字节8位 3.TCP数据包中,seq表示这个包 ...
- [转]Wireshark抓包工具--TCP数据包seq ack等解读
原文: http://blog.csdn.net/wang7dao/article/details/16805337/ ---------------------------------------- ...
- 使用wireshark抓本机之间的包(转)
所转地址:http://www.chinadmd.com/file/oc6evrwtzieitexvoupppisr_1.html 在进行通信开发的过程中,我们往往会把本机既作为客户端又作为服务器端来 ...
- fiddler 抓取 安卓模拟器 https包
2017-12-12 16:47:45 星期二 需要材料: 1. fiddler 2. 逍遥模拟器 步骤: 1. fiddler->tool->Optiions...->connec ...
- wireshark抓文件上传的包的结果记录
如果我们再一个表单中放了一个text的input 还放了一个file的input进行文件上传,此时用wireshark抓到的包应该是什么样子的呢 html代码 <form action=&quo ...
- windows10使用wireshark抓取本机请求包
1.管理员运行cmd 右键左下角windows图标,管理员运行Windows PowerShell 2.输入ipconfg查看本机ip和网关ip 3.执行命令 route add 本机ip mask ...
- ffiddler抓取手机(app)https包
很多同学有看过原文,但是按照原文还是没有设置成功(我就是其中一个)然后查了网上资料,在某些选项上进行增加,填写,配置通过.(和原文略有不同) 安装Fiddler,我们正常的流程在feiddler中设置 ...
- Wireshark 抓取USB的数据包
需要使用root权限来运行Wireshark,并利用Wireshark来嗅探USB通信数据.当然了,我们并不建议大家利用root权限来进行操作.我们可以使用Linux提供的usbmon来为我们获取和导 ...
随机推荐
- 新手应该如何学习 PHP 语言?
其实php开发,不只是一个简单的php开发,而是整个一个行业,一般叫web开发,或者php后端开发,所以从html,css,js,jq,php,sql基本这些都要有了解.当然你有html,css基础, ...
- sqlserver查出来的数据丢失
问题描述 今天利用sqlserver查数据,使用了一个ROUND(308.16000, 2)函数,发现在sqlserver工具中显示正常,但是在服务端查出来就会发生精度丢失问题. ROUND和CAST ...
- bom案例5-简单动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&q ...
- JSP、Servlet和Spring MVC
感谢原博主!!!https://blog.csdn.net/whut2010hj/article/details/80874008 版权声明:本文为博主原创文章,遵循CC 4.0 BY版权协议,转载请 ...
- MySQL事务以及存储引擎
MySQL事务以及存储引擎 目录 MySQL事务以及存储引擎 一.事务 1. 事务的概念 2. 事务的ACID特点 (1)原子性 (2)一致性 (3)隔离性 ①事务之间的相互影响 ②MySQL事务支持 ...
- 已完成的python项目-环境离线部署
python环境离线部署 当前生产环境中,有很多基于python开发的工具需要使用. 由于python工具往往涉及到很多依赖,在线状态下,可以通过pip requirements来管理安装. 但有时候 ...
- Python将py文件编译为exe的方法
使用PyCharm工具写好的Python程序脚本,怎么将.py文件编译为可执行的.exe文件 前提是已经安装了Python环境. 第一步:在PyCharm内下载安装pyinstalle库或使用CMD安 ...
- linux中安装swoole框架
简单说说如何在linux中安装swoole框架. 具体的安装步骤其实和安装php源码类似. 下载源码 => 执行configure => make => make install 安 ...
- Solution -「ZJOI 2020」「洛谷 P6631」序列
\(\mathcal{Description}\) Link. 给定一个长为 \(n\) 的非负整数序列 \(\lang a_n\rang\),你可以进行如下操作: 取 \([l,r]\),将 ...
- Solon 1.6.25 发布,轻量级应用开发框架
关于官网 千呼万唤始出来: https://solon.noear.org .整了一个月多了...还得不断接着整! 关于 Solon Solon 是一个轻量级应用开发框架.支持 Web.Data.Jo ...