Wireshark
TLS/SSL 加密流量解密
创建 /path/to/ssl_key.log
空文件
touch /path/to/ssl_key.log
设置 SSLKEYLOGFILE
环境变量
export SSLKEYLOGFILE=/path/to/ssl_key.log
打开 Wireshark,进入 Edit -> Preferences -> Protocols -> TLS
设置 (Pre)-Master-Secret log filename 为上述密钥日志文件路径(如 /path/to/ssl_key.log
)
重新抓包,HTTPS 流量将自动解密。找到 Client Hello 包,右击选择 Follow -> TLS Stream ,即可看到解密后的明文
(payload部分如果是乱码,有可能是因为 HTTPS 流量使用 Content-Encoding: gzip
压缩,Wireshark不会自动解压压缩数据。Gzip 文件头格式为 1F 8B
,可以将这部分内容提取出来,解压后即为明文。)
xxd -r -p hex.txt response.gz
gzip -d response.gz # response.gz被删除,输出解压后的文件 response