在使用 Wireshark 分析 HTTPS 时,加密传输的内容会解析失败。而 NSS 可以存储 TLS 握手过程中的 Key,用于解密。
Firefox 和 Chrome 都支持 NSS Key Log。要想启用 NSS LOG,必须要配置系统环境变量中 SSLKEYLOGFILE,如图:
然后打开 Chrome 访问 HTTPS 的网站,接着查看 sslkey.log 文件:
下面配置 Wireshark,编辑 -> 首选项 -> Protocols -> TLS -> (Pre)-Master-Secret log filename,如图:
下面开始解密 HTTPS 演示:
追踪 TCP 流,可以看到是加密的:
追踪 TLS 流,可以看到已经解密了: