首页>技术支持>最新数字证书问答 >不做https有效性检查引发的安全问题

不做https有效性检查引发的安全问题

https是一种基于SSL证书的安全加密传输协议,使用https加密协议可以认证网站服务器真实身份和加密网站传输数据,比当下的http协议更加安全。然而在https实际应用中,有部分网站、系统使用的却是自签名https证书(延伸:使用自签SSL证书有什么风险),并且只是简单的调用,并没有做https有效性检查,这将产生严重的安全漏洞,给恶意攻击者有机可乘。

https有效性检查

https有效性检查的必要性

部分网站、系统开发者在开发过程中为了解决https证书报错的问题(使用了自己生成了证书后,客户端或浏览器发现证书无法与系统可信根CA形成信任链,出现了 CertificateException等异常。),会在客户端代码中信任客户端中所有证书的方式。而在客户端中覆盖google默认的证书检查机制(X509TrustManager),并且在代码中无任何校验https证书有效性相关代码。这样会引发一个问题:

如果用户手机中安装了一个恶意证书,那么就可以通过中间人攻击的方式进行窃听用户通信以及修改request或者response中的数据。

中间人攻击过程

1 客户端在启动时,传输数据之前需要客户端与服务端之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。

2 中间人在此过程中将客户端请求服务器的握手信息拦截后,模拟客户端请求给服务器(将自己支持的一套加密规则发送给服务器),服务器会从中选出一组加密算法与HASH算法,并将自己的身份信息以证书的形式发回给客户端。证书里面包含了网站地址,加密公钥,以及证书的颁发机构等信息。

3 而此时中间人会拦截下服务端返回给客户端的证书信息,并替换成自己的证书信息。

4 客户端得到中间人的response后,会选择以中间人的证书进行加密数据传输。

5 中间人在得到客户端的请求数据后,以自己的证书进行解密。

6 在经过窃听或者是修改请求数据后,再模拟客户端加密请求数据传给服务端。就此完成整个中间人攻击的过程。

参考:SSL中间人攻击频发,为何还需要SSL证书

防护中间人攻击办法

使用CA机构颁发的受信任的https证书可以很好的应对,CA机构属于合法第三方https证书签发机构。通过国际WebTrust认证的CA比如沃通CA的根证书都内置到了各大浏览器证书库,全球通用,支持所有浏览器,能够有效的验证证书的合法性。为了网站、系统的安全,建议使用合法第三方CA机构签发的受浏览器及操作系统信任的https证书。

文章链接:http://www.wosign.com/FAQ/faq2016-0308-01.htm

关键词:https有效性检查

本文来源于互联网,本站所有转载文章言论不代表本站观点。