Pisererer 2021-08-28 20:13 采纳率: 50%
浏览 26

我对于https的安全性有点疑问

看了一些关于https的内容,我的疑问在于,https是否也会存在中间人攻击。我的想法如下:
首先是正常的客户端C和服务端S,然后我自己维护一个服务端X,X也拥有合法的证书。然后讨论一下C请求S证书的过程。我拦截C发出的请求,然后发送到X,X同时作为客户端再请求S,X拿到S的证书,X给C返回X的证书,C拿到X的合法证书,C认为此证书是安全的。相当于现在C只和X在进行通信,X再和S进行通信。这样是否就实现了中间人攻击。
我看的比较浅显,可能理解的不到位,希望有人可以解答我的疑问。

  • 写回答

1条回答 默认 最新

  • 没事干写博客玩 2021-08-29 07:46
    关注

    证书中的秘钥最终只用来加密对称加密比如aes的key,这个aes的key是服务端和客户端协商的,使用了双方随机值生成,之后数据其实使用的就不是rsa或其他非对称加密了,你没法从中间让客户端不受影响的劫持,除非你拥有相同的证书,能截取双方的协商key的过程,否则这个key你不知道。你只能伪造站点进行dns劫持,或者让客户端访问变为http后自身通过https传递给服务端做中间人(sslstrip),这种情况客户端明确能知道是http访问的,但是想让客户端和服务端不受影响不行

    评论

报告相同问题?

问题事件

  • 创建了问题 8月28日

悬赏问题

  • ¥15 计算机图形多边形及三次样条曲线绘制
  • ¥15 根据protues画的图用keil写程序
  • ¥200 如何使用postGis实现最短领规划?
  • ¥15 pyinstaller打包错误
  • ¥20 cesm的气溶胶排放文件
  • ¥15 逐月累计,月份不连续,补齐月份
  • ¥15 应用简单的Python代码完成一个学生成绩管理系统
  • ¥15 用matlab求微分方程初值问题
  • ¥15 vscode下编写第三方库opencv与pcl代码时没有代码提示
  • ¥15 能够跑通不报错,如何解决?(标签-matlab)