CVE-2014-3566 SSLv3 Poodle原理分析及防范方法

10月15日消息,Google发布的一份漏洞分析报告指出,在互联网上广泛使用的SSLv3存在设计缺陷,可能被黑客利用窃取基于SSL3.0版加密通信的内容,这种攻击方式被称为“贵宾犬攻击”。

在线检测页面 https://sslv3.dshield.org:444/index.html
什么是 SSL3.0 Poodle漏洞?

SSL协议由美国 NetScape公司开发的, 1996年发布了V3.0版本。SSL 3.0 已经存在 15 年之久,目前绝大多数浏览器都支持该版本。通常用户的浏览器都使用新版本的安全协议与服务器进行连接,但如果遇到 bug 导致连接失败,就会转而尝试更老版本的安全协议进行连接,「更老版本」就包括SSL 3.0。
Poodle攻击的原理,就是黑客故意制造安全协议连接失败的情况,触发浏览器的降级使用 SSL 3.0,然后使用特殊的手段,从 SSL 3.0 覆盖的安全连接下提取到一定字节长度的隐私信息。

这个漏洞允许在ssl安全通信的过程中,解密出明文信息。破坏整个加密体系。漏洞是由google安全团队的Bodo Möller 与Thai Duong 和 Krzysztof Kotowicz三个人一起发现的。ssl3.0是一个非常老的东西了,大概有15年的历史了,当客户端浏览器在和服务端进行https安全通信的过程中,连接比较新的ssl版本(例如tls1.0,1.1,或1.2)失败的时候,会降级到ssl3.0来连接,问题也就在这里。因为攻击者会使用中间人技术,强制客户端浏览器降级到SSL3.0,然后窃取你和服务器的通信。万字不如一图:

t01da9d5c20d48b9c06

SSLv3“贵宾犬攻击”的一个重要手段是基于ARP欺骗的中间人攻击,触发条件是通信两端均使用SSLv3进行安全传输。对此360安全卫士官方微博建议网友:电脑应开启360安全卫士ARP防火墙,可以防止黑客利用中间人攻击劫持SSLv3加密通信数据;此外,在漏洞得到修复前,浏览器“设置”中最好暂时关闭对SSL3.0协议的支持。

防范方法如下


Nginx: 

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_prefer_server_ciphers on;

ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256

SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA:DHE

RSA-AES128-SHA:RC4-SHA:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!DSS:!PKS;

ssl_session_timeout 5m;

ssl_session_cache builtin:1000 shared:SSL:10m; 
 
Apache: 

SSLProtocol all -SSLv2 -SSLv3

SSLHonorCipherOrder on

SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256

SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-RC4-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA:DHE

RSA-AES128-SHA:RC4-SHA:!aNULL:!MD5:!DSS 

关闭客户端SSLv3支持:

谷歌已表示chorme浏览器已经通过技术 手段屏蔽浏览器自动降级至SSL3.0链接。手动关闭掉 SSL 3.0 支持的方法。 

Windows 用户: 

1)完全关闭 Chrome 浏览器 

2)复制一个平时打开 Chrome 浏览器的快捷方式 

3)在新的快捷方式上右键点击,进入属性 

4)在「目标」后面的空格中字段的末尾输入以下命令 --ssl-version-min=tls1

Mac OS X 用户: 

1)完全关闭 Chrome 浏览器 

2)找到本机自带的终端(Terminal) 

3)输入以下命令:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --ssl-version-min=tls1

Linux 用户: 

1)完全关闭 Chrome 浏览器 

2)在终端中输入以下命令:google-chrome—ssl-version-min=tls1

Firefox 浏览器用户可以进入 关于:设置,方法是在地址栏输入 about:config,然后将 security.tls.version.min 调至 1。 

更多详细信息:

https://www.openssl.org/~bodo/ssl-poodle.pdf  

https://www.imperialviolet.org/2014/10/14/poodle.html

参考链接:

http://www.wosign.com/news/SSLv3-Poodle.htm

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


发表评论

(必填)

(必填)

(以便回访)