Ubuntu 20.04 LTS:Linux 核心弱點 (USN-4949-1)

high Nessus Plugin ID 149411

概要

遠端 Ubuntu 主機缺少一個或多個安全性更新。

說明

遠端 Ubuntu 20.04 LTS 主機上安裝的一個套件受到 USN-4949-1 公告中所提及的多個弱點影響。

- 在 5.12-rc1 之前版本的 Linux 核心的 GPU Nouveau 驅動程式功能中,發現使用者呼叫 ioctl DRM_IOCTL_NOUVEAU_CHANNEL_ALLOC 的方式中存在一個 NULL 指標解除參照缺陷。本機使用者可利用此缺陷導致系統當機。(CVE-2020-25639)

- 在 Xen 所使用的 Linux 核心 3.11 至 5.10.16 版本中發現一個問題。為了傳送要求至 PV 後端,驅動程式會對應前端提供的授權參照。在此處理程序中,可能會遇到錯誤。有一種情況,先前遇到的錯誤可能會被後續處理捨棄,造成呼叫者假設成功對應,進而導致後續作業嘗試存取未對應的空間。在其他情況下,內部狀態會更新不足,無法從錯誤中安全復原。這會影響 drivers/block/xen-blkback/blkback.c。(CVE-2021-26930)

- 在 Xen 所使用的 Linux 核心 2.6.39 至 5.10.16 版本中發現一個問題。區塊、網路和 SCSI 後端將某些錯誤視為純錯誤,刻意造成核心損毀。針對可能至少受到來賓影響的錯誤 (例如記憶體不足情形),假設純錯誤並不正確。不過,只有在 Linux 以 PV 模式執行時,才會發生可能造成此類當機的記憶體配置問題。這會影響 drivers/block/xen-blkback/blkback.c 和 drivers/xen/xen-scsiback.c。
(CVE-2021-26931)

- 在 Linux 核心 5.11.6 及之前的版本中發現一個問題。drivers/misc/fastrpc.c 中的 fastrpc_internal_invoke 並未阻止使用者應用程式傳送核心 RPC 訊息,即 CID-20c40794eb85。此問題與 CVE-2019-2308 相關。(CVE-2021-28375)

- 在 Linux 核心 5.11.10 之前的所有版本中發現一個問題。Freescale Gianfar Ethernet 驅動程式中的 drivers/net/ethernet/freescale/gianfar.c 允許攻擊者造成系統當機,這是因為在使用 jumbo 封包且啟用 NAPI 時,在 rx 佇列滿溢的情況下計算的片段大小為負值,亦即 CID -d8861bab48b6。(CVE-2021-29264)

- 在 Linux 核心 5.11.7 之前版本中發現一個問題。drivers/usb/usbip/stub_dev.c 中的 usbip_sockfd_store 允許攻擊者造成拒絕服務 (GPF),這是因為在更新本機和共用狀態期間,stub-up 序列有爭用情形,亦即 CID-9380afd6df70。
(CVE-2021-29265)

- 在 Linux 核心 5.11.9 之前版本中發現一個問題。drivers/vhost/vdpa.c 中有一個釋放後使用問題,這是因為 v-> config_ctx 在重新開啟字元裝置時有一個無效值所致,即 CID-f6bbf0010ba0。
(CVE-2021-29266)

- 在 Linux 核心 5.11.11 之前版本中發現一個問題。net/tipc/node.c 中的 tipc_nl_retrieve_key 未正確驗證特定的資料大小,即 CID-0217ed2848e8。(CVE-2021-29646)

- 在 5.11.11 版之前的 Linux 核心中發現一個問題。netfilter 子系統允許攻擊者造成拒絕服務 (錯誤),這是因為 net/netfilter/x_tables.c 和 include/linux/netfilter/x_tables.h 在指派新表格值時缺少完整的記憶體屏障所致,即 CID-175e476b8cdf。
(CVE-2021-29650)

- Linux 核心中的 eBPF RINGBUF bpf_ringbuf_reserve() 函式未檢查配置的大小是否小於 ringbuf 大小,進而允許攻擊者在核心內執行超出邊界寫入,進而執行任意程式碼。此問題已透過 commit 4b81ccebaeee 修正 (bpf、ringbuf:拒絕保留大於 ringbuf 的緩衝區) (v5.13-rc4),並反向移植至 v5.12.4、v5.11.21 和 v5.10.37 中的穩定核心。這是透過 457f44363a88 引入 (bpf: 建置 BPF 環形緩衝區及其驗證程式支援) (v5.8-rc1)。(CVE-2021-3489)

- Linux 核心中位元運算 (AND、OR 和 XOR) 的 eBPF ALU32 邊界追蹤未正確更新 32 位元邊界,這會在 Linux 核心中變成越界讀取和寫入,因此造成任意程式碼執行。此問題已透過 commit 049c4e13714e 修正 (bpf:修正位元運算上的 alu32 const subreg 邊界追蹤) (v5.13-rc4),並反向移植至 v5.12.4、v5.11.21 和 v5.10.37 中的穩定核心。AND/OR 問題是由 commit 3f50f132d840 引入 (bpf:驗證程式,執行明確的 ALU32 邊界追蹤) (5.7-rc1),且 XOR 變體是由 2921c90d4718 引入 (bpf:透過 xor 修正驗證程式失敗) (5.10-rc1)。 (CVE-2021-3490)

- Linux 核心中的 io_uring 子系統允許在 PROVIDE_BUFFERS 作業中繞過 MAX_RW_COUNT 限制,進而導致讀取 /proc/<PID>/mem 時在 mem_rw 中使用負值。
這可用來建立導致核心中任意程式碼執行的堆積溢位。已透過 commit d1f82808877b 解決 (io_uring:在提供緩衝區上截斷大於 MAX_RW_COUNT 的長度) (v5.13-rc1),並反向移植至 v5.12.4、v5.11.21 和 v5.10.37 中的穩定核心。這是在 ddf0322db79c 中引入 (io_uring:新增 IORING_OP_PROVIDE_BUFFERS) (v5.7-rc1)。(CVE-2021-3491)

請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。

解決方案

更新受影響的 kernel 套件。

另請參閱

https://ubuntu.com/security/notices/USN-4949-1

Plugin 詳細資訊

嚴重性: High

ID: 149411

檔案名稱: ubuntu_USN-4949-1.nasl

版本: 1.10

類型: local

代理程式: unix

已發布: 2021/5/12

已更新: 2024/8/27

支援的感應器: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Nessus

風險資訊

VPR

風險因素: Critical

分數: 9.6

CVSS v2

風險因素: High

基本分數: 7.2

時間分數: 6.3

媒介: CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C

CVSS 評分資料來源: CVE-2021-3491

CVSS v3

風險因素: High

基本分數: 8.8

時間分數: 8.4

媒介: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

時間媒介: CVSS:3.0/E:H/RL:O/RC:C

弱點資訊

CPE: p-cpe:/a:canonical:ubuntu_linux:linux-image-5.8.0-53-generic-lpae, cpe:/o:canonical:ubuntu_linux:20.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-image-5.8.0-53-lowlatency, p-cpe:/a:canonical:ubuntu_linux:linux-image-5.8.0-53-generic, p-cpe:/a:canonical:ubuntu_linux:linux-image-5.8.0-53-generic-64k

必要的 KB 項目: Host/cpu, Host/Debian/dpkg-l, Host/Ubuntu, Host/Ubuntu/release

可被惡意程式利用: true

可輕鬆利用: Exploits are available

修補程式發佈日期: 2021/5/11

弱點發布日期: 2021/2/16

可惡意利用

Core Impact

Metasploit (Linux eBPF ALU32 32-bit Invalid Bounds Tracking LPE)

參考資訊

CVE: CVE-2020-25639, CVE-2021-26930, CVE-2021-26931, CVE-2021-28375, CVE-2021-29264, CVE-2021-29265, CVE-2021-29266, CVE-2021-29646, CVE-2021-29650, CVE-2021-3489, CVE-2021-3490, CVE-2021-3491

USN: 4949-1