HTTPS 中间人攻击

HTTPS 中间人攻击

中间人攻击过程

通讯过程

客户端------中间人------服务器

过程如下

  1. 服务器向客户端发送公钥
  2. 攻击者截获公钥,保留在自己手上
  3. 然后攻击者自己生成一个【伪造的】公钥,发给客户端
  4. 客户端收到【伪造的】公钥后,利用【伪造的】公钥生成加密 hash 值发给服务器
  5. 攻击者截获加密 hash 值,用自己的私钥解密获得真秘钥
  6. 然后攻击者利用服务器的公钥对真秘钥进行生成假的加密 hash 值,发给服务器
  7. 服务器用私钥解密假的 hash 值获得真秘钥
  8. 这个时候,服务器和客户端将利用真秘钥进行数据加密传输,但是它们却不知道攻击者也有真秘钥,并且传输必须经过攻击者进行转发数据

如何防止中间人攻击?

服务端在发送浏览器的公钥中加入 CA 证书,浏览器可以验证 CA 证书的有效性。

原文链接:菜园前端

相关推荐
触底反弹38 分钟前
一文彻底搞懂 JavaScript 栈和队列(建议收藏)
javascript·算法·面试
Asize1 小时前
Prompt 驱动 NLP:从 ES6 模块化到文本推理实战
javascript·人工智能·机器学习
我是一颗柠檬1 小时前
【计算机网络全面教学】网络层与IP协议,子网划分到路由协议全掌握Day3(2026年)
网络协议·tcp/ip·计算机网络
JieE2121 小时前
树与二叉树--JS实例
javascript·数据结构
To_OC1 小时前
搞懂二叉树递归遍历,我居然是从爬楼梯开始的
前端·javascript·数据结构
meilindehuzi_a1 小时前
深入理解 Ajax 异步请求:从 XMLHttpRequest 到 Node.js HTTP 服务实践
http·ajax·node.js
用户7229134504521 小时前
数字故障美学:用 Canvas 实现 RGB 偏移、像素排序与扫描线
javascript
小森林之主1 小时前
深入正则表达式:核心语法与实战剖析
javascript·python·正则表达式·编程技巧·字符串处理
alexander0682 小时前
JavaScript 中,对象内部函数的几种等价写法,对象外部的 几种等价写法
javascript
云水一下2 小时前
Vue.js从零到精通系列(八):项目实战——构建一个完整的电商后台管理系统
前端·javascript·vue.js