HTTPS通俗讲解及fiddler实现https内容劫持的原理解释

HTTPS通俗讲解

HTTPS是基于SSL实现安全通讯的,而SSL又是基于 非对称加密 和对称加密来实现安全通讯的.
对称加密是指用同一个秘钥加密解密,非对称加密可以简单理解成通过一种算法生产公开的秘钥(简称公钥)和私钥,公钥加密的内容只能由私钥解密.
对称加密简单,性能好但是由于传递秘钥的过程容易泄露秘钥,所以用非对称加密来保护这个传递过程.

先看下这个时序图
HTTPS 时序图.jpg

下半部分解释了https请求的过程,这个过程里有证书.这个证书是用来验证服务器真伪的,也就是防止黑客伪装成正常的服务器.
每个合法的https服务器都要有一个从CA机构申请的证书,浏览器拿到这个证书后可以去CA机构哪里验证真伪,这样就可以确定访问的服务器是合法的了.

fiddler实现https内容劫持的简单解释

浏览器之所以知道CA机构的地址是因为电脑或浏览器内置了一个合法CA结构列表. 每次需要验证时就从这个列表查找CA机构地址,然后去验证.
使用fiddler劫持https请求之前,它会要求你下载一个文件安装到你的电脑上,这个文件会在CA机构列表里添加一个非法的CA结构地址. 当浏览器获取到fiddler伪装的服务器的证书时这个非法的CA机构就会告诉浏览器"这是一个合法的证书",就这样fiddler骗过了浏览器,让浏览器吧请求内容发送给了fiddler,
fiddler再伪装成浏览器给真正的服务器发送请求,把真服务器返回的内容再返回给真浏览器.
当fiddler在中间代理时,它就可以自由的展示/修改请求的内容了.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容