漏洞详情

OpenSSL官方发布安全公告,披露CVE-2020-1971 OpenSSL GENERAL_NAME_cmp 拒绝服务漏洞。当两个GENERAL_NAME都包含同一个EDIPARTYNAME时,由于GENERAL_NAME_cmp函数未能正确处理,从而导致空指针引用,并可能导致拒绝服务。

影响范围

OpenSSL 1.1.1 ~ 1.1.1h
OpenSSL 1.0.2 ~ 1.0.2w

修复

注意:安装升级前,请做好数据备份、快照和测试工作,防止发生意外

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
修复方案

1.直接到openssl官网下载以下安全版本后自编译安装:
OpenSSL 1.1.1i、OpenSSL 1.0.2x
检测方法:执行openssl version查看版本信息
2.centos用户需要等待官方发布可用修复版本后进行升级;
3.ubuntu用户,官方已经发布部分可用修复版本,目前UCloud云官方已经更新了的软件源,您可以进行升级修复:

操作系统 修复版本
Ubuntu 21.04 (Hirsute Hippo) Pending (1.1.1f-1ubuntu5)
Ubuntu 20.10 (Groovy Gorilla) Released (1.1.1f-1ubuntu4.1)
Ubuntu 20.04 LTS (Focal Fossa) Released (1.1.1f-1ubuntu2.1)
Ubuntu 18.04 LTS (Bionic Beaver) Released (1.1.1-1ubuntu2.1~18.04.7)
Ubuntu 16.04 LTS (Xenial Xerus) Released (1.0.2g-1ubuntu4.18)
Ubuntu 14.04 ESM (Trusty Tahr) 未发布
Ubuntu 12.04 ESM (Precise Pangolin) 未发布

4.debian用户,官方已经发布部分可用修复版本,目前UCloud云官方已经更新了的软件源,您可以进行升级修复:

操作系统 版本 状态
openssl (PTS) stretch (security), stretch 1.1.0l-1~deb9u1 vulnerable
buster (security) 1.1.1d-0+deb10u4 fixed
bullseye 1.1.1h-1 vulnerable
sid 1.1.1i-1 fixed
openssl1.0 (PTS) stretch 1.0.2u-1~deb9u1 vulnerable
stretch (security) 1.0.2u-1~deb9u2 vulnerable
参考链接
https://www.openssl.org/news/vulnerabilities-1.1.1.html#CVE-2020-1971
https://www.openssl.org/news/vulnerabilities-1.0.2.html#CVE-2020-1971
https://access.redhat.com/security/cve/cve-2020-1971
https://ubuntu.com/security/CVE-2020-1971
https://security-tracker.debian.org/tracker/CVE-2020-1971

一、升级需要几个组件

1
2
yum install  -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel  pam-devel
yum install -y pam* zlib*

二、下载openssl的包

1
2
https://ftp.openssl.org/source/
openssl-1.1.1i.tar.gz

三、开始安装openssl

3.1、备份下面文件或目录

1
2
cp -R /usr/bin/openssl /usr/bin/openssl_bak
cp -R /usr/include/openssl /usr/include/openssl_bak

3.2、编译安装新版本的openssl

1
2
3
4
5
6
7
tar -zxvf openssl-1.1.1i.tar.gz
cd openssl-1.1.1i
./config shared && make && make install
ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
echo "/usr/local/lib64" >> /etc/ld.so.conf
/sbin/ldconfig

3.3、验证

1
2
openssl version
OpenSSL 1.1.1i 8 Dec 2020