近日网络安全界谈论的影响安全最大的问题就是Heartbleed漏洞,该漏洞是4月7号国外黑客曝光的。据Vox网站介绍,来自Codenomicon和谷歌安全部门的研究人员,发现OpenSSL的源代码中存在一个漏洞,可以让攻击者获得服务器上64K内存中的数据内容。该漏洞在国内被译为” OpenSSL心脏出血漏洞”,因其破坏性之大和影响的范围之广,堪称网络安全里程碑事件。

OpenSSL心脏出血漏洞的大概原理是OpenSSL在2年前引入了心跳(heartbeat)机制来维持TLS链接的长期存在,心跳机制是作为TLS的扩展实现,但在代码中包括TLS(TCP)和DTLS(UDP)都没有做边界的检测,所以导致攻击者可以利用这个漏洞来获得TLS链接对端(可以是服务器,也可以是客户端)内存中的一些数据,至少可以获得16KB每次,理论上讲最大可以获取64KB。

OpenSSL是为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议.多数SSL加密网站是用名为OpenSSL的开源软件包,由于这也是互联网应用最广泛的安全传输方法,被网银在线支付电商网站、门户网站电子邮件等重要网站广泛使用,所以漏洞影响范围广大。

密歇根大学的一个安全研究团队利用开源网络扫描工具ZMap搜索存在Heartbleed漏洞的网站。研究人员完整扫描了地址空间,截至4月10日2:00 PM,Alexa排名前百万的网站中有32%支持SSL,在支持HTTPS的网站中,9%存在漏洞,31.9%安全的支持OpenSSL TLS Heartbeat Extension, 59%不支持HeartbeatExtension(也就是安全的)也就是在漏洞爆发的时候全球前一百万的网站中,有40.9%的网站中招。全球第一个被攻击通告的案例加拿大税务局确认heartbleed导致了900个纳税人的社会保障号被盗,这900个纳税人的社保号被攻击者在系统中完全删除了。

这个漏洞对中国有多大影响?漏洞爆发当日国内一线电商几乎都存在此漏洞,淘宝修复最快,大概到4月8日下午5点左右修复漏洞,但这期间可能有不少数据被抓走。还有一些大型网站,例如雅虎的登录存在信息泄露,网易到8日晚上8点还没修复,还有一些在线交易网站泄露用户ID导致可以伪造交易信息。直到4月10晚上爱奇艺还没有修复,但目前大部分主流网站已经修复。所以OpenSSL心脏出血漏洞也堪称中国网络安全的一个灾难事件。

这个漏洞会泄露我们哪些信息?我们的网站登录名和密码、期间修改过的个人隐私信息、期间修改过的密码保护问题答案,还有信用卡信息和邮件服务器的上的邮箱地址和密码hash。很多网站都建议用户事后修改密码,其实还有一些跟密码同样重要的信息,比如你在这个过程中修改过的密保信息也会被读取,更保险的措施是我们也修改掉一些重要的密保信息和隐私信息,因为很多网站相信TLS加密信道。如果是有信用卡绑定的网站就比较麻烦,因为国内不是所有的网站都通过了PCI-DSS安全标准,PCI-DSS里有规定信用卡必须密文保存,而且不能保存CVV信息,如果是通过了PCI-DSS的网站,建议至少修改密码和个人信息。

该漏洞还有哪些后继影响?

1.新的攻击方式已出现,攻击者能利用该漏洞窃走受影响网站的用户密码和私钥,使用存在漏洞的OpenSSL版本的网站应该废除所有旧私钥和证书。
2.服务器的问题是第一波,第三方软件使用有缺陷的OpenSSL才是接下来需要考虑的问题,攻击者会利用这个漏洞获取用户原本想要保密的信息。存在客户端和服务端的软件也可能存在这个漏洞,甚至恶意利用者可能使用让客户端连接服务器端,服务器端发起针对客户端的攻击窃取客户端数据。
3.暴露在外网的服务器虽已得到及时修补,但一些公司内网的服务器却被忽略,很容易被内部恶意读取或是黑客内网渗透读取。
4.一些安全组织甚至在研究利用此漏洞做虚拟机逃逸,在虚拟机中让真实机远程执行代码,且利用思路很诡异。

我们如何有效的修补该漏洞?最简单有效的修补方案是升级到OpenSSL 1.0.1g。目前SNORT也已经出了相关规则,可以用于IDS/IPS拦截,也有很多第三方CDN流量规则拦截。但最新的利用程序是基于TLS加密信道发送的恶意请求,很轻松的绕过基于网络层的IDS和CDN流量层的规则拦截。目前安慧网盾基于软件端采用了加规则拦截并自动修复该漏洞,有效保护服务器安全。

其实在去年还有一个类似的严重安全漏洞lucky-13(CVE-2013-0169),影响了过去10年的所有TLS实现,OpenSSL的很多版本都可以完整的还原成明文,所幸该漏洞利用难度较高,利用程序也未大规模流传,openssl 也专门发布1.0.1e修复了这个漏洞。但是大部分服务器升级了,很多网关设备依然使用存在这个漏洞的版本。

OpenSSL心脏出血漏洞也引起国内安全界的很多讨论:

1.这个漏洞是OpenSSL在2年前引入了心跳(heartbeat)机制来维持TLS链接的长期存在产生。
2. 这个洞的地方其实是经过了OpenSSL社区包括Qualys在内的厂商的代码审计和fuzzing测试,但都没测出问题,当然fuzzing后不会崩溃,是不能测出。
3.有人猜测这个洞的样本很可能是来自SOC的NETFLOW审计。而谁的"SOC"是最厉害的?貌似除了BIG BROTHER没其他人了,当然这个消息NSA已经否认。

OpenSSL心脏出血漏洞全回顾的更多相关文章

  1. 对OpenSSL心脏出血漏洞的试验

    1.安装OpenSSL环境 sudo apt-get install openssl sudo pip install pyopenssl(中间会提示ffi.h 没有那个文件或目录,sudo apt- ...

  2. Heartbleed心脏出血漏洞原理分析

    Heartbleed心脏出血漏洞原理分析 2017年01月14日 18:14:25 阅读数:2718 1. 概述    OpenSSL在实现TLS和DTLS的心跳处理逻辑时,存在编码缺陷.OpenSS ...

  3. OpenSSL “心脏滴血”漏洞

    OpenSSL "心脏滴血"漏洞 漏洞描述 : OpenSSL软件存在"心脏出血"漏洞,该漏洞使攻击者能够从内存中读取多达64 KB的数据,造成信息泄露. 漏洞 ...

  4. 关于“心脏出血”漏洞(heartbleed)的理解

    前阵子“心脏出血”刚发生的时候读了下源代码,给出了自己觉得比较清楚的理解.   -------------------------穿越时空的分割线--------------------------- ...

  5. 记一次Metasploit心脏出血漏洞攻击测试

    打开msf框架 msfconsole

  6. 威胁远胜“心脏出血”?国外新爆Bash高危安全漏洞

    这几天Linux用户们可能不能愉快地玩耍了,红帽(Redhat)安全团队昨天爆出一个危险的Bash Shell漏洞.其带来的威胁可能比早前披露的“心脏出血”漏洞更大更强! [OpenSSL心脏出血漏洞 ...

  7. 升级OpenSSL修复高危漏洞Heartbleed

    升级OpenSSL修复高危漏洞Heartbleed 背景:          OpenSSL全称为Secure Socket Layer.是Netscape所研发.利用数据加密(Encryption) ...

  8. YTU 2559: “心脏出血”

    2559: "心脏出血" 时间限制: 1 Sec  内存限制: 128 MB 提交: 5  解决: 2 题目描述 2014年4月,一个开源加密库OpenSSL的严重漏洞" ...

  9. 心脏滴血漏洞复现(CVE-2014-0160)

    心脏滴血漏洞简述 2014年4月7日,OpenSSL发布安全公告,在OpenSSL1.0.1版本至OpenSSL1.0.1f Beta1版本中存在漏洞,该漏洞中文名称为心脏滴血,英文名称为HeartB ...

随机推荐

  1. php中的占位符

    1.?这种形式传值,注意是数组! 2.:name的形式.

  2. Web Service 和WCF的比较

    Web Service 的工作原理 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量 ...

  3. Java 第四天 Mysql

    下载地址 http://dev.mysql.com/downloads/  社区版是免费的 配置将zip 解压copy到本地,如:C:\mysql-5.6.15-winx64,复制配置文件my-def ...

  4. virtualenv python虚拟环境搭建

    python virtualenv.py flask

  5. How to create QTP Shared Object Repository

    How to create QTP Shared Object Repository To create a shared object repository by performing follow ...

  6. hdu 5166 Missing number

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5166 Missing number Description There is a permutatio ...

  7. ios 中怎么自定义(RGB)背景色

    1.定义RGB 色彩.随机颜色 我的抽为宏定义.便于各个文件中使用 // 1.获得RGB颜色 #define MTColor(r, g, b) [UIColor colorWithRed:(r)/25 ...

  8. iOS学习之C语言结构体

    结构体:用来存放相同类型数据或者不同类型数据的自定义类型. 结构体定义(声明) struct 结构体名 {    成员变量1;    成员变量2;    ... }; typedef 现有类型 新的类 ...

  9. mac 系统开发android,真机调试解决方案

    1.确保你的android设备真正链接到电脑上了,我在这里遇到过坑,弄了好久,才发现能充电的线,确无法传递数据过去.所以不要以为随便拿一根线,能充电,就可以传递数据了,我就是这么傻傻的拿了根不能用的数 ...

  10. 利用python scrapy 框架抓取豆瓣小组数据

    因为最近在找房子在豆瓣小组-上海租房上找,发现搜索困难,于是想利用爬虫将数据抓取. 顺便熟悉一下Python. 这边有scrapy 入门教程出处:http://www.cnblogs.com/txw1 ...