使用Wireshark进行QUIC抓包
现在的wireshark已经添加了对quic协议的支持,我用的是windows平台,用的iQUIC实现是quiche,记录一下wireshark对其的抓包、解密过程
开启quiche的SSL密钥记录
由于QUIC用的是DH加密,保证了前向安全性,服务端的私钥并不是最终协商会话的密钥,所以直接拿服务端的私钥是不能解密的。所以要开启quiche中的密钥记录功能,把会话过程中的密钥导出到log文件中,然后通过wireshark读入就可以解密了。本人不是搞密码学的,具体原理嘛,还真说不清楚。
quiche的示例程序中其实已经写了这一步了:
if (getenv("SSLKEYLOGFILE")) {
quiche_config_log_keys(config);
}
所以在环境变量中添加自己想保存log文件的位置,例如C:\ssl.log
Wireshark中设置TLS密钥位置
我看到有教程说是添加在SSL中的相关设置里,我这个版本里没有SSL协议,而是TLS。具体位置:编辑>>首选项>>协议>>TLS>>(Pre)-Master-Secret log filename
填入C:\ssl.log
即可