简谈 Charles 抓包 https

HTTPS 大概流程

客户端将自己支持的加密算法发送给服务器,请求服务器证书;
服务器选取一组加密算法,并将证书返回给客户端;
客户端校验证书合法性,生成随机对称密钥,用公钥加密后发送给服务器;
服务器用私钥解密出对称密钥,返回一个响应,HTTPS连接建立完成;
随后双方通过这个对称密钥进行安全的数据通信。


Charles如何抓取https请求的呢?

简单来讲就是 “中间人攻击

前提: 安装Charles证书且客户端信任了 Charles 自己制作的证书

大概过程:

Charles 假冒客户端,拿到服务器的 CA 证书
Charles 假冒服务器,给客户端发送了一张自己制作的证书,客户端信任该证书

Charles 再次假冒服务器,拿到客户端的对称密钥
Charles 再次假冒客户端,将对称密钥加密发送给服务器,让服务器认为这次通信是没问题的,服务器发送成功响应

最后 Charles 假冒服务器将成功响应发给客户端
建立连接 客户端与 Charles 建立连接,Charles 与服务器建立连接


相关推荐

Charles如何修改请求响应数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值