我怎么知道Ubuntu 18.04 Bionic的最新OpenSSL真的是1.1.1n?

Pet*_*ahn 5 ubuntu openssl

根据 Ubuntu 的CVE-2022-0778,版本应该解决 CVE。然而,当我查看 OpenSSL 版本时,我无法真正看出它是 1.1.1n。我确实看到它是在 3 月 9 日之前构建的:

  • OpenSSL 使源代码可供公众使用
  • Ubuntu 发行版管理员将 OpenSSL 1.1.1n 导入到他们的存储库中(这可能只是一个面向公众的存储库)

那么,我怎么知道这真的是 1.1.1n 呢?

升级后的Ubuntu 18.04系统

OpenSSL 1.1.1  11 Sep 2018
built on: Wed Mar  9 12:13:40 2022 UTC
platform: debian-amd64
options:  bn(64,64) rc4(16x,int) des(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -Wa,
--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-vxXVMf/openssl-1.1.1=. 
-fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_USE_NODELETE 
-DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 
-DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM 
-DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM 
-DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM 
-DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM 
-DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2
OPENSSLDIR: "/usr/lib/ssl"
ENGINESDIR: "/usr/lib/x86_64-linux-gnu/engines-1.1"
Seeding source: os-specific
Run Code Online (Sandbox Code Playgroud)

发行版维护者

Ubuntu 仓库:https://git.launchpad.net/ubuntu/+source/openssl

标签:

* 3b83ed56dea2b735e31731fd042b52ff869f9a97 - 
(tag: import/1.1.1n-1, origin/debian/sid) 1.1.1n-1 
(patches unapplied) (c: Wed, 16 Mar 2022 04:33:58 +0000) 
(a: Tue, 15 Mar 2022 19:46:18 +0100) <Sebastian Andrzej Siewior>%

applied/1.1.1n-1
*   d4d5eeef3576b16013c48abc435c5da889cedf1b - (tag: applied/1.1.1n-1, 
origin/applied/debian/sid) 1.1.1n-1 (patches applied) 
(c: Wed, 16 Mar 2022 04:33:58 +0000) 
(a: Tue, 15 Mar 2022 19:46:18 +0100) <Sebastian Andrzej Si
Run Code Online (Sandbox Code Playgroud)

Joh*_*ald 7

一旦安全更新处于已发布状态,最简单的事情就是应用更新, apt update && apt upgrade

考虑实施某种补丁管理报告,以确认所有主机均已更新且合规。这些范围从简单的脚本到您可能购买的产品。

那么,我怎么知道这真的是 1.1.1n 呢?

Ubuntu 对 CVE-2022-0778 的修复不是 1.1.1n。与其他稳定发行版一样,他们习惯于仅向后移植其所选版本的特定修复。再次阅读该表,请注意,bionicopenssl 1.1.1-1ubuntu2.1~18.04.15 末尾附加的看起来很有趣的版本字符串很重要,它指示哪个版本。

于 3 月 9 日在 openssl 向公众开放源代码之前构建

构建和测试软件需要时间。与其他发行版一样,Ubuntu 也在一般公告之前获得通知的列表中。减少用户遇到缺陷的时间。

构建日期是一个很好的健全性检查,可以确保您具有所需的补丁级别,但要意识到可以在上游公告之前构建,而不需要时间机器。

Ubuntu 发行版管理员将 openssl 1.1.1n 导入到他们的存储库中(这可能只是一个面向公众的存储库)

请注意对版本控制中的内容实际用于修复您的版本做出结论。根据分支名称,这可能与 Ubuntu 相比 Debian sid 或上游版本有关。不是仿生的。

请参阅安全公告。


use*_*517 6

那么,我怎么知道这真的是 1.1.1n 呢?

它不会是 1.1.1n,因为正如 John Mahowald 所说,Ubuntu 会将修复程序向后移植到其支持的 18.04 版本中,从链接表中可以看出,该版本是 1.1.1-1ubuntu2.1~18.04.15。

您可以使用以下命令了解系统上安装了哪些 openssl 软件包

apt list --installed | grep openssl
Run Code Online (Sandbox Code Playgroud)

您可以检查更改日志以查看已应用/向后移植哪些更新

apt-get changelog openssl 
Run Code Online (Sandbox Code Playgroud)

甚至查看 Ubuntu变更日志服务器

更改日志确认 openssl 1.1.1-1ubuntu2.1~18.04.15 已应用 CVE-2022-0778 补丁。