Amazon Linux 2:核心 (ALAS-2021-1685)

high Nessus Plugin ID 151793

概要

遠端 Amazon Linux 2 主機缺少安全性更新。

說明

遠端主機上安裝的核心版本早於 4.14.238-182.421。因此,會受到 ALAS2-2021-1685 公告中所提及的多個弱點影響。

- 藍牙核心規格 2.1 到 5.2 中的 Bluetooth LE 和 BR/EDR 安全配對可能允許附近的攔截式攻擊者透過公開金鑰的反映,識別配對期間 (在 Passkey 驗證程序中) 所使用的 Passkey 以及起始裝置的驗證證據,可能允許此攻擊者使用配對工作階段的正確 Passkey,完成與回應裝置的驗證配對。攻擊方法會以一次一位元的方式來判斷 Passkey 值。(CVE-2020-26558)

- BlueZ 中的不當存取控制可能會允許經驗證的使用者透過相鄰存取造成資訊洩漏。(CVE-2021-0129)

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

- 在 5.12.2 版之前的 Linux 核心中,net/bluetooth/hci_request.c 有移除 HCI 控制器的爭用情形。(CVE-2021-32399)

- 在 5.12.4 版之前的 Linux 核心中,net/bluetooth/hci_event.c 會在破壞 hci_chan (即 CID-5c4c8c954409) 時發生釋放後使用問題。這會導致寫入任意值。(CVE-2021-33034)

- 在 5.12.13 之前的 Linux 核心的 kernel/bpf/verifier.c 中,分支可能會發生錯誤預測 (例如,因類型混淆所致),因此無權限的 BPF 程式可透過旁路攻擊讀取任意記憶體位置,即 CID -9183671af6db。(CVE-2021-33624)

- 在使用者附加惡意 HCI TTY 藍牙裝置的方式中,發現 Linux 核心 HCI 裝置初始化子系統中存在一個重複釋放記憶體損毀缺陷。本機使用者可能會利用此缺陷造成系統當機。此缺陷會影響從 3.13 開始的所有 Linux 核心版本。(CVE-2021-3564)

- 在使用者呼叫 ioct HCIUNBLOCKADDR 的方式中,或是其他觸發呼叫 hci_unregister_dev() 以及呼叫 hci_sock_blacklist_add()、hci_sock_blacklist_del()、hci_get_conn_info()、hci_get_auth_info() 之一的爭用情形的方式中,發現 Linux 核心 HCI 子系統的 hci_sock_bound_ioctl() 函式中存在釋放後使用問題。有權限的本機使用者可利用此缺陷來損毀系統或提高自己的系統權限。此缺陷會影響 5.13-rc5 之前的 Linux 核心版本。(CVE-2021-3573)

- 在 Linux 核心中,下列弱點已解決:HID:usbhid:修復 hid_submit_ctrl 中的資訊洩漏問題。在 hid_submit_ctrl() 中,計算報告長度的方式未將 report->size 可能為零的情況納入考量。執行 syzkaller 再生器時,大小為 0 的報告會導致 hid_submit_ctrl) 將 transfer_buffer_length 計算為 16384。將此 urb 傳遞至 usb 核心層時,KMSAN 會報告 16384 位元組的資訊洩漏問題。若要修復此問題,請先修改 hid_report_len(),使用除數的 DIV_ROUND_UP 來解決報告大小為零的情況。然後再從 hid_submit_ctrl() 呼叫它。(CVE-2021-46906)

- 在 Linux 核心中,下列弱點已解決:dm rq:修正表格載入失敗後 dev remove 中 blk_mq_tag_set 的重複釋放問題。針對要求型對應裝置載入 device-mapper 表格時,裝置的 blk_mq_tag_set 失敗,後續裝置移除將造成重複釋放。例如 (dmesg):device-mapper:核心:無法初始化要求型 dm-mq 對應裝置的佇列 device-mapper: ioctl:無法設定新表格的裝置佇列。
無法處理虛擬核心位址空間中的核心指標解除參照。位址失敗:
0305e098835de000 TEID:0305e098835de803 使用核心 ASCE 時,在家庭空間模式中發生錯誤。
AS:000000025efe0007 R3:0000000000000024 Oops:0038 ilc:3 [#1] 連結的 SMP 模組:... 多個模組 ... 支援:是,外部 CPU:0 PID:7348 通訊:multipathd Kdump:已載入 污染:GWX 5.3.18-53-default #1 SLE15-SP3 硬體名稱:IBM 8561 T01 7I2 (LPAR) Krnl PSW:0704e00180000000 000000025e368eca (kfree+ 0x42/0x330) R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:2 PM:0 RI:0 EA:3 Krnl GPRS: 000000000000004a 000000025efe5230 c1773200d779968d 0000000000000000 000000025e520270 000000025e8d1b40 0000000000000003 00000007aae10000 000000025e5202a2 0000000000000001 c1773200d779968d 0305e098835de640 00000007a8170000 000003ff80138650 000000025e5202a2 000003e00396faa8 Krnl Code:
000000025e368eb8: c4180041e100 lgrl %r1,25eba50b8 000000025e368ebe: ecba06b93a55 risbg %r11,%r10,6,185,58 #000000025e368ec4: e3b010000008 ag %r11,0(%r1) >000000025e368eca: e310b0080004 lg %r1,8(%r11) 000000025e368ed0: a7110001 tmll %r1,1 000000025e368ed4: a7740129 brc 7,25e369126 000000025e368ed8:
[e320b0080004 lg %r2,8(%r11) 000000025e368ede: b904001b lgr %r1,%r11 呼叫追踪: [<000000025e368eca>] kfree+0x42/0x330 [<000000025e5202a2>] blk_mq_free_tag_set+0x72/0xb8 [<000003ff801316a8>] dm_mq_cleanupx5mapped_device+0x3 dm_mod] [<000003ff80120082>] free_dev+0x52/0xd0 [dm_mod] [<000003ff801233f0>] __dm_destroy+0x150/0x1d0 [dm_mod] [<000003ff8012bb9a>] dev_remove+0x162/0x1c0 [dm_mod] [<000003ff8012a988>] ctl_ioctl+0x198/0x478 [dm_mod] [<000003ff8012ac8a>] dm_ctl_ioctl+0x22/0x38 [dm_mod] [<000000025e3b11ee>] ksys_ioctl+0xbe/0xe0 [<000000025e3b127a>] __s390x_sys_ioctl+0x2a/0x40 [<000000025e8c15ac>] system_call+0xd8/0x2c8 上次中斷事件位址: [<000000025e52029c>] blk_mq_free_tag_set+0x6c/0xb8 核心錯誤 - 未同步:嚴重例外狀況:panic_on_oops 當 blk_mq_tag_set 在 dm_mq_init_request_queue() 中配置/初始化失敗時,系統會取消初始化/釋放,但指標不會重設為 NULL;因此,當 dev_remove() 稍後進入 dm_mq_cleanup_mapped_device() 時,它會看到指標並嘗試取消初始化並再次釋放它。透過在 dm_mq_init_request_queue() 錯誤處理中將指標設定為 NULL 來修正此問題。也在 dm_mq_cleanup_mapped_device() 中將其設定為 NULL。 (CVE-2021-46938)

- 在 Linux 核心中,下列弱點已解決:追蹤:重建 trace_clock_global(),使其絕對不會封鎖 根據報告,環形緩衝區遞迴偵測的修正會在執行暫停/恢復測試時造成機器當機。下列回溯是透過自該案例的除錯所擷取:呼叫追踪:trace_clock_global+0x91/0xa0 __rb_reserve_next+0x237/0x460 ring_buffer_lock_reserve+0x12a/0x3f0 trace_buffer_lock_reserve+0x10/0x50 __trace_graph_return+0x1f/0x80 trace_graph_return+0xb7/0xf0 ? trace_clock_global+0x91/0xa0 ftrace_return_to_handler+0x8b/0xf0 ? pv_hash+0xa0/0xa0 return_to_handler+0x15/0x30 ? ftrace_graph_caller+0xa0/0xa0 ? trace_clock_global+0x91/0xa0 ? __rb_reserve_next+0x237/0x460 ? ring_buffer_lock_reserve+0x12a/0x3f0 ? trace_event_buffer_lock_reserve+0x3c/0x120 ? trace_event_buffer_reserve+0x6b/0xc0 ? trace_event_raw_event_device_pm_callback_start+0x125/0x2d0 ? dpm_run_callback+0x3b/0xc0 ? pm_ops_is_empty+0x50/0x50 ? platform_get_irq_byname_optional+0x90/0x90 ? trace_device_pm_callback_start+0x82/0xd0 ? dpm_run_callback+0x49/0xc0 具有以下 RIP: RIP:
0010:native_queued_spin_lock_slowpath+0x69/0x200 由於遞回偵測的修正可允許在追踪時發生單一遞回,這樣會導致 trace_clock_global() 進行自旋鎖,然後再嘗試再次取得:ring_buffer_lock_reserve() { trace_clock_global() { arch_spin_lock() {queued_spin_lock_slowpath() { /* lock taken */ (函式圖形追踪器會追踪其他內容) ring_buffer_lock_reserve() { trace_clock_global() { arch_spin_lock() { queued_spin_lock_slowpath() { /* DEAD LOCK! */ 追踪應該 *絕對不會*封鎖,因為這樣可能會導致類似上述的奇怪鎖定。重新建構 trace_clock_global() 程式碼,而不僅僅是取得鎖定,更新記錄的 prev_time 只是為了要加以使用,因為在兩個不同 CPU 上發生的兩個事件會同時呼叫,實際上哪個事件先發生並不重要。使用 trylock 抓取鎖定以便更新 prev_time,如果失敗,只需下次重試即可。如果無法取得,則表示其他項目已在更新該項目。Bugzilla:https://bugzilla.kernel.org/show_bug.cgi?id=212761 (CVE-2021-46939)

- 在 Linux 核心中,下列弱點已解決:md/raid1:結束失敗的寫入要求時正確指出失敗。此修補程式可解決使用點陣圖的 raid1 陣列中的資料損毀錯誤。若無此修正,失敗的 I/O 的點陣圖位元最終會遭到清除。由於我們處於 raid1_end_write_request 的失敗分支中,因此要求需要為重試 (R1BIO_WriteError) 或失敗 (R1BIO_Degraded) 狀態。 (CVE-2021-46950)

- 在 Linux 核心中,下列弱點已解決: ACPI: GTDT:watchdow 探查失敗時不損毀中斷對應。當因為無效的韌體內容而導致驅動程式探查失敗時,GTDT 驅動程式會取消對應其先前對應的中斷。但是,它從來不會檢查中斷的對應是否實際成功。此外,倘若韌體報告與 GIC SGI 範圍重疊的非法中斷編號,如此可能導致 IPI 對應遭到取消,以及後續的爆發事件 (如 Dann Frazier 所報告)。修改驅動程式使其行為略微正常,並在取消對應事物之前,實際檢查是否已經中斷對應。 (CVE-2021-46953)

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

解決方案

執行「yum update kernel」以更新系統。

另請參閱

https://alas.aws.amazon.com/AL2/ALAS-2021-1685.html

https://alas.aws.amazon.com/faqs.html

https://alas.aws.amazon.com/cve/html/CVE-2020-26558.html

https://alas.aws.amazon.com/cve/html/CVE-2021-0129.html

https://alas.aws.amazon.com/cve/html/CVE-2021-3564.html

https://alas.aws.amazon.com/cve/html/CVE-2021-3573.html

https://alas.aws.amazon.com/cve/html/CVE-2021-46906.html

https://alas.aws.amazon.com/cve/html/CVE-2021-46938.html

https://alas.aws.amazon.com/cve/html/CVE-2021-46939.html

https://alas.aws.amazon.com/cve/html/CVE-2021-46950.html

https://alas.aws.amazon.com/cve/html/CVE-2021-46953.html

https://alas.aws.amazon.com/cve/html/CVE-2021-29650.html

https://alas.aws.amazon.com/cve/html/CVE-2021-32399.html

https://alas.aws.amazon.com/cve/html/CVE-2021-33034.html

https://alas.aws.amazon.com/cve/html/CVE-2021-33624.html

Plugin 詳細資訊

嚴重性: High

ID: 151793

檔案名稱: al2_ALAS-2021-1685.nasl

版本: 1.9

類型: local

代理程式: unix

已發布: 2021/7/16

已更新: 2024/4/25

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

風險資訊

VPR

風險因素: Medium

分數: 6.7

CVSS v2

風險因素: Medium

基本分數: 6.9

時間分數: 5.4

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

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

CVSS v3

風險因素: High

基本分數: 7.8

時間分數: 7

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

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

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

弱點資訊

CPE: p-cpe:/a:amazon:linux:perf, p-cpe:/a:amazon:linux:perf-debuginfo, p-cpe:/a:amazon:linux:kernel-tools-debuginfo, p-cpe:/a:amazon:linux:kernel-debuginfo-common-aarch64, p-cpe:/a:amazon:linux:kernel-livepatch-4.14.238-182.421, p-cpe:/a:amazon:linux:kernel-tools, p-cpe:/a:amazon:linux:kernel-devel, p-cpe:/a:amazon:linux:python-perf-debuginfo, p-cpe:/a:amazon:linux:kernel, p-cpe:/a:amazon:linux:kernel-debuginfo, p-cpe:/a:amazon:linux:kernel-headers, cpe:/o:amazon:linux:2, p-cpe:/a:amazon:linux:kernel-tools-devel, p-cpe:/a:amazon:linux:kernel-debuginfo-common-x86_64, p-cpe:/a:amazon:linux:python-perf

必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list

可被惡意程式利用: true

可輕鬆利用: Exploits are available

修補程式發佈日期: 2021/7/14

弱點發布日期: 2021/3/30

參考資訊

CVE: CVE-2020-26558, CVE-2021-0129, CVE-2021-29650, CVE-2021-32399, CVE-2021-33034, CVE-2021-33624, CVE-2021-3564, CVE-2021-3573, CVE-2021-46906, CVE-2021-46938, CVE-2021-46939, CVE-2021-46950, CVE-2021-46953

ALAS: 2021-1685