让我们来CVE-2021-3448举个例子。
很容易看到 deb 包何时获得了反向移植修复,以及服务器上安装了哪些包。
但同样的包装很快就有了:
/snap/lxd/21468/bin/dnsmasq --version
Dnsmasq version 2.80 .....
snap list
lxd 4.18 21468 latest/stable/… canonical✓ -
您是否知道是否有办法查看该 CVE 是否在 Canonical lxd
snap 中反向移植到 2.80?
也许我错过了一些获取此信息的非常简单的方法。
答案1
有了 deb 更新信息,您就成功了一半。
由于 LXD 是以 snap 形式分发的,因此你应该始终运行最新版本为您的频道自动。在此示例中,LXD 4.0.7 位于稳定的频道,并安装在20.04服务器上:
$ snap list lxd Name Version Rev Tracking Publisher Notes lxd 4.0.7 21029 4.0/stable/… canonical✓ -
接下来,让我们转到https://launchpad.net/lxd/+snaps并找到稳定的版本...
...啊哈。就是这个:https://launchpad.net/~ubuntu-lxc/+snap/lxd-4.0-candidate。您可以看到构建日期 - 在 CVE(好)之后 - 以及每个架构的构建日志的链接。
让我们仔细看看这个构建日志。这个特定的 snap 包是在后台从 debs 构建的!让我们把注意力集中在构建所用的 deb 包上。
buildlog 的 URL 是https://launchpadlibrarian.net/549848217/buildlog_snap_ubuntu_bionic_arm64_lxd-4.0-candidate_BUILDING.txt.gz。其中的“ ”一词
_bionic_
向我们表明 LXD snap 是基于 18.04 (Bionic) 软件包构建的;但它在 20.04 系统上运行并不重要。通过快速 grep 我们可以获得实际使用的 dnsmasq deb 包:
Get:1 dnsmasq-base_2.79-1ubuntu0.4_amd64.deb [279 kB]
(等一下....是
dnsmasq-base
软件包而不是dnsmasq
软件包。没有dnsmasq
软件包表明 CVE 可能适用或可能不适用。但是,让我们忽略这一点并继续进行最后一步)最后,让我们看看Ubuntu 安全团队 CVE 跟踪器以确保软件包已正确修复。如果 LXD snap 使用
dnsmasq
而不是dnsmasq-base
,你会看到构建使用了正确修补的版本(突出显示)。- 请记住,我们正在寻找 18.04(Bionic)包,因为它是用于构建 Snap 的。