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

李志宽
• 阅读 849

大家好,我是周杰伦。

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

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

我一瞅,是HTTPS啊!没用HTTP!再一瞅,是www.baidu.com啊,不是什么山寨网站!

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

果然不出我之所料,证书不是官方的,官方的证书长这样:用了HTTPS,没想到还是被监控了

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

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

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

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

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

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

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

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

我之前写过一篇故事深入浅出的描述了HTTPS的工作原理,还不懂的小伙伴儿可以学习一下,我经常也会在面试中考察候选人这个问题,这可以迅速帮助我知道对方对HTTPS的了解程度。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

![在这里插入图片描述](https://img-blog.csdnimg.cn/122dd453ad174692a494a945ff81c619.png?x-oss- process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBARHhBeEZ4QQ==,size_20,color_FFFFFF,t_70,g_se,x_16)

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

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

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

如果是,那恭喜你了~

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

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

点赞
收藏
评论区
推荐文章
待兔 待兔
1年前
HTTP 的本质?HTTP 和 RPC 的区别?
身为 Java Web 开发我发现很多人一些 Web 基础问题都答不上来。 上周我面试了一个三年经验的小伙子,一开始我问他 HTTP/1、HTTP/2相关的他到是能答点东西出来。 后来我问他:你怎么理解 HTTP 的,HTTP 的作用是什么? 他支支吾吾答不出来。 经过了一番引导交谈,他回答是用来客户端和服务端之间传输的。 我接着问那你知道什么是
Stella981 Stella981
11个月前
Spring Boot前后端分离项目配置SSL证书——HTTPS
网站添加免费SSL证书——HTTPS协议 ==================== ### 一、SSL证书的下载 * `Spring Boot前后端分离`项目配置`SSL证书`,需要申请`两个`证书。前端申请`网站主域名`的SSL证书,后端可以在域名管理里面新建一个`子域名`。例如我的项目前端域名为:`www.mzwhzy.com`,后端域名为:`b
Wesley13 Wesley13
11个月前
HTTPS 证书被伪造了怎么办?
`HTTPS` 协议的安全依赖于它的证书机制,如果攻击者申请到了一张和你的网站一摸一样的证书,那你网站的安全机制也就不复存在了。本文来聊一聊,如何预防 `HTTPS` 证书伪造。 证书劫持 ---- ![](https://oscimg.oschina.net/oscnet/ba3fe48d-b1bb-417a-9fc6-4f4f6c6510de
Wesley13 Wesley13
11个月前
HTTPS安全通信过程
一 、两对公私钥 ======== 1、CA公私钥: CA公钥:预装在操作系统,内置在浏览器中。 **备注:**微软等公司会根据一些权威安全机构的评估选取一些信誉很好并且通过一定的安全认证的证书发布机构,把这些证书发布机构的证书默认安装在操作系统中,并且设置为操作系统信任的数字证书。 CA私钥:由CA机构保管,不会外泄。 2、服务公私钥: 服
Wesley13 Wesley13
11个月前
java访问Https服务的客户端示例
关于证书 ==== 1、每个人都可以使用一些证书生成工具为自己的https站点生成证书(比如JDK的keytool),大家称它为“自签名证书”,但是自己生成的证书是不被浏览器承认的,所以浏览器会报安全提示,要求你手动安装证书,提示风险,是否继续等。只有通过权威的CA机构付费获得的证书才能被浏览器承认。 2、证书(无客户端服务端之分)保存着IP信息、证书过
Stella981 Stella981
11个月前
Linux运维常见面试题之精华收录
Linux运维常见面试题之精华收录 ================= **1、什么是运维?什么是游戏运维?** 1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常, 在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术 运维又包括很多种,有DBA运维、网站运维、虚
Stella981 Stella981
11个月前
Chrome 或将于2018年正式弃用 HPKP 公钥固定标准
**早些年谷歌工程师为了提高互联网整体的安全性避免因证书颁发机构违规操作而设计了 HPKP 公钥固定标准。公钥固定允许网站在服务器部署证书颁发机构的哈希值, 若网站使用的证书与固定的哈希不对应则拒绝连接。公钥固定的现实意义在于如果有 CA 证书颁发机构违规向某个域名私自签发证书那么也无法实现对网站的劫持。但是现在谷歌浏览器已经决定弃用 HPKP 公钥固定标准
李志宽 李志宽
7个月前
如何抓到入侵网站的黑客?
大家好,我是周杰伦···今天我在知乎看到一个提问:在下面回答区,我看到网友分享的真实案例,大家可以看一下,顺便了解一下网络溯源是怎么一回事,也给大家一些启示。我朋友在创业,听说他公司被人搞了,请我去帮忙看下。我发现他们公司服务器会反连一个域名叫:http://yk.syncn.org于是我查了下这个域名手机号明显是假的不用说了,邮件看着倒是真的,顺藤摸瓜看了
3A网络 3A网络
3星期前
详解 SSL(二):SSL 证书对网站的好处
详解 SSL(二):SSL 证书对网站的好处在如今谷歌、百度等互联网巨头强制性要求网站 HTTPS 化的情况下, 网站部署 SSL 证书已然成为互联网的发展趋势。而在上一篇《 详解 SSL(一):网址栏的小绿锁有什么意义?》中,我们也知道了 SSL 证书可以防止网络安全威胁。那么除此外为网站部署 SSL 证书还有哪些好处呢?最明显的一点,在我们部署 SSL
3A网络 3A网络
3星期前
详解 SSL(三):SSL 证书该如何选择?
详解 SSL(三):SSL 证书该如何选择?在上一篇《 详解 SSL(二):SSL 证书对网站的好处》中,我们知道了在网站部署 SSL 证书后,不管是对网站本身还是对网站的用户都能够带来许多好处。那么随着 HTTPS 的普及,市面上也出现了各种不同的 SSL 证书。并且由于 SSL 证书的多样性,很多人对于如何选择 SSL 证书有着很大的困惑。因此,本篇文章