SSL V2.0 协议有哪些安全漏洞?主流浏览器是否支持V2.0协议?
SSL协议由美国 NetScape公司开发的,V1.0版本从没有公开发表过;V2.0版本于1995年2月发布。但是,由于V2.0版本有许多安全漏洞,所以,1996年紧接着就发布了V3.0版本。
SSL协议 V2.0 主要安全漏洞:
(1) 同一加密密钥用于消息身份验证和加密。
(2) 弱消息认证代码结构和只支持不安全的MD5哈希函数。
(3) SSL握手过程没有采取任何防护,这意味着非常容易遭遇中间人攻击。
(4) 使用TCP连接关闭,以指示数据的末尾(没有明确的会话关闭通知)。这意味着截断攻击是可能的:攻击者只需伪造一个TCP FIN,使得接受方无法识别数据结束消息的合法性。
(5) 仅能提供单一服务和绑定一个固定域名,这与Web服务器中的虚拟主机标准功能有冲突,这意味着,许多网站都无法使用SSL。
因为SSL v2.0协议存在许多安全漏洞问题,容易遭遇中间人攻击和容易被破解。但是,由于许多系统和Web服务器都还支持SSL v2.0协议,所以为了增强用户浏览网页的安全,目前所有主流新版浏览器都已经不支持不安全的SSL v2.0协议。
如下图1所示,微软从IE 7开始就已经把浏览器的缺省设置不支持SSL 2.0,但可能是考虑到有些网站还只支持SSL 2.0,所以IE浏览器留了一个可以由用户设置支持SSL 2.0的选项,以便能正常访问只支持SSL 2.0的网站。IE7/IE8支持SSL 3.0和TLS1.0,而IE9还支持TLS1.1和1.2。苹果浏览器Safari采用IE浏览器同样安全配置。
如下图2所示,火狐浏览器要严格些,干脆就不支持SSL 2.0,没有SSL 2.0的选项,只有SSL3.0和TLS 1.0选项。
如下图3所示,Opera浏览器也是用火狐浏览器一样严格,不支持SSL 2.0,没有SSL 2.0的选项。但支持SSL3.0和TLS 1.0/1.1/1.2,比火狐浏览器更好地支持更加安全的TLS1.1和1.2版本。
如下图4所示,谷歌浏览器只有让用户自己设置是否支持SSL 2.0的选项,缺省也是不支持SSL 2.0,SSL3.0和TLS 1.0是肯定会支持的(虽然没有显示),但不清楚是否支持更加安全的TLS1.1和1.2版本。
目前我国已经部署SSL证书的网站普遍支持SSL v3.0协议,这是由于我国的网站部署SSL证书比较晚,所以并没有发现只支持SSL 2.0的网站。但目前我国部署了SSL证书的网站普遍存在的问题是并没有关闭不安全的SSL 2.0协议,仍然是支持的。虽然新版浏览器已经不支持SSL 2.0,但旧版本浏览器还会支持,而且黑客要攻击的话当然是直接使用SSL 2.0协议来攻击。因此,所有已经部署了SSL证书的网站服务器都应该赶紧关闭SSL2.0协议,以确保重要网站安全。