https网络包传输过程中经SSL/TSL加密后,在协议分析工具中(如wireshark)对于应用层http内容数据无法分析。要解决这个问题,可以参考以下2种方法,

        (1)配置SSLKEYLOGFILE环境变量+配置wireshark TLS协议参数

        windows系统中配置系统变量,在对应目录新建ssl.log文件。

基于TLS的抓包内容分析解决方法-LMLPHP

        wireshark软件界面中,【编辑】-【首选项】-【protocol】-【TLS】页中配置TLS密钥日志文件目录。

基于TLS的抓包内容分析解决方法-LMLPHP

        使用浏览器(如chrome)能够支持系统配置syskeylogfile环境变量导出TLS密钥到相关日志文件中。wireshark也正是因为可以读取该日志文件中的TLS密钥,从而能够还原http应用层数据内容。这里sys.log日志文件的内容示例如下。

基于TLS的抓包内容分析解决方法-LMLPHP

        当wireshark包解析时会调用日志文件中密钥信息,计算获得会话密钥完成基于tls协议的数据包解析,如下。

基于TLS的抓包内容分析解决方法-LMLPHP

        (2)使用Fiddler作为代理,通过中间代理解析https数据包内容

        关于Fiddler软件的安装及相关证书的配置这里不做详细说明,需要的可直接搜索。

基于TLS的抓包内容分析解决方法-LMLPHP

10-21 14:41