参考来源:
https://zhuanlan.zhihu.com/p/36669377
https://blog.csdn.net/u010726042/article/details/53408077
思路:
wireshark抓到的https流量包经过了ssl加密,那么我们如何才能查看解密的数据呢?Firefox和Chrome浏览器都支持用日记文件的方式记录下用来加密TLS数据包对称会话秘钥的,可以通过配置sslkeyfile的链接,将wireshark的中ssl解密指向该文件即可。环境变量中新建用户变量SSLKEYLOGFILE=/sslkey.log文件,之后再wireshark中ssl配置中制定该文件位置即可。
练习环境说明:
操作系统:win10
浏览器:谷歌浏览器{版本 123.0.6312.58(正式版本) (64 位)}
wireshark版本:Version 3.6.6 (v3.6.6-0-g7d96674e2a30)
步骤一:创建对称会话秘钥文件,新增环境变量
示例:在F盘创建文件夹名称为sslkeylogfile,内部存放ssk.log文件
对应路径:控制面板\所有控制面板项\系统\高级系统设置\环境变量,点击新建,输入变量名称为SSLKEYLOGFILE,变量值为刚才创建的sslkey.log文件,点击确定保存
步骤二:wireshark中指定tls协议应用的预加密秘钥文件位置
打开wireshark软件,在路径:编辑\首选项\Protocols中,找到TLS协议,指定{(Pre)-Master-Secret log filename}为步骤一中创建的文件,如下图示例所示
步骤三:开启wireshark,抓取网卡数据
pass
步骤四:打开谷歌浏览器,访问https://www.baidu.com
打开谷歌浏览器,按F12打开开发者选项界面,地址栏中输入baidu.com,点击网络,查看名称为www.baidu.com的标头部分,可以知道域名对应的网站ip,如下图,访问的百度远端ip地址为:153.3.238.110
步骤五:返回wireshark界面,查看是否能看到解密数据,验证解密效果是否成功
由于之前抓取的是全网卡的流量,通过步骤四中知道的百度ip进行过滤,过滤条件为:ip.addr == 153.3.238.110 && ssl,解密成功效果如下图,可以看到底部有Decrypted TLS,对应序号796,显示获取首页信息的数据,解密预期效果实现。