HTTP2-wireshark-抓包
本文最后更新于:2021年3月1日 晚上
主流浏览器都大多都支持 HTTP/2 Over TLS
HTTP2 网站都使用了 HTTPS,数据传输都经过了 SSL 加密
默认情况下,Wireshark抓到的包没有密钥,只能解析到SSL层,在其之上的协议细节完全看不到(即:在这种情况下,如果尝试取抓的话,抓到的是TLS的包)
Wireshark 的抓包原理是直接读取并分析网卡数据,要想让它解密 HTTPS 流量,有两个办法:
1)如果你拥有 HTTPS 网站的加密私钥,可以用来解密这个网站的加密流量
2)某些浏览器支持将 TLS 会话中使用的对称密钥保存在外部文件中,可供 Wireshark 加密使用
Firefox 和 Chrome 都支持生成上述第二种方式的文件,具体格式见这里:NSS Key Log Format
添加浏览器密钥记录日志环境变量
Firefox 和 Chrome 只会在系统环境变量中存在 SSLKEYLOGFILE 路径时才会生成它
如果系统环境变量中没有这个值,那么就手动创建一个wireshark 配置
在 wireshark 首选项中配置读取浏览器密钥记录
菜单栏-编辑-首选项-协议-TLS
将浏览器密钥日志填入测试
过滤器中直接填入http2协议,浏览器访问一个http2的网站即可
例如:https://http2.akamai.com/demo
注意,访问网站不能使用代理,否则不会走http2
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!