Amazon Linux 2 : kernel (ALASKERNEL-5.10-2022-001)

high Nessus プラグイン ID 160443

概要

リモートの Amazon Linux 2 ホストに、セキュリティ更新プログラムがありません。

説明

リモートホストにインストールされているカーネルのバージョンは、5.10.35-31.135より前のものです。したがって、ALAS2KERNEL-5.10-2022-001 のアドバイザリに記載されている複数の脆弱性の影響を受けます。

- Linux カーネルに脆弱性が見つかりました。llcp_sock_bind() で refcount が漏えいして、メモリ解放後使用 (Use-After-Free) が引き起こされ、権限昇格が発生する可能性があります。(CVE-2020-25670)

- Linux カーネルに脆弱性が見つかりました。llcp_sock_connect() で refcount が漏洩して、メモリ解放後使用 (Use-After-Free) が引き起こされ、権限昇格が発生する可能性があります。(CVE-2020-25671)

- llcp_sock_connectのLinux カーネルに、メモリリークの脆弱性が見つかりました(CVE-2020-25672)

- Linuxカーネルに脆弱性が見つかりました。llcp_sock_connect()で非ブロックソケットが漏洩して、最終的にはシステムがハングアップします。 (CVE-2020-25673)

-5.12-rc8より前のLinuxカーネルSCTPソケット (net/sctp/socket.c) の競合状態により、ネットワークサービスのコンテキストまたは権限のないプロセスからのカーネル権限昇格につながる可能性があります。sock_net(sk)->sctp.addr_wq_lockなしでsctp_destroy_sockが呼び出された場合、適切なロックがない状態で、要素がauto_asconf_splistリストから削除されます。これが悪用され、ネットワークサービス権限を持つ攻撃者がrootへの権限昇格が行われる、あるいは一部のSCTPソケットの作成を拒否するBPF_CGROUP_INET_SOCK_CREATEが添付されている場合、権限のないユーザーのコンテキストから権限昇格が行われる可能性があります。(CVE-2021-23133)

- 5.11.xまでのLinux カーネルで問題が発見されました。kernel/bpf/verifier.c は、ポインター計算に対して望ましくない領域外の投機を実行し、これによって、サイドチャネル攻撃が引き起こされる可能性があります。この攻撃ではSpectreの緩和策が無効にされ、カーネルメモリから機密情報が取得されます。具体的には、一連のポインター演算操作で、最初の操作で実行されたポインターの変更が、後続の操作を制限するときに正しく考慮されません。(CVE-2021-29155)

-5.12.1までのLinux カーネルにおいて、kernel/bpf/verifier.cが望ましくない投機的なロードを行い、サイドチャネル攻撃を介して、スタックの内容を開示することになります (別名CID-801c6058d14a)。特に懸念されるのは、投機的ロードに対してBPFスタック領域を保護しないことです。また、BPFスタックには、初期化されていないデータが含まれており、カーネルによって以前に操作された機密情報を示す可能性があります。 (CVE-2021-31829)

- Linux カーネルの eBPF RINGBUF bpf_ringbuf_reserve() 関数は、割り当てられたサイズが ringbuf サイズより小さいことをチェックしなかったため、攻撃者がカーネル内で領域外書き込みを実行し、任意のコードを実行する可能性があります。この問題は、コミット 4b81ccebaeee (bpf、ringbuf: ringbuf より大きいバッファの予約を拒否) (v5.13-rc4) を介して修正され、v5.12.4、v5.11.21、および v5.10.37 の安定版 (stable) カーネルにバックポートされました。これは、457f44363a88 (bpf: BPF リングバッファおよびそのための検証サポートを実装) (v5.8-rc1) を介して導入されました。(CVE-2021-3489)

- Linux カーネルのビット単位の演算 (AND、OR、XOR) の eBPF ALU32境界追跡で、32 ビットの境界が適切に更新されませんでした。このため、Linux カーネルの領域外読み取りおよび書き込みが発生し、任意コード実行に至る可能性がありました。この問題は、コミット 049c4e13714e (bpf: ビット単位の alu32 const subreg 境界追跡を修正) (v5.13-rc4) で修正され、v5.12.4、v5.11.21、および v5.10.37 で安定したカーネルへバックポートされました。AND/OR の問題は、コミット 3f50f132d840 (bpf: Verifier、明示的な 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 で負の値が使用される可能性がありました。
これは、カーネルで任意のコードの実行につながるヒープオーバーフローを作成するために使用される可能性がありました。これは、コミット 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)

- 5.12より前のバージョンの Linux カーネルで欠陥が見つかりました。KVM APIのinternal.ndataの値が配列インデックスにマッピングされるため、ユーザープロセスをいつでも更新でき、領域外書き込みが引き起こされる可能性があります。この脆弱性が最大の脅威となるのは、データの整合性とシステムの可用性です。
(CVE-2021-3501)

- Linux カーネルでは、次の脆弱性が解決されています。net: hso: tty デバイス登録解除中の null-ptr-deref を修正します。複数の tty が同じマイナー番号を要求しようと試みるため、同じデバイスでの登録解除の重複が発生します。最初の登録解除は成功しますが、次の登録解除では null-ptr-deref が発生します。get_free_serial_index() 関数から利用可能なマイナー番号が返されますが、すぐには割り当てられません。割り当ては、後で呼び出し元が行います。しかし、この割り当ての前は、get_free_serial_index() を呼び出すと、同じマイナー番号が返されます。これを修正するには、get_free_serial_index を修正して、該当するマイナー番号が判明したら直ちにそれを割り当て、その機能をより適切に示すように名前を get_minor() に変更します。同様に、set_serial_by_index() の名前を release_minor() に変更し、指定された hso_serial のマイナー番号を解放するよう変更します。すべての obtain_minor() には、対応する release_minor() 呼び出しが必要です。(CVE-2021-46904)

- Linux カーネルでは、次の脆弱性が解決されています。net: hso: 切断回帰の NULL-deref を修正します。コミット 8a12f8836145 (net: hso: tty デバイス登録解除中の null-ptr-deref を修正) は、syzbot によって報告された、際どいマイナーな割り当てを修正しましたが、代わりに、毎回の切断に対して無条件の NULL ポインターデリファレンスが導入されました。具体的には、hso_serial_tty_unregister() によってマイナーが解放された後は、シリアルデバイステーブルにアクセスできなくなります。(CVE-2021-46905)

- Linux カーネルでは、次の脆弱性が解決されています。netfilter: nft_limit: nft_limit_init div_u64() が u64 を u32 で除算する除算エラーを回避します。nft_limit_init() は u64 を u64 で除算するので、適切な math 関数 (div64_u64) を使用します。除算エラー: 0000 [#1] PREEMPT SMP KASAN CPU: 1 PID: 8390 Comm: syz-executor188 Not tainted 5.12.0-rc4-syzkaller #0 ハードウェア名: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:div_u64_rem include/linux/math64.h:28 [inline] RIP: 0010:div_u64 include/linux/math64.h:127 [inline] RIP: 0010:nft_limit_init+0x2a2/0x5e0 net/netfilter/nft_limit.c:85 Code: ef 4c 01 eb 41 0f 92 c7 48 89 de e8 38 a5 22 fa 4d 85 ff 0f 85 97 02 00 00 e8 ea 9e 22 fa 4c 0f af f3 45 89 ed 31 d2 4c 89 f0 <49> f7 f5 49 89 c6 e8 d3 9e 22 fa 48 8d 7d 48 48 b8 00 00 00 00 00 RSP: 0018:ffffc90009447198 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000200000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff875152e6 RDI: 0000000000000003 RBP:
ffff888020f80908 R08: 0000200000000000 R09: 0000000000000000 R10: ffffffff875152d8 R11: 0000000000000000 R12: ffffc90009447270 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 FS:
000000000097a300(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0:
0000000080050033 CR2: 00000000200001c4 CR3: 0000000026a52000 CR4: 00000000001506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7:
0000000000000400 呼出しトレース: nf_tables_newexpr net/netfilter/nf_tables_api.c:2675 [inline] nft_expr_init+0x145/0x2d0 net/netfilter/nf_tables_api.c:2713 nft_set_elem_expr_alloc+0x27/0x280 net/netfilter/nf_tables_api.c:5160 nf_tables_newset+0x1997/0x3150 net/netfilter/nf_tables_api.c:4321 nfnetlink_rcv_batch+0x85a/0x21b0 net/netfilter/nfnetlink.c:456 nfnetlink_rcv_skb_batch net/netfilter/nfnetlink.c:580 [inline] nfnetlink_rcv+0x3af/0x420 net/netfilter/nfnetlink.c:598 netlink_unicast_kernel net/netlink/af_netlink.c:1312 [inline] netlink_unicast+0x533/0x7d0 net/netlink/af_netlink.c:1338 netlink_sendmsg+0x856/0xd90 net/netlink/af_netlink.c:1927 sock_sendmsg_nosec net/socket.c:654 [inline] sock_sendmsg+0xcf/0x120 net/socket.c:674 ____sys_sendmsg+0x6e8/0x810 net/socket.c:2350 ___sys_sendmsg+0xf3/0x170 net/socket.c:2404 __sys_sendmsg+0xe5/0x1b0 net/socket.c:2433 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46 entry_SYSCALL_64_after_hwframe+0x44/0xae (CVE-2021-46915)

Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。

ソリューション

「yum update kernel」を実行してシステムを更新してください。

参考資料

https://alas.aws.amazon.com/AL2/ALASKERNEL-5.10-2022-001.html

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

プラグインの詳細

深刻度: High

ID: 160443

ファイル名: al2_ALASKERNEL-5_10-2022-001.nasl

バージョン: 1.10

タイプ: local

エージェント: unix

公開日: 2022/5/2

更新日: 2024/3/19

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

リスク情報

VPR

リスクファクター: Critical

スコア: 9.0

CVSS v2

リスクファクター: High

Base Score: 7.2

Temporal Score: 6.3

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

CVSS スコアのソース: CVE-2021-3491

CVSS v3

リスクファクター: High

Base Score: 8.8

Temporal Score: 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:amazon:linux:bpftool, p-cpe:/a:amazon:linux:bpftool-debuginfo, p-cpe:/a:amazon:linux:kernel, p-cpe:/a:amazon:linux:kernel-debuginfo, p-cpe:/a:amazon:linux:kernel-debuginfo-common-aarch64, p-cpe:/a:amazon:linux:kernel-debuginfo-common-x86_64, p-cpe:/a:amazon:linux:kernel-devel, p-cpe:/a:amazon:linux:kernel-headers, p-cpe:/a:amazon:linux:kernel-tools, p-cpe:/a:amazon:linux:kernel-tools-debuginfo, p-cpe:/a:amazon:linux:kernel-tools-devel, p-cpe:/a:amazon:linux:perf, p-cpe:/a:amazon:linux:perf-debuginfo, p-cpe:/a:amazon:linux:python-perf, p-cpe:/a:amazon:linux:python-perf-debuginfo, cpe:/o:amazon:linux:2

必要な KB アイテム: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list

エクスプロイトが利用可能: true

エクスプロイトの容易さ: Exploits are available

パッチ公開日: 2022/1/20

脆弱性公開日: 2021/4/14

エクスプロイト可能

Core Impact

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

参照情報

CVE: CVE-2020-25670, CVE-2020-25671, CVE-2020-25672, CVE-2020-25673, CVE-2021-23133, CVE-2021-29155, CVE-2021-31829, CVE-2021-3489, CVE-2021-3490, CVE-2021-3491, CVE-2021-3501, CVE-2021-46904, CVE-2021-46905, CVE-2021-46915