GLSA-202208-27:QEMU:多個弱點

high Nessus Plugin ID 164115

語系:

描述

遠端主機受到 GLSA-202208-27 中所述的弱點影響 (QEMU:多個弱點)

- QEMU 4.2.0 的 hw/net/e1000e_core.c 中存在釋放後使用問題,這是因為來賓 OS 使用者可在資料位址設為 e1000e 的 MMIO 位址的情況下觸發 e1000e 封包。(CVE-2020-15859)

- 在 07-20-2020 之前的 QEMU 中,XGMAC 乙太網路控制器的 hw/net/xgmac.c 存在緩衝區溢位問題。此問題會在封包傳輸期間發生,並影響 highbank 和 midway 模擬的機器。來賓使用者或處理程序可利用此缺陷損毀主機上的 QEMU 處理程序,進而導致拒絕服務,或可能以處理程序的權限執行任意程式碼。此問題已在 5519724a13664b43e225ca05351c60b4468e4555 提交內容中修正。
(CVE-2020-15863)

- 在 QEMU 5.0.0 及之前所有版本中,網路封包處理過程中可能發生宣告失敗。此問題會影響 e1000e 和 vmxnet3 網路裝置。惡意的來賓使用者/處理程序可利用此瑕疵中止主機上的 QEMU 處理程序,進而導致 hw/net/net_tx_pkt.c 中的 net_tx_pkt_add_raw_fragment 發生拒絕服務情形。(CVE-2020-16092)

- 在 6.0.0 之前的版本中,QEMU 的 SCSI 模擬支援中發現 NULL 指標解除參照缺陷。
擁有權限的來賓使用者可能利用此缺陷,使主機上的 QEMU 處理程序損毀,進而導致拒絕服務。此弱點對系統可用性威脅最大。(CVE-2020-35504)

- 在 6.0.0 之前的版本中,QEMU 的 am53c974 SCSI 主機匯流排介面卡模擬中發現 NULL 指標解除參照缺陷。此問題會在處理「資訊傳輸」命令時發生。擁有權限的來賓使用者可能利用此缺陷,使主機上的 QEMU 處理程序損毀,進而導致拒絕服務。
此弱點對系統可用性威脅最大。(CVE-2020-35505)

- 在 QEMU 6.0.0 之前版本中,處理「Information Transfer」命令 (CMD_TI) 期間,於 am53c974 SCSI 主機匯流排介面卡模擬中發現釋放後使用弱點。有權限的來賓使用者可利用此缺陷損毀主機上的 QEMU 處理程序,進而導致拒絕服務情況,或者可能以 QEMU 處理程序的權限執行程式碼。(CVE-2020-35506)

- 在 qemu 中發現一個缺陷。在 virtio-fs 共用檔案系統程序中發現一個主機權限提升問題,有權限的來賓使用者可在共用目錄中建立裝置特殊檔案,並使用該檔案對主機裝置執行讀取/寫入存取。(CVE-2020-35517)

- 在 5.2.0 以上版本的 QEMU 的 vmxnet3 NIC 模擬器中發現一個整數溢位問題。如果來賓要為 rx/tx 佇列大小或其他 NIC 參數提供無效值,則可能會發生此問題。有權限的來賓使用者可利用此缺陷損毀主機上的 QEMU 處理程序,進而導致出現 DoS 狀況。
(CVE-2021-20203)

- 在 QEMU 的 e1000 NIC 模擬器中發現無限迴圈瑕疵。如果使用無效的值初始化各種描述項欄位,則在處理 process_tx_desc 中的傳輸 (tx) 描述元時會發生此問題。來賓可利用此缺陷消耗主機上的 CPU 週期,進而導致拒絕服務狀況。此弱點對系統可用性威脅最大。(CVE-2021-20257)

- 在 QEMU 的 virtio-fs 共用檔案系統程序 (virtiofsd) 中發現一個瑕疵。新的「xattrmap」選項可造成來賓中的「security.capability」xattr 未在檔案寫入時中斷,進而可能導致來賓中出現修改過的有權限的可執行檔。在極少數情況下,惡意使用者可利用此瑕疵提升其在來賓中的權限。(CVE-2021-20263)

- CVE-2020-17380/CVE-2020-25085 的修補程式無效,導致 QEMU 容易受到先前在 SDHCI 控制器模擬程式碼中發現的超出邊界讀取/寫入存取問題影響。擁有權限的惡意來賓使用者可利用此缺陷,損毀主機上的 QEMU 處理程序,進而導致拒絕服務,或可能得以執行任意程式碼。QEMU 5.2.0 版及其之前版本都會受到此問題影響。(CVE-2021-3409)

- 在 5.2.0 版及其之前所有 QEMU 版本的多種 NIC 模擬器中,發現可能會透過無限迴圈問題發生堆疊溢位。此問題發生在 NIC 的回送模式中,其中會繞過重新進入 DMA 檢查。來賓使用者/處理程序可利用此缺陷消耗 CPU 週期或損毀主機上的 QEMU 處理程序,進而導致出現 DoS 狀況。(CVE-2021-3416)

- 在 QEMU 的 USB 重新導向裝置 (usb-redir) 中發現一個缺陷。小型 USB 封包會合併為一個大型傳輸要求,以降低額外負擔並改善效能。大量傳輸的總大小用於在不經過適當驗證的情況下,在堆疊上動態配置可變長度陣列 (VLA)。由於總大小不受限制,惡意來賓可能會利用此缺陷影響陣列長度,並造成 QEMU 處理程序對堆疊執行過度配置,進而導致拒絕服務。(CVE-2021-3527)

- 在 6.0 版及其之前所有 QEMU 版本中的 virtio vhost-user GPU 裝置 (vhost-user-gpu) 發現數個記憶體洩漏問題。這些問題存在於 contrib/vhost-user-gpu/vhost-user-gpu.c 和 contrib/vhost-user-gpu/virgl.c 中,這是在有效存留期後不當釋放記憶體 (即釋放) 所致。(CVE-2021-3544)

- 在 6.0 版及其之前所有 QEMU 版本中的 virtio vhost-user GPU 裝置 (vhost-user-gpu) 發現資訊洩漏弱點問題。此缺陷存在於 contrib/vhost-user-gpu/virgl.c 的 virgl_cmd_get_capset_info() 中,可能會因為讀取未初始化的記憶體而發生。惡意來賓可能會惡意利用此問題,從主機洩漏記憶體。(CVE-2021-3545)

- 在 6.0 版及其之前所有 QEMU 版本中的 virtio vhost-user GPU 裝置 (vhost-user-gpu) 發現超出邊界寫入弱點問題。處理來自來賓的「VIRTIO_ GPU_CMD_GET_CAPSET」命令時會發生此缺陷。有權限的來賓使用者可利用此缺陷損毀主機上的 QEMU 處理程序,進而導致拒絕服務情況,或者可能以 QEMU 處理程序的權限執行程式碼。(CVE-2021-3546)

- 在 QEMU 中針對 VMWare 的半虛擬化 RDMA 裝置的實作中發現一個瑕疵。因為記憶體重新對應 (mremap) 不當,程式在處理 PVRDMA_CMD_CREATE_MR 命令時會發生此問題。此缺陷允許惡意來賓損毀主機上的 QEMU 處理程序。此弱點對系統可用性威脅最大。(CVE-2021-3582)

- 在 QEMU 6.1.0 之前版本中,在 VMWare 的半虛擬化 RDMA 裝置的實作中發現整數溢位問題。因為輸入驗證不當,程式在處理來自來賓的 PVRDMA_REG_DSRHIGH 寫入時會發生此問題。此缺陷允許有權限的來賓使用者造成 QEMU 配置大量記憶體,進而導致拒絕服務。此弱點對系統可用性威脅最大。(CVE-2021-3607)

- 在 QEMU 6.1.0 之前版本中,在 VMWare 的半虛擬化 RDMA 裝置的實作中發現整數溢位問題。因爲存取未初始化的指標,程式在處理來賓的 PVRDMA_REG_DSRHIGH 寫入時會發生此問題,且可能導致 QEMU 當機或造成不明行為。此弱點對系統可用性威脅最大。(CVE-2021-3608)

- 在 QEMU 的 Intel HD Audio 裝置 (intel-hda) 中發現堆疊溢位弱點。惡意客體可能會利用此缺陷造成主機上的 QEMU 處理程序損毀,進而導致拒絕服務。此弱點對系統可用性威脅最大。此缺陷會影響 QEMU 7.0.0 之前版本。(CVE-2021-3611)

- 在 QEMU 6.1.0-rc2 更早版本的 USB 重新導向器裝置模擬中發現一個缺陷。由於封包佇列已滿,在從 SPICE 用戶端進行大量傳輸期間中斷封包時,導致發生此問題。惡意 SPICE 用戶端可利用此缺陷,透過偽造的堆積區塊中繼資料進行 QEMU 呼叫,進而導致 QEMU 損毀,或可能以 QEMU 處理程序的權限在主機上執行程式碼。(CVE-2021-3682)

- 在 QEMU 6.2.0-rc0 更早版本的 UAS (USB Attached SCSI) 裝置模擬中發現一個超出邊界寫入缺陷。裝置使用未檢查的來賓提供的資料流編號,而這可導致對 UASDevice->data3 和 UASDevice->status3 欄位進行超出邊界存取。惡意來賓使用者可利用此缺陷,造成 QEMU 損毀,或可能以 QEMU 處理程序的權限在主機上執行程式碼。(CVE-2021-3713)

- 在 QEMU 的 virtio-net 裝置中發現一個釋放後使用弱點。當描述符號的位址屬於非直接存取區域時,可能會發生此問題,這是因為在取消對應 virtqueue elem 後設定了 num_buffers 所致。惡意來賓使用者可利用此缺陷造成 QEMU 損毀,進而造成拒絕服務或可能以 QEMU 處理程序的權限在主機上執行程式碼。(CVE-2021-3748)

- 在 QEMU 的 USB EHCI 控制器模擬中發現 DMA 重新進入問題。EHCI 在傳輸 USB 封包時未驗證緩衝區指標是否與其 MMIO 區域重疊。當裝置仍在傳輸封包時,攻擊者可能會將特製的內容寫入控制器的暫存器並觸發不需要的動作 (例如重設),這最終會導致釋放後使用問題。惡意來賓使用者可利用此缺陷造成主機上的 QEMU 處理程序損毀,進而導致拒絕服務或可能在 QEMU 處理程序的環境中在主機上執行程式碼。此缺陷會影響 QEMU 7.0.0 之前版本。(CVE-2021-3750)

- 在 QEMU 的 SCSI 裝置模擬中發現一個差一錯誤。如果「page」引數設為 MODE_PAGE_ALLS (0x3f),則在 mode_sense_page() 中處理 MODE SELECT 命令時就有可能出現此錯誤。惡意來賓可能會利用此缺陷造成 QEMU 損毀,進而導致拒絕服務狀況。
(CVE-2021-3930)

- 在 NVME 元件的 QEMU 中發現堆疊緩衝區溢位。此缺陷存在於 nvme_changed_nslist() 中,其中控制特定輸入的惡意來賓可讀取超出邊界記憶體。惡意使用者可利用此缺陷導致敏感資訊洩漏。(CVE-2021-3947)

- 在 QEMU 6.2.0 之前版本的區塊鏡像層中發現一個 NULL 指標解除參照問題。
`self` 指標在 mirror_wait_on_conflicts() 中遭到解除參照,但未經確認其不是 NULL 指標。當寫入的資料達到鏡像節點的閾值時,來賓中的惡意無權限使用者可利用此缺陷使主機上的 QEMU 處理程序損毀。(CVE-2021-4145)

- 在 QEMU 的 QXL 顯示裝置模擬中發現一個缺陷。cursor_alloc() 函式中的整數溢位可導致配置小型游標物件,隨後造成堆積型緩衝區溢位。有權限的惡意來賓使用者可利用此缺陷造成主機上的 QEMU 處理程序損毀,或可能在 QEMU 處理程序上執行程式碼。(CVE-2021-4206)

- 在 QEMU 的 QXL 顯示裝置模擬中發現一個缺陷。雙重擷取來賓控制的值 `cursor->header.width` 和 `cursor->header.height` 可導致配置小型游標物件,隨後造成堆積型緩衝區溢位。有權限的惡意來賓使用者可利用此缺陷造成主機上的 QEMU 處理程序損毀,或可能在 QEMU 處理程序上執行程式碼。(CVE-2021-4207)

- 在 QEMU 的 virtio-net 裝置中發現一個缺陷。此缺陷因修正 CVE-2021-3748 而意外引入,原因是在發生錯誤時忘記取消對應已快取的 virtqueue 元素,進而導致記憶體洩漏和其他未預期的結果。受到影響的 QEMU 版本是:6.2.0。(CVE-2022-26353)

- 在 QEMU 的 vhost-vsock 裝置中發現一個缺陷。在發生錯誤的情況下,未在釋放記憶體前從 virtqueue 卸離無效元素,進而導致記憶體洩漏和其他未預期的結果。
QEMU 6.2.0 及之前版本會受到影響。(CVE-2022-26354)

如需詳細資料,請檢閱提及的 CVE 識別碼。(CVE-2021-3929)

- QEMU:hw/acpi/pcihp.c 的 pci_write() 中發生 NULL 指標解除參照 (CVE-2021-4158)

- QEMU:virtiofsd:可以透過 CVE-2018-13405 提升權限 (CVE-2022-0358)

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

解決方案

所有 QEMU 使用者皆應升級至最新版本:

# emerge --sync # emerge --ask --oneshot --verbose >=app-emulation/qemu-7.0.0

另請參閱

https://security.gentoo.org/glsa/202208-27

https://bugs.gentoo.org/show_bug.cgi?id=733448

https://bugs.gentoo.org/show_bug.cgi?id=736605

https://bugs.gentoo.org/show_bug.cgi?id=773220

https://bugs.gentoo.org/show_bug.cgi?id=775713

https://bugs.gentoo.org/show_bug.cgi?id=780816

https://bugs.gentoo.org/show_bug.cgi?id=792624

https://bugs.gentoo.org/show_bug.cgi?id=807055

https://bugs.gentoo.org/show_bug.cgi?id=810544

https://bugs.gentoo.org/show_bug.cgi?id=820743

https://bugs.gentoo.org/show_bug.cgi?id=835607

https://bugs.gentoo.org/show_bug.cgi?id=839762

Plugin 詳細資訊

嚴重性: High

ID: 164115

檔案名稱: gentoo_GLSA-202208-27.nasl

版本: 1.2

類型: local

已發布: 2022/8/15

已更新: 2022/8/15

風險資訊

VPR

風險因素: High

分數: 8.1

CVSS v2

風險因素: High

基本分數: 7.2

時間分數: 5.3

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

時間媒介: E:U/RL:OF/RC:C

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

CVSS v3

風險因素: High

基本分數: 8.8

時間分數: 7.7

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

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

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

弱點資訊

CPE: p-cpe:/a:gentoo:linux:qemu, cpe:/o:gentoo:linux

必要的 KB 項目: Host/local_checks_enabled, Host/Gentoo/release, Host/Gentoo/qpkg-list

可輕鬆利用: No known exploits are available

修補程式發佈日期: 2022/8/14

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

參考資訊

CVE: CVE-2020-15859, CVE-2020-15863, CVE-2020-16092, CVE-2020-35504, CVE-2020-35505, CVE-2020-35506, CVE-2020-35517, CVE-2021-3409, CVE-2021-3416, CVE-2021-3527, CVE-2021-3544, CVE-2021-3545, CVE-2021-3546, CVE-2021-3582, CVE-2021-3607, CVE-2021-3608, CVE-2021-3611, CVE-2021-3682, CVE-2021-3713, CVE-2021-3748, CVE-2021-3750, CVE-2021-3929, CVE-2021-3930, CVE-2021-3947, CVE-2021-4145, CVE-2021-4158, CVE-2021-4206, CVE-2021-4207, CVE-2021-20203, CVE-2021-20257, CVE-2021-20263, CVE-2022-0358, CVE-2022-26353, CVE-2022-26354