作家
登录

HTTPS连接过程以及中间人攻击劫持

作者: 来源: 2017-12-04 14:12:05 阅读 我要评论

CTO练习营 | 12月3-5日,深圳,是时刻成为优良的技巧治理者了


一 、HTTPS连接过程及中心人进击道理

HTTPS连接过程以及中心人进击劫持

如volley

1.https请求

客户端向办事端发送https请求;

2.生成公钥和私钥

办事端收到请求之后,生成公钥和私钥。公钥相当于是锁,私钥相当于是钥匙,只有私钥才能够打开公钥锁住的内容;

3.返回公钥

4.客户端验证公钥

客户端收到公钥之后,起首会验证其是否有效,如揭橥机构或者过不时光等,如不雅发明有问题就会抛出异常,提示证书存在问题。如不雅没有问题,那么就生成一个随机值,作为客户端的密钥,然后用办事端的公钥加密;

客户端用办事端的公钥加密密钥,然后发送给办事端。

6.办事端收取密钥,对称加密内容

https协定就是http+ssl协定,如下图所示为其连接过程:

办事端将公钥(证书)返回给客户端,公钥琅绫擎包含有很多信息,比如证书的揭橥机构、过不时光等等;

办事端收到经由加密的密钥,然后用私钥将其解密,获得客户端的密钥,然后办事端把要传输的内容和客户端的密钥进行对称加密,如许除非知道密钥,不然无法知道传输的内容。

7.加密传输

OKhttp3.0

办事端将经由加密的内容传输给客户端。

8.获取加密内容,解密

客户端获取加密内容后,用之前生成的密钥对其进行解密,获取到内容。

中心人劫持进击

https也不是绝对安然的,如下图所示为中心人劫持进击,中心人可以获取到客户端与办事器之间所有的通信内容。

HTTPS连接过程以及中心人进击劫持

中心人朝长进步客户端发送给办事器的请求,然后假装成客户端与办事器进行通信;将办事器返回给客户端的内容发送给客户端,假装成办事器与客户端进行通信。

经由过程如许的手段,便可以获取客户端和办事器之间通信的所有内容。

应用中心人进击手段,必须要让客户端信赖中心人的证书,如不雅客户端不信赖,则这种进击手段也无法发患咀用。

二、中心人进击的预防

造成中心人劫持的原因是 没有对办事端证书及域名做校验或者校验不完全,为了便利,直接采取开源框架默认的校验方法进行https请求

HTTPS连接过程以及中心人进击劫持

HTTPS连接过程以及中心人进击劫持

HTTPS连接过程以及中心人进击劫持

预防办法:

预防方法有两种

1 、针对安然性请求比较高的 app,可采取客户端预埋证书的方法锁逝世证书,只有当客户端证书和办事端的证书完全一致的情况下才许可通信,如一些银行类的app,但这种方法面对一个问题,证书过时的问题,因证书有必定的有效期,当预埋证书过时了,只有经由过程强迫更新或者请求用户下载证书来解决。

今朝很多应用都用webview加载H5页面,如不雅办事端采取的是可托CA揭橥的证书,在 webView.setWebViewClient(webviewClient) 时重载 WebViewClient的onReceivedSslError() ,如不雅出现证书缺点,直接调用handler.proceed()会忽视缺点持续加载证书有问题的页面,如不雅调用handler.cancel()可以终止加载证书有问题的页面,证书出现问题了,可以提示用户风险,让用户选择加载与否,如不雅是须要安然级别比较高,可以直接终止页面加载,提示用户收集情况有风险:

以volley为例:校验的实现方法如下

经由过程预埋证书创建 SSLSocketFactory;

  1. private static SSLSocketFactory buildSSLSocketFactory(Context context, 
  2.                                                       int certRawResId) { 
  3.     KeyStore keyStore = null
  4.     try { 
  5.         keyStore = buildKeyStore(context, certRawResId); 

  6.   推荐阅读

      2018年云计算5大趋势 你准备好了吗?

    正如埃隆。马斯克(Elon Musk)和斯蒂芬。霍金(Stephen Hawking)等立异者近期评论的那样,在2017年,物联网(IoT)和人工智能在科技界扮演了重要角色。尽管行业专家估计IoT将会获得增长,但及时数据分析和云计算的持续立>>>详细阅读


    本文标题:HTTPS连接过程以及中间人攻击劫持

    地址:http://www.17bianji.com/lsqh/39420.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)