OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
OpenSSL是Openssl团队的一个开源的能够实现安全套接层(SSLv2/v3)和安全传输层(TLSv1)协议的通用加密库。该产品支持多种加密算法,包括对称密码、哈希算法、安全散列算法等。
OpenSSL 常常会爆出一些漏洞
下面介绍CentOS7下rpm包方式升级openssl到安全版本
一、CentOS7下rpm包方式升级openssl到安全版本1.1.1n
操作步骤如下
1、查看并卸载当前openssl版本
rpm -aq | grep openssl rpm -e openssl-1.0.2k --nodeps
这时需要注意千万别yum remove openssl -y,否则依赖openssl的相关包也会被卸载
建议操作前先做好快照,再进行操作!!
2、rpm -ivh安装openssl-1.1.1n版本
rpm -ivh openssl-1.1.1n-1.el7.x86_64.rpm --nodeps
3、验证版本号
openssl version
说明:
- 1、系统旧版openssl软件包可以卸载,openssl其他附属软件包不建议卸载
系统默认安装的openssl-libs不能卸载,否则系统可能会崩溃!!!
- 2、漏洞修复前先评估修复的代价和成本
并不是说存在漏洞就一定要修复,生产环境能不动就不要乱动!除非这个漏洞不得不修
以大多数攻防对抗的技术认知来看,还轮不到拼openssl漏洞,再说了openssl漏洞利用的技术成本过高,此观点只是个人的理解,略片面,仅供参考
二、nginx中间件如何修复openssl漏洞
但如果是业务层面要修复openssl漏洞,例如nginx中间件 则需要使用openssl-1.1.1n的源码重新编译
编译步骤举例:
下载nginx的最新源码包+openssl-1.1.1n的源码包进行编译
yum install pcre-devel yum install zlib-devel ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module --with-openssl=/opt/openssl-1.1.1n
可以自行尝试进行编译升级