鉴于 openssl 1.1.1x 当前的安全问题,我们必须从源代码升级我们的 (Ubuntu) 系统,因为 apt 仅显示最新的 openssl (1.1.1f) 是最新的
运行 sudo apt update/upgrade 后,openssl 仍然是版本 1.1.1f,该版本容易受到攻击 - 至少在 Ubuntu 20.04 上
答案1
作为 root:(或使用 sudo)
$ sudo su
# cd /usr/src
# wget https://www.openssl.org/source/openssl-3.0.2.tar.gz
# tar zxvf openssl-3.0.2.tar.gz
# cd openssl-3.0.2
# ./Configure
# make
# make install
如果您安装了旧版本的 OpenSSL,您可能需要执行以下操作:
# cd /usr/lib/ssl
# unlink openssl.cnf
# ln -s /usr/local/ssl/openssl.cnf openssl.cnf
# ldconfig
# openssl version
如果您看到 OpenSSL 3.0.2 - 则成功
否则,如果您收到 openssl 无法找到或其他错误
如果您有 x86_64 架构
# ldconfig /usr/local/lib64
答案2
虽然Ubuntu 中 OpenSSL 的版本与旧版本相对应,它们经过修补以包含已知安全问题的修复。
例如,在 20.04(最新的 LTS)中:
openssl (1.1.1f-1ubuntu2.12) focal-security; urgency=medium
* SECURITY UPDATE: Infinite loop in BN_mod_sqrt()
- debian/patches/CVE-2022-0778-1.patch: fix infinite loop in
crypto/bn/bn_sqrt.c.
- debian/patches/CVE-2022-0778-2.patch: add documentation of
BN_mod_sqrt() in doc/man3/BN_add.pod.
- debian/patches/CVE-2022-0778-3.patch: add a negative testcase for
BN_mod_sqrt in test/bntest.c, test/recipes/10-test_bn_data/bnmod.txt.
- CVE-2022-0778
在 21.10(最新版本)中:
openssl (1.1.1l-1ubuntu1.2) impish-security; urgency=medium
* SECURITY UPDATE: Infinite loop in BN_mod_sqrt()
- debian/patches/CVE-2022-0778-1.patch: fix infinite loop in
crypto/bn/bn_sqrt.c.
- debian/patches/CVE-2022-0778-2.patch: add documentation of
BN_mod_sqrt() in doc/man3/BN_add.pod.
- debian/patches/CVE-2022-0778-3.patch: add a negative testcase for
BN_mod_sqrt in test/bntest.c, test/recipes/10-test_bn_data/bnmod.txt.
- CVE-2022-0778
也可以看看相应的安全通知。
在受支持的 Ubuntu(和其他发行版)版本上,您不需要自己构建软件来解决安全问题,只要您保持安装更新即可。