下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

OpenSSL安全漏洞类型以及一个重大漏洞例子分析

作者:课课家教育     来源: http://www.kokojia.com点击数:1943发布时间: 2017-07-13 08:30:23

标签: OpenSSLSSL安全漏洞网络安全

  互联网的发展为我们的生活带来了许多的方便,但在一定程度上我们自身的隐私信息也遭受到安全威胁,因此对于网络安全的问题我们总是在探讨,在寻找更好的办法去加强网络的安全。目前来说,OpenSSL是互联网上应用最广泛的安全传输方法,但OpenSSL本身的安全问题也变得日益突出,那它到底有哪些安全漏洞呢?我们来一起看看吧!

      OpenSSL为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。长期以来,OpenSSL开发维护所需的人员和资金一直短缺,造成OpenSSL更新缓慢,各种密码算法、协议存在的结构缺陷和编码实现上的技术漏润,不能及时修补更新;另外,研究人员往往更倾向于研究SSL/(D)TLS(TransportLayerSecurityProtocol)协议和密码算法的安全性而忽略了作为具体实施的OpenSSL的安全威胁和防御措施。然而,OpenSSL一旦遭受到攻击将会导致直接的、甚至是毁灭性的后果。

OpenSSL安全漏洞类型以及一个重大漏洞例子分析_OpenSSL_SSL_安全漏洞_网络安全_课课家 

  1.计时攻击缺陷

  在针对对称加密算法和非对称加密算法计时攻击的研究中,目前主要是结合高速缓冲存储器Cache的行为信息作为破解密钥的思想。Cache计时攻击的本质是密码加解密过程中微处理器读取Cache数据时会发生Cache 命中或者Cache失效从而导致存在时间差异,结合算法设计结构推测其内部执行过程,实现密钥破解。

  2. 分支预测缺陷

  现代处理器采用分支预测机制,即在分支指令执行结束之前利用预测算法猜测哪条分支将会被运行,以提高处理器指令流水线的性能。然而,利用来集度量分支被正确预测和错误预测时不同的执行时间,就可以分析出处理器执行了哪一条分支。在某种意义上,分支预测攻击也是计时攻击的-种。

  3. 故障分析缺陷

  OpenSSL在针对对称和非对称加密算法的具体实现上存在缺陷,易遭受故障分析攻击威励。故障分析攻击的思想最早由Boneh等人提出,该攻击利用密码运算过程中的错误信息实施攻击。之后,文献提出应用于对称密钥算法的差分故障分析,成功破解DES算法密钥。

  4.伪随机数生成器缺陷

  随机数在密码学中起着关键作用,很多密码算法都要将随机数作为基础参数来运用,例如,直接以随机数作为公钥密码算法中的密钥,或是以随机数来产生非对称加密算法中的密钥或对称加密算法中的会话密钥:在密钥分配中,使用随机数来防止重放攻击等。

  5.拒绝服务缺陷

  DoS是DenialofService的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击。虽然具体的实现方式千变万化,但都有一个共同点,即其根本目的是用超出自标处理能力的海量数据包消耗可用的系统资源、带宽资源等,使受害主机或网络无法及时接收并处理外界请求,或无法及时回应外界请求。在OpenSSL 针对SSL/ CD) TLS 协议的具体实现中,存在着许多代码编写问题,如递归漏洞、空指针引用等。利用这些缺陷,很容易使客户端或者服务器产生拒绝服务。

  6.Heartbleed缺陷

  在分析Heartbleed漏洞攻击之前,需要了解心跳协议。心跳协议,简单说就是数据通信中的节点需定期交换消息,即定期发送心跳信号,以确保远程数据服务中的节点能够检测到网络中断或节点崩溃。

  (D)TLS协议中的心跳扩展协议与普通网络使用的心跳协议类似,为了确保在使用(D)TLS 协议通信的双方,能够感知到对方的存在,保证其连接的有效性,引入了心跳扩展协议。然而,基于OpenSSL实现的心跳扩展协议存在边界检查漏洞,由于没有对缓冲区涉及的相关"长度"进行检查,准露的信息内容可能包含证书私钥、用户账户与密码、电子邮件以及重要的商业文档和通信等数据。

  7.中间人攻击缺陷

  中间人攻击CMan-in-the-MiddleAttack(MITM)是一种由来已久的网络攻击手段,并且在今天仍然有着广泛的发展空间,例如5MB 会话劫持、DNS 欺骗等攻击,都是典型的MITM攻击。儒而言之,所谓的MITM 攻击就是在通信双方毫无察觉的情况下,通过拦截正常的网络通信数据,进而对数据进行嗅探或篡改。OpenSSLSSLI(D)TLS协议中实现的握手过程存在检查验证漏洞易被中间人利用,通过伪造修改密码规范数据或者证书达到中间人攻击的目的。

  OpenSSL一个重大漏洞例子

  接下来,我们针对在2014年时OpenSSL爆出大漏洞的例子来分析一下其带来的影响。,这个漏洞只要是上述我们所说的Heartbleed。

  OpenSSL Heartbleed模块存在一个BUG,当攻击者构造一个特殊的数据包,满足用户心跳包中无法提供足够多的数据会导致memcpy把SSLv3记录之后的数据直接输出,该漏洞导致攻击者可以远程读取存在漏洞版本的OpenSSL服务器内存中长大64K的数据。这个漏洞影响30~50%比例使用https的网站,其中包括大家经常访问的:支付宝、微信、淘宝、网银、社交、门户等知名网站。只要访问https的网站便有可能存在被嗅探数据的风险。

  存在该漏洞的版本

  OpenSSL 1.0.1 through 1.0.1f(inclusive) are vulnerable

  OpenSSL 1.0.1g is NOT vulnerable

  OpenSSL 1.0.0 branch is NOT vulnerable

  OpenSSL 0.9.8 branch is NOT vulnerable

  简单的说,黑客可以对使用https(存在此漏洞)的网站发起攻击,每次读取服务器内存中64K数据,不断的迭代获取,内存中可能会含有程序源码、用户http原始请求、用户cookie甚至明文帐号密码等。

  这个漏洞影响究竟有多大?

  影响很大,因为有很多隐私信息都存储在服务器内存中。普林斯顿大学计算机科学家艾德•菲尔腾(Ed Felten)表示,使用这项技术的攻击者可以通过模式匹配对信息进行分类整理,从而找出密钥、密码,以及信用卡号等个人信息。

  丢失了信用卡号和密码的危害有多大,相信已经不言而喻。但密钥被盗的后果可能更加严重。这是信息服务器用于整理加密信息的一组代码。如果攻击者获取了服务器的私钥,便可读取其收到的任何信息,甚至能够利用密钥假冒服务器,欺骗用户泄露密码和其他敏感信息。

  一位安全行业人士在知乎上透露,他在某著名电商网站上用这个漏洞尝试读取数据,在读取200次后,获取了40多个用户名,7个密码,用这些密码,他成功地登录了该网站。之后又发现雅虎门户主页、微信公众号、微信网页版,YY语言、淘宝、网银、陌陌、社交、门户网站存在此漏洞。

  图为获取到了用户登录的帐号以及密码,这里的密码使用的明文传输,以至于通过这样的漏洞攻击黑客可以成功的登录了上百个账户。

  用户修改密码、发送消息、登录等请求以及很多操作全部在数据包中暴露出来,这里不列举更多受影响的网站了。其实这个漏洞据说早在2012年就被挖掘出来,直到昨天CVE纳入编号CVE-2014-0160,8号才正式爆发。使用HTTPS的网站大多是因为数据需加密防止嗅探等攻击的发生,漏洞爆发后彻底将这层大门打破,于是很多网站处于被监听的状态中。

  因此漏洞非用户安全所致,只要网站使用了存在漏洞的OpenSSL版本,用户登录该网站时就可能被黑客实时监控到登录账号和密码,此漏洞应由服务商尽快提供OpenSSL的升级。

  可喜的是诸如腾讯、网易、淘宝这些大的厂商对安全问题的应急相应速度很快,很多存在OpenSSL问题的网站已经修复,剩下一些相信也会通过白帽子们的努力很快修复。

  用户应当如何应对该问题?

  对重要服务,尽可能开通手机验证或动态密码,比如支付宝、邮箱等,登录重要服务,不仅仅需要验证用户名密码,最好绑定手机,加手机验证码登录。这样就算黑客拿到帐户密码,登录还有另一道门槛。

  另外,随着事件进展,可能受累及的网络服务在增加或更明确,建议用户修改重要服务的登录密码。对于密码设置的建议是,一个密码的使用时间不宜过长,超过3个月就应该换掉,并且密码设置要足够长,尽量不要多次使用同一个密码。

  网络安全对于我们真的很重要,特别是当我们信赖的安全协议自身出现问题时产生的影响更为重大,就如本文当中的OpenSSL安全漏洞一样,我们的账号密码等信息直接就暴露出去了。

  以上的就是我们今天所要学习的内容了,大家可以慢慢阅读仔细理解文章内容,这样可以让大家更容易消化知识哦,更多内容可前往课课家教育。

赞(11)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程