本文介绍使用wireshark分析https流量的方法。适用chromium内核的浏览器和firefox浏览器,前提是这些浏览器内核都支持如下选项:
–ssl-key-log-file
firefox.exe --ssl-key-log-file=c:/ssl-key-log-file
或者
chrome.exe --ssl-key-log-file=c:/ssl-key-log-file
或者curl命令行工具中
export SSLKEYLOGFILE=/c/ssl-key-log-file
不建议使用全局环境变量的方式,因为很多app都是用chromium内核,或者基于chromium内核的渲染库libcef,比如PC版微信,这会带来很多的噪音干扰。
tcp.port == 443 and ip.addr == 180.97.104.167 && http
上面的ip地址是 teiba.baidu.com的 ip地址,下面的hosts文件中会设置用到。
tcp.port == 443 && http 起到过滤https流量的作用。
“编辑”-> "首选项“-> "协议” -> “TLS”
设置tls协议选项,使用c:/ssl-key-log-file中的Pre-Master-Key解密https流量:
C:\Windows\System32\drivers\etc\hosts
以teiba.baidu.com为例,设置如下:
180.97.104.167 tieba.baidu.com
export SSLKEYLOGFILE=/c/ssl-key-log-file
curl https://tieba.baidu.com/