用wireshark解密HTTPS流量

chrome和Firefox浏览器都可以记录这个密钥,前提是需要设置系统的环境变量SSLKEYLOGFILE,当用chrome和Firefox浏览器访问网页的时候,浏览器会检查这个环境变量,存在的话会向指定的文件里写入这个密钥。

我们日常用https访问网站的时候,和网站交互的数据是加密的,所用的协议就是SSL/TLS。所以即使我们截获了这些数据包,我们也不能看到加密的内容。

比如我们随便打开百度的网址,用wireshark抓一下https的数据包。

首先获取百度服务器地址:

用wireshark解密HTTPS流量

开始抓包:

用wireshark解密HTTPS流量

注意到通信的数据都是以二进制的形式表现出来的:

用wireshark解密HTTPS流量

那我们怎么才能获得明文信息呢?

SSL采用的是对称加密和非对称加密相结合的方式进行通信。加密数据的过程是对称加密,也就是客户端和服务器的报文都是由一把钥匙进行加密的。那么只要我们能获取到这把钥匙,就能对上面的报文进行解密。

chrome和Firefox浏览器都可以记录这个密钥,前提是需要设置系统的环境变量SSLKEYLOGFILE,当用chrome和Firefox浏览器访问网页的时候,浏览器会检查这个环境变量,存在的话会向指定的文件里写入这个密钥。

配置环境变量:

用wireshark解密HTTPS流量

可以看到文件里被写入了很多密钥信息:

用wireshark解密HTTPS流量

在wireshark中进入进入首选项

用wireshark解密HTTPS流量

选择协议TLS或者SSL,将pre-master-secret log设置为记录密钥的log路径

用wireshark解密HTTPS流量

点击确认后,就能对TLS流量进行解密了:

用wireshark解密HTTPS流量

内容出处:,

声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.net/tech/25355.html

发表评论

登录后才能评论