拒绝移动应用程序中的任何自定义 ssl 证书

信息安全 tls 中间人 安卓 IOS 窗户电话
2021-08-29 00:54:37

考虑以下场景。

  1. Eve 在公共场所创建了一个访问点。
  2. Alice 通过手机连接到 AP 并开始浏览网页。
  3. Eve 将 Alice 重定向到一个注册页面,并建议 Alice 阅读并接受条款和条件 bla-bla并安装 SSL 证书
  4. 就 Alice 是一个普通的移动用户而言,她不假思索地安装了证书(由于注册消息包含 140 多个字符,她只需单击“确定”按钮)。最重要的是,它是大多数移动设备上的一步程序
  5. 现在 Eve 可以执行 MITM 攻击。她可以劫持 HTTP(S) 流量。

将自己视为 Bob 的移动应用程序开发人员。我们如何防止所描述的攻击?我们甚至可以这样做吗?随时为任何移动操作系统建议您的解决方案。

1个回答

如果您是应用程序开发人员,您可能做的最好的事情就是固定证书,这意味着如果您看到除您知道并信任的特定证书之外的任何证书(例如通过比较指纹或公钥),请断开连接并退出那里。

否则,根据您的示例,您所依赖的系统已被证明已损坏。但是,您的攻击存在一些实际问题,因为安装根证书比单击要复杂一些,希望用户不会那么笨——没关系。