OpenSSL-安全套也不安全了

原创 4 收藏 评论
举报 2014-04-10

北京时间4月9日多家网站及媒体平台曝出了一条重大消息:研究人员发现流行网络加密开源软件OpenSSL存在一处巨大漏洞.新闻一出,各国各地的程序员小伙伴儿们都忙的不可开交了.究竟谁在使用openssl呢?下面为你一一解答:

 

百度百科给出定义:


openssl是为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。

 

SSL是Secure Socket Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已成为Internet上保密通讯的工业标准。安全套接层协议能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的传输层协议(TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的,高层的应用层协议(例如:HTTP,FTP,TELNET等)能透明地建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成加密算法、通信密钥的协商及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证通信的私密性。

 

通过以上叙述,SSL协议提供的安全信道有以下三个特性:

1、数据的保密性 信息加密就是把明码的输入文件用加密算法转换成加密的文件以实现数据的保密。加密的过程需要用到密钥来加密数据然后再解密。没有了密钥,就无法解开加密的数据。数据加密之后,只有密钥要用一个安全的方法传送。加密过的数据可以公开地传送。

 

2、数据的完整性 加密也能保证数据的一致性。例如:消息验证码(MAC),能够校验用户提供的加密信息,接收者可以用MAC来校验加密数据,保证数据在传输过程中没有被篡改过。

 

3、安全验证 加密的另外一个用途是用来作为个人的标识,用户的密钥可以作为他的安全验证的标识。SSL是利用公开密钥的加密技术(RSA)来作为用户端与服务器端在传送机密资料时的加密通讯协定。

 

OpenSSL包含一个命令行工具用来完成OpenSSL库中的所有功能,更好的是,它可能已经安装到你的系统中了。


 OpenSSL是一个强大的安全套接字层密码库,Apache使用它加密HTTPS,OpenSSH使用它加密SSH,但是,你不应该只将其作为一个库来使用,它还是一个多用途的、跨平台的密码工具。

如何安装?

linux下安装openssl:


cd /usr/local/src

wget http://www.openssl.org/source/openssl-0.9.8c.tar.gz

tar -zxvf openssl-0.9.8c.tar.gz

cd openssl-0.9.8c

./config --prefix=/usr/local/ --openssldir=/usr/local/openssl -g3 shared zlib-dynamic enable-camellia

make && make install

cd /usr/local

ln -s ssl-0.9.8l ssl

openssl version

显示 OpenSSL 0.9.8c 05 Sep 2006 即为安装成功.


 

谁在使用openssl?

自从互联网进入2.0时代,用户开始参与互联网网站的的交互,"人"在互联网中占据了主动地位,人们可以发博客,发照片,以及社交等等。所以网站出现了注册和登录功能,普通常规的记录登录的方法是使用cookie 和session来记录用户登录信息,cookie是使用在客户端,信息主要存储在用户使用的计算机浏览器里面。相对来说不是很安全,因为用户可以通过伪造来模拟登录网站,而session是记录在服务器端,用户登录会在服务器端产生一个session用来记录用户登录信息,此方法不易被伪造,但同时给服务器增加了负担,而且会存在session丢失的情况。


 后来非关系性数据库开始兴起,有一部分网站开始将用户信息单独隔离开来,登录信息存入数据库,主要代表的有新浪微博等一些著名的设计网站.他们主要采用token来做三次握手来验证用户信息,然后记录用户登录状态.这里就使用了openssl。
 
另外还有 网络银行, 电子商务网站, 政府服务平台,证券股票交易平台...等等。其中牵扯到用户安全信息的地方基本上都会采用openssl。如果你看到了一个链接地址开头是https那么就证明了这个网站在使用openssl。
 

漏洞名称?

专家指出此次漏洞名称为:心脏流血(Heartbleed)漏洞。
 
工作原理:SSL标准中包含了一个心跳选项,它可以允许处于SSL连接一端的电脑发送短信息,确认另一台电脑仍然在线,并给与回应。研究人员发现,OpenSSL存在的一处漏洞可以使得SSL连接一端的电脑发送虚假心跳信息,欺骗另一端的电脑泄露机密信息。通俗地讲,一台存在漏洞的电脑可以被欺骗传输服务器内存内容。


网民怎么办?

1.注意观察相关事件进展,目前尚无法准确评估黑客利用OpenSSL漏洞获得了多少数据。

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

3.如果随着事件进展,可能受累及的网络服务在增加或更明确,建议用户修改重要服务的登录密码。安全专家的建议是,一个密码的使用时间不宜过长,超过3个月就该换掉了。
 

本文系作者授权数英发表,内容为作者独立观点,不代表数英立场。
转载请在文章开头和结尾显眼处标注:作者、出处和链接。不按规范转载侵权必究。
本文系作者授权数英发表,内容为作者独立观点,不代表数英立场。
未经授权严禁转载,授权事宜请联系作者本人,侵权必究。
本内容为作者独立观点,不代表数英立场。
本文禁止转载,侵权必究。
本文系数英原创,未经允许不得转载。
授权事宜请至数英微信公众号(ID: digitaling) 后台授权,侵权必究。

    参与评论

    文明发言,无意义评论将很快被删除,异常行为可能被禁言
    DIGITALING
    登录后参与评论

    参与评论

    文明发言,无意义评论将很快被删除,异常行为可能被禁言
    800

    推荐评论

    暂无评论哦,快来评论一下吧!

    全部评论(0条)