面试官:“HTTPS的加密过程你知道么?”
(相关资料图)
我:“那肯定知道啊。”
面试官:“那你知道什么情况下 HTTPS 不安全么”
我:“这....”
越面觉得自己越菜,继续努力学习!!!
中间人攻击(MITM)在密码学和计算机安全领域中是指攻击者与通讯的两端分别创建独立的联系,并交换其所收到的数据,使通讯的两端认为他们正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制[1]。在中间人攻击中,攻击者可以拦截通讯双方的通话并插入新的内容。在许多情况下这是很简单的(例如,在一个未加密的Wi-Fi无线接入点的接受范围内的中间人攻击者,可以将自己作为一个中间人插入这个网络)。
一个中间人攻击能成功的前提条件是攻击者能将自己伪装成每一个参与会话的终端,并且不被其他终端识破。中间人攻击是一个(缺乏)相互认证的攻击。大多数的加密协议都专门加入了一些特殊的认证方法以阻止中间人攻击。例如,SSL协议可以验证参与通讯的一方或双方使用的证书是否是由权威的受信任的数字证书认证机构颁发,并且能执行双向身份认证。
以上定义来自维基百科,我们来举一个通俗的例子来理解中间人攻击:
A: “嗨,B,我是A。给我你的公钥”
C: “嗨,B,我是A。给我你的公钥”
B -> B 的公钥 -> C
C -> C 的公钥 -> A
A -> xxx -> C
C -> zzz -> B
这就是整个中间人攻击的流程。
首先让我来回顾一下 HTTPS 的整个流程:
这是 HTTPS 原本的流程,但是当我们有了 中间人服务器之后,整个流程就变成了下面这个样子。
这个流程建议动手画个图,便于理解
注意!在这个时候 HTTPS 就可能出现问题了。客户端会询问你:“此网站的证书存在问题,你确定要信任这个证书么。”所以从这个角度来说,其实 HTTPS 的整个流程还是没有什么问题,主要问题还是客户端不够安全。
刚才我们说到这里的问题主要在于客户端选择信任了,所以主要是使用者要放亮眼睛,保持警惕
标签:
要闻