HTTPS 中间人攻击

HTTPS 中间人攻击

中间人攻击过程

通讯过程

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

过程如下

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

如何防止中间人攻击?

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

原文链接:菜园前端

相关推荐
我命由我123453 分钟前
React - ref、回调 ref 回调执行次数的问题、createRef 函数、事件处理
前端·javascript·react.js·前端框架·html·html5·js
我命由我123455 分钟前
React - 收集表单元素、收集表单元素优化、生命周期(旧)、生命周期(新)
前端·javascript·react.js·前端框架·html·html5·js
SuperEugene6 分钟前
Monorepo + pnpm workspace 落地实操:Vue 中后台多项目 / 组件库 / 公共包管理|Vue 工程化篇
前端·javascript·vue.js·pnpm·vite·monorepo
白中白1213810 分钟前
杂七杂八补充系列
开发语言·前端·javascript
前端小D20 分钟前
作用域/闭包
前端·javascript
前端 贾公子21 分钟前
@uni-helper 社区:让 uni-app 拥抱 ESM 时代
开发语言·前端·javascript
真夜22 分钟前
又遇到生产与开发环境结果不一致问题。。。
前端·javascript·http
掘金安东尼22 分钟前
低代码工具很多,为什么 RollCode 更像一套「页面生产平台」
前端·javascript·面试
baozj22 分钟前
前端大文件上传的另一种提速思路
前端·javascript
poo22 分钟前
全局防抖方案的设计思路与实现:原型劫持的完整方案(零侵入)
javascript