CVE-2016-0800:OpenSSL安全公告(2016.3.2)

阅读量247112

|

发布时间 : 2016-03-02 11:35:34

http://p5.qhimg.com/t01659a698e876faa84.jpg

OpenSSL安全公告-北京时间2016年3月2日

提示:在此次更新中,OpenSSL默认禁用了SSLv2协议,并且移除了SSLv2协议的EXPORT系列加密算法。考虑到我们在此公告中所罗列出来的问题,以及协议中存在的一些其他问题(具体信息请点击这里进行查看),我们强烈建议用户停止使用SSLv2协议。

利用SSLv2协议漏洞来对TLS进行跨协议攻击(DROWN)(CVE-2016-0800)

漏洞严重程度:高

研究人员发现了一种跨协议攻击,如果服务器使用了SSLv2协议和EXPORT加密套件,那么攻击者就可利用这项技术来对服务器的TLS会话信息进行破解。需要注意的是,客户端与不存在漏洞的服务器进行通信时,攻击者可以利用其他使用了SSLv2协议和EXPORT加密套件(即使服务器使用了不同的协议,例如SMTP,IMAP或者POP等协议)的服务器RSA密钥来对上述两者的通信数据进行破解。文中所指的这个漏洞就是DROWN(CVE-2016-0800)。

如果攻击者想要破解一个会话通信密钥,那么他不仅需要进行大约2的50次方次计算,而且还要对目标服务器中的上千条通信链接进行处理。但是,现在有一种效率更加高的攻击方式,这种攻击方式也是DROWN攻击的变种版本,它可以对存在漏洞的OpenSSL服务器(版本在1.0.2a,1.0.1m,1.0.0r 和0.9.8zf以下的OpenSSL)进行攻击。

用户可以通过禁用SSL/TLS服务器中的SSLv2协议来解决这个问题,我们强烈建议用户尽快处理这一问题。而且禁用所有的SSLv2加密同样可以解决这一问题。除此之外,我们也已经发布了一个针对漏洞CVE-2015-3197的修复补丁(修复了OpenSSL 1.0.1r和1.0.2f中的安全问题),请用户尽快进行安装和部署。如果服务器没有禁用SSLv2 协议,也没有安装能够修复漏洞CVE-2015-3197的补丁,那么服务器将有可能受到DROWN攻击。即使你可能会认为禁用所有的SSLv2加密也能达到同样的效果,但这只是表面上的,因为攻击者可以通过其他的手段强迫服务器使用SSLv2协议以及EXPORT加密工具。

针对DROWN攻击,OpenSSL 1.0.2g和1.0.1s部署了下列缓解措施:

现在,在OpenSSL安装部署完成之后,默认会禁用SSLv2协议。如果用户在配置过程中没有提供 “enable-ssl2”参数,那么服务器是不支持使用SSLv2协议的。即便是用户使用了“enable-ssl2”参数,用户也可以利用灵活性和扩展性更强的SSLv23_method()来进行通信的协商处理,该方法将会调用下列内容:

SSL_CTX_clear_options(ctx, SSL_OP_NO_SSLv2);
或者
SSL_clear_options(ssl, SSL_OP_NO_SSLv2);

由于攻击者可以通过穷举搜索等方法恢复通信密钥,所以我们也移除了OpenSSL中的SSLv2加密套件。更具体一点来说,SSLv2 40位的EXOPRT密码以及SSLv2 56位的DES加密算法都被移除了。

除此之外,新版的OpenSSL也默认禁用了SSLv3协议中的弱密码,默认配置中也不再提供“enable-weak-ssl-ciphers”参数,而且也不再提供“EXPORT”系列密码和低强度的密码。

l   使用了OpenSSL 1.0.2的用户应该立刻将OpenSSL更新至1.0.2g;

l   使用了OpenSSL 1.0.1的用户应该立刻将OpenSSL更新至1.0.1s;

Nimrod Aviram和Sebastian Schinzel于2015年12月29日将这一问题报告给了OpenSSL团队。随后,OpenSSL团队的Viktor Dukhovni和Matt Caswell共同开发出了针对此漏洞的修复补丁。

DSA算法代码中的多重释放漏洞(CVE-2016-0705)

漏洞严重程度:低

研究人员在OpenSSL解析DSA私钥的过程中发现了一个多重释放漏洞,如果服务器端程序从一个不受信任的来源接收到了DSA密钥,那么攻击者就可以利用这个漏洞来对目标主机进行拒绝服务攻击(DoS),或者引起服务器的内存崩溃。但是发生这种情况的可能性较小。

这个漏洞将会影响OpenSSL 1.0.2和1.0.1,所以我们建议用户:

l   使用了OpenSSL 1.0.2的用户应该立刻将OpenSSL更新至1.0.2g;

l   使用了OpenSSL 1.0.1的用户应该立刻将OpenSSL更新至1.0.1s;

Adam Langley于2016年2月7日将这一漏洞的详细信息报告给了OpenSSL团队。OpenSSL团队的Stephen Henson开发出了针对此漏洞的修复补丁。

BIO_*printf函数中的内存问题得到了修复(CVE-2016-0799)

漏洞严重程度:低

在此之前,安全研究人员在OpenSSL的BIO_*printf()函数中发现了几个问题。但现在这些问题都已经得到了解决。

系统在调用内部函数“fmtstr”来处理BIO_*printf函数中的“%s”格式字符串时,需要对字符串的长度进行计算,但是这将有可能导致数据溢出的发生,并且在该函数打印输出某一长度非常大的字符串时,也有可能引起系统的崩溃。

BIO_*pinrtf函数的主要功能是负责解释和转换格式字符串,该函数的输入参数为_dpor()。dpor()可以以一种渐进的方式对格式字符串中的字符逐个进行扫描,并利用doapr_outch()函数对数据进行输出。

除此之外,当内存空间分配失败时,内部函数“doapr_outch”仍然会尝试向内存空间写入带外数据(OOB)。在1.0.2及其以下版本中,这一问题将会导致系统在分配内存缓冲区的空间时,分配空间的大小会超过INT_MAX长度所规定的值,而这种情况一般会在系统处理某一较长的“%s”格式字符串时发生。与此同时,系统还有可能会发生内存泄漏。

考虑到编译器的工作机制,第一个问题很有可能会掩盖上述的第二个问题。因为在这种情况下,大量不受信任的数据就可以被传递至BIO_*pirntf函数之中,然后攻击者就可以利用这些漏洞来对目标进行攻击。如果应用程序使用了这些功能函数,那么他们的系统就变得不安全了。当OpenSSL需要打印输出人类可识别的ASN.1数据时,将会使用到这些函数。因此,如果需要输出的数据来自于一个不受信任的信息源,那么负责打印输出这些数据的应用程序也将有可能受到攻击。除此之外,如果OpenSSL的命令行工具所要打印输出ASN.1数据来源于不受信任的信息源,那么它同样也是可以被攻击的。

这个问题将会影响OpenSSL 1.0.2和1.0.1。所以我们建议用户:

l   使用了OpenSSL 1.0.2的用户应该立刻将OpenSSL更新至1.0.2g;

l   使用了OpenSSL 1.0.1的用户应该立刻将OpenSSL更新至1.0.1s;

Guido Vranken于2016年2月23日将此问题报告给了OpenSSL团队。OpenSSL团队的Matt Caswell已经开发出了针对此漏洞的修复补丁。

除了OpenSSL之外,Apache httpd也使用了BIO_printf函数,所以它也会受到这一漏洞的影响。但是,我们目前还没有对其进行分析检测,所以暂时还不知道该漏洞将会给这一产品带来多大的影响。除此之外,还有一些其他著名的应用程序也使用了BIO_printf(),具体信息请点击这里进行获取。

用户提醒

根据我们的产品发布策略以及之前所发布的安全公告(具体信息请点击这里查看),我们将会在2016年12月31日停止对OpenSSL 1.0.1提供技术支持。在此之后,OpenSSL团队将不会再为此版本发布任何的安全更新补丁。所以我们建议OpenSSL 1.0.1的广大用户尽快更新OpenSSL版本。

除此之外,OpenSSL团队已经于2015年12月31日时停止对OpenSSL 0.9.8和1.0.0提供技术支持,这些版本将不再接收到相应的安全更新。

参考信息

安全公告地址:

https://www.openssl.org/news/secadv/20160301.txt

请注意:随着时间的推移,我们所提供的在线公告可能会随时进行更新,用户可以持续关注我们的网站来获取有关这些问题的最新信息。

如果用户对OpenSSL漏洞的安全等级分类方式感兴趣的话,可以点击下列地址进行了解:

https://www.openssl.org/policies/secpolicy.html

可以参考:

http://bobao.360.cn/news/detail/2787.html

        漏洞检测工具:https://github.com/nimia/public_drown_scanner 

        360安全播报会对本漏洞持续报道,并且在此文持续更新文章链接

本文由WisFree原创发布

转载,请参考转载声明,注明出处: https://www.anquanke.com/post/id/83558

安全客 - 有思想的安全新媒体

分享到:微信
+10赞
收藏
WisFree
分享到:微信

发表评论

内容需知
  • 投稿须知
  • 转载须知
  • 官网QQ群8:819797106
  • 官网QQ群3:830462644(已满)
  • 官网QQ群2:814450983(已满)
  • 官网QQ群1:702511263(已满)
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 360网络攻防实验室 安全客 All Rights Reserved 京ICP备08010314号-66