用了HTTPS,没想到还是被监控了!

点击上方“芋道源码”,选择“设为星标

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

 

上周,微信里有个小伙伴儿给我发来了消息:

76ed26deab13e55241d7061e49a69059.png 0ab7b4f79f49ef625892a50f47612d20.png

随后,我让他截了一个完整的图,我一瞅,是HTTPS啊!没用HTTP!再一瞅,是www.baidu.com啊,不是什么山寨网站!

我瞬间明白了些什么,让他点击了一下浏览器地址栏中那个表示安全的小锁标志,查看了一下网站使用的HTTPS证书。

c69c45c8a66d0083f4932abc9845d9ef.png

果然不出我之所料,证书不是官方的,官方的证书长这样:

b6eae2eebfc4e57a30e0ffa95a43e888.png

而那个假的证书是他们公司签发的,看来,他们公司开始对HTTPS流量做解析了,这家伙瞬间瑟瑟发抖···

ce1b9ee7b741c3c503b94715f631f8c2.png

今天就来跟大家聊一下:HTTPS真的安全吗?

现如今大家每天上网基本上看到的都是使用了HTTPS的网站,有时候特意想找一个HTTP的网站来让新同学练习抓包分析都不好找。

但在几年前,差不多我刚刚开始毕业工作(2014年)的时候,情况却不是这样的,网络上还有大量使用HTTP的网站。

大家知道,HTTP是超文本传输协议,数据内容在网络中都是明文传输的,非常不安全。同在一个宿舍里的同学,随便搞一个中间人劫持就能监听到你浏览了什么视频学习网站。

不仅如此,上网链路中包括寝室路由器在内的各级网络设备都可以探知你的数据,甚至给你插入小广告(其实这种现象现在依然存在,尤其是很多医院、学校的网站,还是很多都是用HTTP,特别容易粘上小广告),一不小心就跳到了广告页面,真是防不胜防。

不久,网站HTTPS化的浪潮很快打来,通过加密这一最简单直接的办法,将浏览器上网过程中传输的数据进行加密保护,上网内容的安全性得到了极大的提升。

咱们通过下面的快问快答环节来简单总结一下。

d5840f51410f6335fe06a945dd4b8fbb.png

abc2b358b7a0b9160d597445a4d54174.png

看到了吧,HTTPS能够安全的基石是非对称加密,非对称加密建立的前提是对方真的是对方,如果这一个前提不成立,后面的一切都是假的!

网站服务器使用HTTPS进行通信时,会提供一个用于证明身份的证书,这个证书,将会由某个受信任的机构签发。

浏览器拿到这个证书后,会校验证书的合法性,去检查证书的签发机构是不是受信任的。

那如何去检查签发机构是不是受信任的呢?

答案是继续检查签发机构的证书,看看是谁给他签发的,一直这样追溯,直到找到最终的签发者,看看最终的签发者的证书是不是安装在操作系统的受信任的根证书列表中。

40353fe3d01fa466c25ead7fa7c6fe55.png

是不是已经晕了?没关系,我们来用百度的那个证书为例,看一下这个过程,你就知道什么意思了。

你可以通过点击证书路径tab页面查看证书的签发链条:

404edb4ff370a2f6488973b66016f1f7.png

通过这个树形结构图,可以清晰地看到:

baidu.com这个域名使用的证书,是由名为GlobalSign Organization Validation CA - SHA256 - G2的颁发者签发的。

而这个颁发者的证书,又是由GlobalSign Root CA - R1签发的。

浏览器拿到这个最顶层的签发证书后,去操作系统安装的受信任的根证书列表中一找,嘿,还真让它找着了!

a8cd4137d31b27811a78661843325a29.png

于是,浏览器信任了这个证书,继续接下来的通信过程。

如果找不到,浏览器就会弹出不受信任的消息,提醒用户要当心了!

fcf56307462b659ed704d2d1b54d0a1b.png

而如果,有人在你的电脑中安装了一个自己的根证书进去,骗过浏览器,这一切安全的根基也就倾覆了。

而文章开头那个小伙伴儿之所以弹出了那个窗口,多半是根证书还没安装进去,就开始了HTTPS劫持。因为重启之后,便再也没有这些提示信息,一切如往常一样风平浪静,只不过上网的流量已经被公司悉数掌握。

看到这里,还不赶紧点开浏览器地址栏的那把锁,看看证书的签发机构是不是你们公司?

如果是,那恭喜你了~

8c57de1c699e78774ab6e15e4b007bea.png

最后,给大家留一个思考题:微信会受到这种HTTPS劫持的影响吗? 欢迎在评论区发表你的看法!



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

11aa0d35a10149d0256e2c487aecaaff.png

已在知识星球更新源码解析如下:

010f645818a4ee4890461822e4fb63b4.png

0c13dd0391194a6a575e2c88a6fd9e90.png

ac2ecc543e7efd4611e2deb771535ea5.png

4a58c0d16edcf5b6cd1e9a1cd77f486b.png

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

文章有帮助的话,在看,转发吧。
谢谢支持哟 (*^__^*)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值