Linux Distros のパッチ未適用の脆弱性: CVE-2024-35877

medium Nessus プラグイン ID 229378

概要

Linux/Unix ホストには、ベンダーにより修正されていないことを示す脆弱性を持つ複数のパッケージがインストールされています。

説明

Linux/Unix ホストには、ベンダーが提供するパッチが利用できない脆弱性の影響を受ける複数のパッケージがインストールされています。

- x86/mm/patCOW マッピングでの VM_PAT 処理を修正します PAT 処理は COW マッピングで正しいことを行いません最初の PTEあるいは実際にはすべての PTEは、anon folios を指すように書き込み障害中に置換される可能性があります。PTE から follow_phys() を使用して正しい PFN および cachemode を確実に復元することは、COW マッピングでは機能しません。
follow_phys()を使用して、anon folioのアドレス+保護を取得するだけで、これは非常に間違っている、swap/nonswap エントリで失敗してfollow_phys()が失敗し、untrack_pfn()およびtrack_pfn_copy()でWARN_ON_ONCE()をトリガーする可能性があります。 、free_pfn_range() を適切に呼び出しません。free_pfn_range() では、memtype_free() を呼び出さないか、あるいは誤った範囲で呼び出し、メモリを漏洩する可能性があります。これを修正するために、 follow_phys() を更新して、anon folios を返すことを拒否し、COW マッピングのために vma->vm_pgoff 内部に保存された PFN を使用するようフォールバックします。現在は、untrack_pfn() を COW マッピングで適切に処理できるようになり、cachemode は必要ありません。最初のページが anon folio に置き換えられた場合、fork()->track_pfn_copy() を失敗させなければなりません。これを機能させるためには、VMA に cachemode を保存する必要があります。これにより、VMA サイズが大きくなる可能性があります。現時点では、それをシンプルにして、track_pfn_copy() がこの状況で失敗するようにします。swap/nonswap エントリで既に失敗し、anon folios で間違ったことを行っていました。untrack_pfn() で WARN_ON_ONCE() をトリガーするための単純なリプロデューサー <--- C reproducer ---> #include <stdio.h> #include<sys/mman.h> #include <unistd.h> #include <liburing.h> int main(void) { struct io_uring_params p = {}; int ring_fd; size_t size; char *map; ring_fd = io_uring_setup(1, &p); if (ring_fd < 0) { perror(io_uring_setup); return 1; } size = p.sq_off.array + p.sq_entries * sizeof(unsigned); /* 送信キューリング MAP_PRIVATE をマッピングします */ map = mmap(0, size, PROT_READ | PROT_WRITE, MAP_PRIVATE, ring_fd, IORING_OFF_SQ_RING); if (map == MAP_FAILED) { perror(mmap); return 1; } /* 少なくとも 1 つのページがあります。COW をさせてください。 */ *map = 0; pause();戻り値 0; } <--- C reproducer ---> 16 GiB RAM とスワップが構成されているシステム上で # ./iouring & # memhog 16G # killall iouring [ 301.552930] ------------[cuther]-------- ------ 301.553285] 警告CPU:7 PID: 1402 at arch/x86/mm/pat/memtype.c:1060 untrack_pfn+0xf4/0x100 [ 301.553989] モジュールのリンク binfmt_misc nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_g [ 301.558232] CPU7 PID1402 通信iouring Nottained 6.7.5-100.fc38.x86_64 #1301.558772] ハードウェア名QEMU Standard PCQ35 + ICH9, 2009、BIOS rel-1.16 .3-0-ga6ed6b701f0a-prebu4 [301.559569] RIP: 0010:untrack_pfn+0xf4/0x100 [ 301.559893] コード: 75 c4 eb cf 48 8b 43 10 8b a8 e8 00 00 00 3b 6b 28 74 b8 48 8b 7b 30 e8 ea 1a f7 000 [ 301.561189] RSP: 0018:ffffba2c0377fab8 EFLAGS: 00010282 []301.561590] RAX: 00000000ffffffea RBX: ffff9208c8ce9cc0 RCX: 000000010455e047 301.562105RDX
07ffffff0eb1e0a RSI000000000000000 RDIffff9208c391d200 301.562628RBP R080000000000000000000000000000000000000000000000000
ffffba2c0377fab8 R090000000000000000 [ 301.563145R10ffff9208d2292d50 R11000000000000000000002 R12
00007fea890e0000 [ 301.563669] R13: 0000000000000000 R14: ffffba2c0377fc08 R15: 0000000000000000 [301.564186] FS: 0000000000000000(0000) GS:ffff920c2fbc0000(0000) knlGS:0000000000000000 [ 301.564773] CS:
?0010 DS:0000 ES:0000 CR0:0000000080050033 [] [ 301.565197] ] CR2:00007fea88ee8a20 CR3:00000001033a8000 CR4:0000000000750ef0 [ 301.565725] ] PKRU:55555554 301.566148] [] [Call] [Call] [Call] [Call 301.565944] [Call ] [Call] [Call] [Call] [Call] [Call] <TASK>301.566325Call] [ ] untrack_pfn+0xf4/0x100 [ 301.566618] ? __warn+0x81/0x130 [ 301.566876] ? untrack_pfn+0xf4/0x100 [3 ---truncated---CVE-2024-35877]

Nessus は、ベンダーによって報告されたパッケージの存在に依存していることに注意してください。

ソリューション

現時点で既知の解決策はありません。

参考資料

https://access.redhat.com/security/cve/cve-2024-35877

https://ubuntu.com/security/CVE-2024-35877

プラグインの詳細

深刻度: Medium

ID: 229378

ファイル名: unpatched_CVE_2024_35877.nasl

バージョン: 1.2

タイプ: local

エージェント: unix

ファミリー: Misc.

公開日: 2025/3/5

更新日: 2025/8/15

サポートされているセンサー: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 4.4

CVSS v2

リスクファクター: Medium

基本値: 5.4

現状値: 4

ベクトル: CVSS2#AV:L/AC:M/Au:N/C:N/I:P/A:C

CVSS スコアのソース: CVE-2024-35877

CVSS v3

リスクファクター: Medium

基本値: 5.5

現状値: 4.8

ベクトル: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

現状ベクトル: CVSS:3.0/E:U/RL:O/RC:C

脆弱性情報

CPE: cpe:/o:canonical:ubuntu_linux:20.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-fips, p-cpe:/a:canonical:ubuntu_linux:linux-lowlatency-hwe-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-hwe, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.8, cpe:/o:redhat:enterprise_linux:9, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.17, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-6.2, cpe:/o:canonical:ubuntu_linux:14.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.0, p-cpe:/a:canonical:ubuntu_linux:linux-oem-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.19, cpe:/o:canonical:ubuntu_linux:16.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-realtime, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-raspi2, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-nvidia-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-aws-fips, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.0, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fips, p-cpe:/a:canonical:ubuntu_linux:linux-oem, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-starfive-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.14, p-cpe:/a:canonical:ubuntu_linux:linux-gcp, p-cpe:/a:canonical:ubuntu_linux:linux-azure, cpe:/o:canonical:ubuntu_linux:22.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-gke-5.15, p-cpe:/a:canonical:ubuntu_linux:linux-lowlatency-hwe-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-starfive-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.6, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.8, cpe:/o:canonical:ubuntu_linux:18.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:linux-gkeop-5.4, p-cpe:/a:canonical:ubuntu_linux:linux-lowlatency-hwe-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-allwinner-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.8, p-cpe:/a:canonical:ubuntu_linux:linux-fips, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fde-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-oracle-5.3, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-edge, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.13, p-cpe:/a:canonical:ubuntu_linux:linux, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-gke-4.15, p-cpe:/a:canonical:ubuntu_linux:linux-aws-5.8, p-cpe:/a:redhat:enterprise_linux:kernel-rt, p-cpe:/a:canonical:ubuntu_linux:linux-oem-6.0, p-cpe:/a:canonical:ubuntu_linux:linux-azure-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-aws-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-gke, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.19, p-cpe:/a:canonical:ubuntu_linux:linux-intel-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-gke-5.4, p-cpe:/a:canonical:ubuntu_linux:linux-azure-edge, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-azure-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.13, p-cpe:/a:canonical:ubuntu_linux:linux-aws-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-gcp-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fde, p-cpe:/a:canonical:ubuntu_linux:linux-nvidia-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-hwe-6.5, p-cpe:/a:canonical:ubuntu_linux:linux-azure-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-starfive-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-riscv-5.11, p-cpe:/a:canonical:ubuntu_linux:linux-oem-6.1, p-cpe:/a:canonical:ubuntu_linux:linux-riscv, p-cpe:/a:canonical:ubuntu_linux:linux-azure-fde-6.2, p-cpe:/a:canonical:ubuntu_linux:linux-oem-5.10

必要な KB アイテム: Host/local_checks_enabled, Host/cpu, global_settings/vendor_unpatched, Host/OS/identifier

エクスプロイトの容易さ: No known exploits are available

脆弱性公開日: 2024/5/10

参照情報

CVE: CVE-2024-35877