有没有什么办法可以获取需要安装的 CVE 或 USN ID?

有没有什么办法可以获取需要安装的 CVE 或 USN ID?

我希望在执行安全更新之前获取适用于该更新的 CVE 或 USN ID。有什么办法吗?

答案1

这可以分两步解决:

  • 查找需要更新的安全相关软件包:update-notifier我正在运行脚本的修改版本apt-check,它采用额外的开关:--security-package-names,并且仅输出与安全相关的包名称

  • 查找针对这些软件包的 CVE:启动板上的项目ubuntu-cve-tracker可用于

以下是分步说明:

获取安全相关软件包列表

我将其作为要点(直到我在启动板中的相关项目中创建合并请求)。目前,它可以按如下方式运行:

curl -s https://gist.githubusercontent.com/ahmadnazir/c2444d6b09fd7bb4963a13bc577d92a3/raw/0231b94a4e46abe0a5959de5f84feda76ad2eb9d/apt-check.py \
  | python /dev/stdin --security-package-names \
  | column -t -s , \
  | sort

这将给出以下格式的输出:包裹名字安装版本, 和候选版本

...
thunderbird                          1:38.6.0+build1-0ubuntu0.14.04.1     1:38.8.0+build1-0ubuntu0.14.04.1
thunderbird-gnome-support            1:38.6.0+build1-0ubuntu0.14.04.1     1:38.8.0+build1-0ubuntu0.14.04.1
thunderbird-locale-en                1:38.6.0+build1-0ubuntu0.14.04.1     1:38.8.0+build1-0ubuntu0.14.04.1
thunderbird-locale-en-us             1:38.6.0+build1-0ubuntu0.14.04.1     1:38.8.0+build1-0ubuntu0.14.04.1
tzdata                               2016b-0ubuntu0.14.04                 2016f-0ubuntu0.14.04
tzdata-java                          2016b-0ubuntu0.14.04                 2016f-0ubuntu0.14.04
vlc-data                             2.1.6-0ubuntu14.04.1                 2.1.6-0ubuntu14.04.2
vlc-nox                              2.1.6-0ubuntu14.04.1                 2.1.6-0ubuntu14.04.2
wget                                 1.15-1ubuntu1.14.04.1                1.15-1ubuntu1.14.04.2
...

查找软件包的 CVE

在 launchpad 上查看 ubuntu 的 cve 跟踪器项目:

bzr branch lp:ubuntu-cve-tracker

假设你想获取该wget软件包的 CVE,你可以运行以下脚本

cd ubuntu-cve-tracker
./scripts/pkg_status wget

这将产生类似以下内容的输出:

                                           precise         trusty      vivid/spo       vivid/uc           wily         xenial        yakkety
CVE-2016-4971 wget:                       released      released*        needed*            DNE       released       released       released [out of sync] SUPPORTED medium

结果中的第一列显示 CVE。

笔记:

确保/etc/apt/sources.list脚本具有相关的源代码才能运行。我修改了一些脚本,使其只适用于 Trusty,这就是我不必这样做的原因。

答案2

没有自动命令来获取针对特定错误需要安装的 CVE 或 USN ID。

您必须阅读相关软件包的更新日志、订阅 USN / CVE 通知,或者检查 Launchpad 上每个软件包的页面,以查看给定版本中给定软件包的更新日志。

(但是,没有只需输入命令即可获取列表。)

相关内容