抓包分析 https 密钥协商流程
工具:Wireshark 2.6.6
抓取链接:https://220.181.38.150 (*度地址)
本机地址:100.81.137.224
刚开始分析不知道TLS协议的会话缓存机制,百度使用了会话缓存的这种机制来加速https握手的速度!
客户端使用要恢复的会话的会话ID发送“客户端问候”消息。
服务器检查其会话缓存中是否有匹配的会话ID。如果发现匹配,并且服务器能够恢复会话,则发送具有会话ID的“服务器问候”消息。
注意 如果找不到会话ID匹配,服务器将生成一个新的会话ID和TLS客户端和服务器执行完整的握手。
客户端和服务器必须交换“更改密码规范”消息并发送“客户端完成”和“服务器完成”消息。
客户端和服务器现在可以通过安全通道恢复应用程序数据交换。
---------------------
作者:mapw1993
来源:CSDN
原文:https://blog.csdn.net/u010536377/article/details/78989931
版权声明:本文为博主原创文章,转载请附上博文链接!
简要分析,下面有详细分析
客户端和服务端先通过非对称加密生成一个密钥,之后发送的数据均使用该密钥进行加密,变为对称加密。
- 客户端发送一串随机数(Random1)和客户端支持的加密算法给服务端
- 服务端从客户端发来的加密算法中选择一种,然后向客户端发送一串随机数(Random2)和所选择的加密算法
- 服务端将自己的证书发送给客户端
- 服务端将自己的公钥发送给客户端
- 客户端通过服务端的公钥和一串随机数(Random3)生成密文发给服务端
- 服务端通过私钥解密出 Random3
- 双方通过 Random1、Random2、Random3 和刚开始选择的加密算法生成新的密钥
过滤出我们需要的包数据
- 打开 Wireshark ,选择监控的网卡,如下图
- 选择网卡后,我们发现在这块网卡上有大量的数据在传输,如下图
- 此时我们需要添加一些过滤条件,过滤出我们需要的数据
// 本机地址 100.81.137.224 远程地址 220.181.38.150
((ip.src == 100.81.137.224 and