【实战教程】一键升级CentOS 7.9.2009至OpenSSL 1.0.2u:加固你的Linux服务器安全防线!

一、 背景

CentOS Linux 7 环境下 OpenSSL 拒绝服务漏洞(CVE-2022-0778) 漏洞影响范围:

OpenSSL 1.0.2 OpenSSL 1.1.1 OpenSSL 3.0

OpenSSL拒绝服务漏洞(CVE-2022-0778):该漏洞是由于OpenSSL中的BN_mod_sqrt()函数存在解析错误,由于证书解析发生在证书签名验证之前,因此任何解析外部提供的证书场景都可能受到拒绝服务攻击,攻击者可在未授权的情况下通过构造特定证书来触发无限循环,执行拒绝服务攻击,最终使服务器无法提供服务。

升级:

OpenSSL 1.0.2 版用户应升级到 1.0.2zd 版(仅限高级支持客户)、OpenSSL 1.1.1 版用户应升级到 1.1.1n 版、OpenSSL 3.0 版用户应升级到 3.0.2 版。

其中 OpenSSL 1.0.2 版不再支持且不再接收公共安全更新,扩展支持的用户仍然可以获得安全更新。OpenSSL 1.1.0 版不再支持且不再接收任何类型的更新,该版本受漏洞影响,请用户及时切换到其他分支版本。

二、 升级步骤

image-20240419120432568**注意:**在编译和安装新版本 OpenSSL 之前,为了确保安全,请在测试环境中验证这些步骤。

执行以下步骤进行升级修复。

2.1 检查 OpenSSL 版本

# openssl version

image-20240422165901969

2.2 安装 OpenSSL 依赖包

# yum install gcc gcc-c++ openssl-devel libstdc++* libcap* wget pam-devel zlib-devel perl -y

image-20240422175045311

image-20240422175014945

2.3 下载 OpenSSL 的新版本

# wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz

image-20240422175202013

2.4 解压缩下载的文件

# tar -xzf openssl-1.0.2u.tar.gz

image-20240422175300457

2.5 编译并安装 OpenSSL

2.5.1 切换到解压目录
# cd openssl-1.0.2u/

image-20240422180128962

2.5.2 配置 OpenSSL
# ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib

image-20240422175735930

image-20240422180104826

2.5.3 编译并安装 OpenSSL
# make && make install

image-20240422180549575

2.6 更新系统库路径

# echo "/usr/local/openssl/lib" | tee -a /etc/ld.so.conf
# ldconfig

image-20240422180850504

2.7 更新系统二进制和库的链接

# ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
# ln -sf /usr/local/openssl/include/openssl /usr/include/openssl

image-20240422181118959

2.8 确认 OpenSSL 版本

确保已经更新到安全版本。

# openssl version

image-20240422181201055

原文链接:https://mp.weixin.qq.com/s?__biz=MzkxNzI1OTE3Mw==&mid=2247491806&idx=1&sn=439d2b27e0aa36bb24b412d675de0c80&chksm=c141f614f6367f02d09223e89a889131a27f0fdde169688716dc0e53be6ecdf2cecca1d0dc0f&token=351173942&lang=zh_CN#rd

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

图片