赞
踩
一、什么是openssl
OpenSSL是一个软件库,用于保护计算机网络上的通信免受窃听或需要在另一端识别该方的应用程序。它广泛用于互联网Web服务器,服务于大多数网站。简单的理解一句话:openssl是一个C语言函数库,对SSL协议的实现,主要用于web服务器上提供https的加密服务。
OpenSSL包含SSL和TLS协议的开源实现。以C编程语言编写的核心库实现了基本的加密功能,并提供了各种实用功能。可以使用允许以各种计算机语言使用OpenSSL库的包装器。
适用于大多数Unix和类Unix操作系统(包括Solaris,Linux,macOS,QNX和各种开源BSD操作系统)
OpenSSL整个软件包大概可以分成三个主要的功能部分:密码算法库、SSL协议库以及应用程序
OpenSSL支持许多不同的加密算法:
AES,Blowfish,Camellia,Chacha20,Poly1305, SEED,CAST-128,DES,IDEA,RC2,RC4,RC5,Triple DES,GOST 28147-89 [16]
MD5,MD4,MD2,SHA-1,SHA-2,SHA-3,RIPEMD-160,MDC-2,GOST R 34.11-94,[16] BLAKE2,Whirlpool [17]
RSA,DSA,Diffie-Hellman密钥交换, 椭圆曲线,X25519,Ed25519,X448,Ed448,GOST R 34.10-2001 [16]
二、心脏滴血漏洞
OpenSSL版本1.0.1到1.0.1f 在其TLS心跳扩展的实现中存在严重的内存处理错误,可用于在每次心跳时显示最多64 KB的应用程序内存[37] [38](CVE-2014) -0160)。通过读取Web服务器的内存,攻击者可以访问敏感数据,包括服务器的私钥。[39]如果使用的加密协议不能确保完美的前向保密,这可能允许攻击者解码早先的窃听通信。对私钥的了解也可能允许攻击者发起中间人攻击反对任何未来的通信。[40]该漏洞还可能揭示其他用户的敏感请求和响应的未加密部分,包括会话cookie和密码,这可能允许攻击者劫持该服务的另一个用户的身份。[41]
据其于2014年4月7日披露的信息,被信任机构认证的互联网安全网络服务器中约有17%或50万被认为易受攻击。[42]但是,Heartbleed可以影响服务器和客户端。
三、如何手工升级应用服务器中存在问题的openssl
1、查看现有openssl运行版本
Openssl version
目前openssl的最新版本情况
2、安装必要依赖软件
yum install gcc gcc-c++ autoconf automake zlib zlib-devel pcre-devel -y
3、下载并解压openssl
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
tar -zxf openssl-1.0.2l.tar.gz
4、编译并安装openssl
cd openssl-1.0.2l/
./config
make && make install
5、移除就版本openssl
mv /usr/bin/openssl /tmp/
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
6、完成openssl升级
查看最新版本
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。