北京京南万讯科技有限公司

Beijing Jnwise Technology Co.,Ltd.

新闻动态   NEWS



OpenSSL 又沦陷,DROWN漏洞影响1100万网站
事件描述:


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

 

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

 

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

 

部分受影响网站截图

漏洞详情:

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

 

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

 

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

 

因此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的主机存在漏洞,存在漏洞的cipherDES_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

 


 

服务热线

010-5090-3896