新闻动态

News

深信服,让IT更简单、更安全、更有价值

OpenSSL 又沦陷,DROWN漏洞影响1100万网站

/ 2016-03-07

OpenSSL 又沦陷,DROWN漏洞影响1100万网站


事件描述:

OpenSSL 最新的安全公告中指出,OpenSSL SSLv2协议EXPORT加密模块存在高危漏洞,研究者将该漏洞命名为DROWN。


攻击者可利用这个漏洞破坏网站加密体系,发起“中间人劫持攻击”,从而窃取HTTPS敏感通信,包括网站密码、信用卡帐号、商业机密、金融数据等。DROWN漏洞一经曝光,就在安全圈内引起了广泛的关注。


DROWN漏洞研究人员在互联网中扫描发现,该漏洞影响了全世界多达1100万个HTTPS网站,其中包括雅虎、阿里巴巴、新浪微博、新浪网、360、BuzzFeed、Flickr、StumbleUpon 4Shared 和三星等知名网站。


部分受影响网站截图

漏洞详情:

DROWN 是 Decrypting RSA with Obsolete and Weakened eNcryption的缩写,即“利用过时的脆弱加密算法来对RSA算法进行破解”。现在流行的服务器和客户端几乎都使用TLS加密,然而,由于错误配置,许多服务器仍然支持SSLv2。SSLv2是一种过时已久的加密协议,它的加密算法已经不能保证信息的安全。


但是实践中许多客户端依然使用SSLv2,获得服务端的支持后,加密协议降级到SSLv2,就存在被攻击的风险。


DROWN 漏洞其实是一个跨协议漏洞,如果服务器之间共享RSA密钥,即使像SMTP、IMAP、POP等协议,只要支持SSLv2和EXPORT加密,这些加密通信也会被解密。


因此OpenSSL官方现已全面禁用SSLv2协议,同时也关闭了SSLv3协议中的一些弱加密算法。


漏洞利用:

DROWN 漏洞的研究人员在还原该漏洞的利用攻击过程中,通过高度定制的GPU计算算法,在GPU集群上,去解密一个2048bit长度加密的RSA密文,消耗了18个小时;而在Amazon EC2 云服务上消耗了将近8个小时。


根据乌云安全中心一篇报道中指出,对于常规的DROWN攻击,即直接攻击SSLv2中的协议问题而不依靠特定Lib库实现问题时,解密TLS会话攻击者需要抓取大约1000个用了RSA密钥交换的TLS会话,主动向服务器发出40000SSLv2连接。然后本地做出2^50量级的加密计算。如果真有黑客想获取你登录某个网站的账号密码,至少要440美元的成本,还要劫持你的上网数据(比如跑到你家楼下劫持路由)


DROWN 漏洞虽然影响广泛,但是其繁琐的攻击步骤和较高的攻击成本,使得该漏洞的危害并非看上去那么严重。


漏洞检测:

安全无小事,虽然 DROWN 漏洞直接利用成本较高,降低了被攻击的风险,但是如果有其他漏洞配合 DROWN 漏洞进行组合攻击,危害将不可预期。

DROWN研究团队提供了在线检测,方便了用户自行检查,检测地址为:

https://test.drownattack.com/

可以直接使用 https://test.drownattack.com/?site=你要测试的网站 来查询


如果你是一名技术人员,还可以利用一些漏洞检测脚本,比如:

OpenSSL提供的检测脚本:

https://mta.openssl.org/pipermail/openssl-dev/2016-March/005602.html

DROWN Scanner:

https://github.com/nimia/public_drown_scanner#drown-scanner

不过,这些检测方法并不是百分之百准确的,都存在误报或漏报的可能。这里以DROWN scanner为例,简述下漏洞检测的过程和方法。

运行DROWN scanner检测漏洞,如下图(图中IP为百度某IP):



工具检测到该IP的主机存在漏洞,存在漏洞的cipher是DES_64_CBC_WITH_MD5。

检测工具检测的方法基本是先尝试与目标建立SSLv2协议的连接,获取服务器支持的cipher suites,如果cipher suites存在RC2Export, RC4Export, RC4, DES等加密模块(加密强度较低)就认为存在漏洞。


可以发现,在使用SSLv2协议交互阶段,Server Hello报文中支持的Cipher含有DES_64_CBC_WITH_MD5,之后客户端尝试使用这个弱加密与服务端通信,发送master key,如下图所示服务端可以使用该弱加密算法通信,所以认为存在漏洞。



修复建议:

1. 在业务不需要的情况下,建议全面禁用SSLv2协议。不仅仅是HTTPS协议,还包括所有使用SSLv2的上层协议

2. 或者禁用SSLv2协议所有支持的cipher,安装漏洞CVE-2015-3197的补丁。

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

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



点击以下链接,了解更多深信服安全资讯:

http://sec.sangfor.com.cn:88


关注我们:

©2000-2016    深圳市深信服电子科技有限公司版权所有   |  粤ICP备08126214号   |  法律声明   |  隐私保护   |  廉洁&反舞弊举报