码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Wireshark抓包工具解析HTTPS包


    目录
    • 一、遇到的问题
    • 二、解决方案
      • 1. 动态获取对称加密秘钥
      • 2. Wireshark配置
      • 3. 最终效果

    一、遇到的问题#

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

    image-20220315100839389

    得到的ip地址为:120.240.78.230

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

    image-20220315101011748

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

    image-20220315101621917

    二、解决方案#

    1. 动态获取对称加密秘钥#

    以下解决方案是针对使用Chrome浏览器的。(也许Edge等浏览器也可以?)

    首先我们需要通过Chrome浏览器生成一个包含加密秘钥信息的文件,方法是给浏览器添加以下的启动参数:

    --ssl-key-log-file=D:\sslkey.log
    

    这个只是一个范例,后面填写的目录可以是任意的位置。

    为了方便起见,在windows系统下可以右键点击Chrome浏览器的快捷方式进行设置:

    image-20220315102335795

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

    image-20220315102546708

    2. Wireshark配置#

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

    image-20220315102754562

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

    image-20220315103048732

    至此配置完成。

    3. 最终效果#

    此时再次访问b站首页,可以在Wireshark中看到许多http2请求报文了,这些都是原先的TLS包解密后得到的结果:

    image-20220315103245771
  • 相关阅读:
    centos7 下使用docker安装常见的软件:Redis
    安防监控系统/视频云存储/视频监控平台EasyCVR无法级联上级平台,该如何解决?
    105、python-第四阶段-2-装饰器
    【编程题】【Scratch四级】2019.12 随机选T恤
    『微信小程序』从0到1常用组件
    MATLAB运算符
    Linux内核邻接子系统(arp协议)的工作原理
    CSS - 网格布局(grid)
    Linux CentOS 本地yum配置
    基于Labview的图像傅里叶变换研究-含Labview程序
  • 原文地址:https://www.cnblogs.com/CodeReaper/p/16007397.html
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号