Ubuntu 20.04 LTS / 22.04 LTS:GRUB2 弱點 (USN-6355-1)

high Nessus Plugin ID 181178

概要

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

說明

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

- shim 嘗試載入並執行特製的 EFI 可執行檔時,handle_image() 中可能出現溢位;
handle_image() 函式會考慮每個區段中待載入的 SizeOfRawData 欄位。攻擊者可利用此弱點,對記憶體執行超出邊界寫入。在這種情況下,還可以觸發任意程式碼執行。(CVE-2022-28737)

- 特製的 16 位元 PNG 灰階影像可能會導致堆積中發生超出邊界寫入,攻擊者可利用此弱點造成堆積資料損毀,或最終執行任意程式碼並規避安全開機保護。利用此問題的難度較大,因爲攻擊者需要對堆積配置執行某些分類以取得顯著結果,而且寫入記憶體的值要連續重複 3 次,因而難以產生有效的承載。此缺陷會影響 grub-2.12 之前的 grub2 版本。(CVE-2021-3695)

- 在 PNG 讀取器中處理 Huffman 表格期間,可能會發生堆積超出邊界寫入,這可能導致堆積空間中的資料損毀。對於機密性、完整性和可用性的影響可被視為低危,因為攻擊者若要控制損毀的 Huffman 項目的編碼和位置,以達到任意程式碼執行和/或安全開機規避等效果,操作會非常複雜。此缺陷會影響 grub-2.12 之前的 grub2 版本。(CVE-2021-3696)

- 特製的 JPEG 影像可能導致 JPEG 讀取器反向溢出其資料指標,進而允許在堆積中寫入使用者控制的資料。若要成功執行攻擊,攻擊者需要對堆積配置執行一些分類,並使用惡意格式和承載建構影像。此弱點可導致資料損毀,並最終導致程式碼執行或安全開機規避。此缺陷會影響 grub-2.12 之前的 grub2 版本。(CVE-2021-3697)

- 在 grub2 中發現一個缺陷,其組態檔案 (稱為 grub.cfg) 是以錯誤的權限集建立,進而允許無權限的使用者讀取其內容。這將導致嚴重性較低的機密性問題,因為這些使用者最終可以讀取 grub.cfg 中存在的任何加密密碼。
這個缺陷會影響 grub2 2.06 和之前版本。這個問題已在 grub 上游修正,但目前發布的任何版本都不包含此修正程式。(CVE-2021-3981)

- grub_net_recv_ip4_packets 中的整數反向溢位問題;惡意的特製 IP 封包可導致 grub_net_recv_ip4_packets() 函式中 rsm->total_len 值出現整數反向溢位。在某些情況下,total_len 值最後可能迴繞為較小的整數,用於記憶體配置中。如果以這種方式攻擊成功,後續作業可能會在超出緩衝區結尾處寫入。(CVE-2022-28733)

- 處理分割的 HTTP 標頭時發生超出邊界寫入;處理分割 HTTP 標頭時,GRUB2 HTTP 程式碼會意外地將其內部資料緩衝區點移動一個位置。這可導致在剖析 HTTP 要求時進一步超出邊界寫入,在緩衝區之外寫入一個 NULL 位元組。可以想像,由攻擊者控制的一組封包可導致 GRUB2 的內部記憶體中繼資料損毀。
(CVE-2022-28734)

- GRUB2 的 shim_lock 驗證器允許在 shim 驅動的安全開機系統上載入非核心檔案。
允許載入此類檔案可能會導致在 GRUB2 中載入未經驗證的程式碼和模組,而中斷安全開機信任鏈結。(CVE-2022-28735)

- grub_cmd_chainloader() 函式中有一個釋放後使用弱點; chainloader 命令用於啟動不支援多重開機且沒有來自 GRUB2 直接支援的作業系統。
執行 chainloader 超過一次後,會觸發釋放後使用弱點。若攻擊者可控制 GRUB2 的記憶體配置模式,敏感資料就會遭到洩漏,並可能執行任意程式碼。(CVE-2022-28736)

- 轉譯特定 unicode 序列時,grub2 的字型程式碼未正確驗證已知字符的寬度和高度是否限制在點陣圖大小以內。因此,攻擊者可建構輸入,在 grub2 堆積中造成超出邊界寫入,進而導致記憶體損毀和可用性問題。雖然複雜,但無法捨棄任意程式碼執行。(CVE-2022-3775)

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

解決方案

更新受影響的套件。

另請參閱

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

Plugin 詳細資訊

嚴重性: High

ID: 181178

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

版本: 1.2

類型: local

代理程式: unix

已發布: 2023/9/8

已更新: 2024/8/27

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

風險資訊

VPR

風險因素: Medium

分數: 6.7

CVSS v2

風險因素: Medium

基本分數: 6.9

時間分數: 5.1

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

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

CVSS v3

風險因素: High

基本分數: 8.1

時間分數: 7.1

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

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

CVSS 評分資料來源: CVE-2022-28733

弱點資訊

CPE: p-cpe:/a:canonical:ubuntu_linux:grub-efi-arm64-bin, cpe:/o:canonical:ubuntu_linux:20.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:grub-efi-amd64-signed, p-cpe:/a:canonical:ubuntu_linux:grub-efi-amd64, p-cpe:/a:canonical:ubuntu_linux:grub-efi-arm64-signed, p-cpe:/a:canonical:ubuntu_linux:shim-signed, p-cpe:/a:canonical:ubuntu_linux:grub-efi-amd64-bin, p-cpe:/a:canonical:ubuntu_linux:shim, cpe:/o:canonical:ubuntu_linux:22.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:grub-efi-arm64

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

可輕鬆利用: No known exploits are available

修補程式發佈日期: 2023/9/8

弱點發布日期: 2020/7/30

參考資訊

CVE: CVE-2021-3695, CVE-2021-3696, CVE-2021-3697, CVE-2021-3981, CVE-2022-28733, CVE-2022-28734, CVE-2022-28735, CVE-2022-28736, CVE-2022-28737, CVE-2022-3775

USN: 6355-1