Android WebView 校验HTTPS证书

2018-10-26  本文已影响0人  南窗云

使用 Testin 检测项目,有一个高危风险是关于 WebView 的。

风险原因是未校验Https证书

需要在 WebViewClient 的 onReceivedSslError 方法中加上 handler?.cancel() 即可。

        webViewClient = (object : WebViewClient() {
            override fun onPageFinished(view: WebView?, url: String?) {
                super.onPageFinished(view, url)
                callBack?.onPageFinished(view, url)
            }

            //  证书的问题出错时会走onReceivedSslError()方法,使用 handler.cancel() 停止加载问题页面,防止中间人攻击风险。
            override fun onReceivedSslError(view: WebView?, handler: SslErrorHandler?, error: SslError?) {
                super.onReceivedSslError(view, handler, error)
                handler?.cancel()
            }
        })
上一篇 下一篇

猜你喜欢

热点阅读