概要
リモートの SUSE ホストに 1 つ以上のセキュリティ更新がありません。
説明
リモートの SUSE Linux SLES15ホストには、SUSE-SU-2024:1726-1 のアドバイザリに記載された複数の脆弱性の影響を受けるパッケージがインストールされています。
- Linux カーネルでは、次の脆弱性が解決されました。ipvlan: skb->mac_header の設定解除によって引き起こされる範囲外のバグを修正。AF_PACKET ソケットを使用して ipvlan 経由でパケットを送信し、AF_PACKET ソケットのデフォルトの xmit 関数が、PACKET_QDISC_BYPASS のオプション名を指定した setsockopt() を介して dev_queue_xmit() から packet_direct_xmit() に変更された場合、skb->mac_header はリセットされず、初期値 65535 のままになる場合があります。これにより、次のようなスラブ範囲外のバグが発生する可能性があります。
================================================================= UG: KASAN: ipvlan_xmit_mode_l2+0xdb/0x330 の スラブ領域外 [ipvlan] PU: 2 PID: 1768 Comm: raw_send Kdump: ロード済み。汚染されていない 6.0.0-rc4+ #6 ハードウェア名: QEMU 標準 PC (i440FX + PIIX、1996)、BIOS 1.14.0-1.fc33 すべて トレース:
print_address_description.constprop.0+0x1d/0x160 print_report.cold+0x4f/0x112 kasan_report+0xa3/0x130 ipvlan_xmit_mode_l2+0xdb/0x330 [ipvlan] ipvlan_start_xmit+0x29/0xa0 [ipvlan] __dev_direct_xmit+0x2e2/0x380 packet_direct_xmit+0x22/0x60 packet_snd+0x7c9/0xc40 sock_sendmsg+0x9a/0xa0 __sys_sendto+0x18a/0x230
__x64_sys_sendto+0x74/0x90 do_syscall_64+0x3b/0x90 entry_SYSCALL_64_after_hwframe+0x63/0xcd 根本原因: 1. packet_snd() は、sock->type が SOCK_RAW になっていて、skb->protocol が packet_parse_headers() のように指定されていない場合にのみ skb->mac_header をリセットします。2. packet_direct_xmit() は dev_queue_xmit() として skb->mac_header をリセットしません。この場合、ipvlan_xmit_mode_l2() が呼び出されたときの skb->mac_header は 65535 です。そのため、ipvlan_xmit_mode_l2() が skb->head + skb->mac_header を使用する eth_hdr() で mac ヘッダーを取得する際に、領域外アクセスが発生します。このパッチは、ipvlan_xmit_mode_l2() の eth_hdr() を skb_eth_hdr() に置き換え、マルチキャストの MAC ヘッダーをリセットして、この領域外のバグを解決します。(CVE-2022-48651)
- Linux カーネルでは、次の脆弱性が解決されています。net: nfc: nfc_llcp_sock_get() および nfc_llcp_sock_get_sn() の競合を修正します。Sili Luo 氏が、UAF につながる、nfc_llcp_sock_get() の競合を報告しました。ロックを保持している間にルックアップで見つかったソケットの参照の取得は、ロックを解放する前に行う必要があります。nfc_llcp_sock_get_sn() にも同様の問題があります。最後に、nfc_llcp_recv_snl() は、nfc_llcp_sock_from_sn() が見つけたソケットが消えないようにする必要があります。(CVE-2023-52502)
- Linux カーネルの GSM 0710 tty マルチプレクサに、競合状態が見つかりました。この問題は、gsm ライン規則が有効になっている状態で、2 つのスレッドが同じ tty ファイル記述子で GSMIOC_SETCONF ioctl を実行する際に発生し、gsm mux の再起動中に struct gsm_dlci でメモリ解放後使用 (Use-After-Free) 問題を引き起こす可能性があります。これにより、権限のないローカルユーザーがシステムで権限を昇格させる可能性があります。(CVE-2023-6546)
- Linux カーネルのパフォーマンスイベントシステムコンポーネントのヒープ領域外書き込みの脆弱性が悪用され、ローカル権限昇格が引き起こされる可能性があります。perf_event の read_size がオーバーフローすると、perf_read_group() 内でヒープの範囲外の増加または書き込みが発生する可能性があります。過去のコミット 382c27f4ed28f803b1f1473ac2d8db0afc795a1b へのアップグレードを推奨します。(CVE-2023-6931)
- Linux カーネルでは、次の脆弱性が解決されています。tls: tx 作業スケジュールとソケットクローズの間の競合を修正します。以前のコミットと同様、送信中のスレッド (recvmsg/sendmsg) が、非同期暗号ハンドラーが complete() を呼び出すとすぐに終了する可能性があります。complete() を呼び出す前に作業のスケジュールを並べ替えます。これは、送信スレッドが行うことの逆の順序であるため、第一に、より論理的に思えます。(CVE-2024-26585)
- Linux カーネルでは、次の脆弱性が解決されています。wifi: iwlwifi: メモリ破損を修正します iwl_fw_ini_trigger_tlv::data は __le32 へのポインターです。これは、iwl_fw_ini_trigger_tlv::data + offset へコピーして、バイトである間にオフセットする場合、バッファを越えて書き込むことを意味しています。
(CVE-2024-26610)
- Linux カーネルでは、次の脆弱性が解決されています。IB/hfi1: sdma.h tx->num_descs off-by-one エラーを修正しました。残念ながら、コミット「fd8958efe877」により、「descs」配列のオーバーフローを引き起こす別のエラーが発生しました。これにより、「sendmsg」システムコールで簡単に再現できるクラッシュがさらに発生します。[1080.836473] 一般保護違反、おそらく非標準アドレス 0x400300015528b00a: 0000 [#1] PREEMPT SMP PTI [ 1080.869326] RIP: 0010:hfi1_ipoib_build_ib_tx_headers.constprop.0+0xe1/0x2b0 [hfi1] -- [ 1080.974535] Call Trace: [ 1080.976990] <TASK> [ 1081.021929] hfi1_ipoib_send_dma_common+0x7a/0x2e0 [hfi1] [1081.027364] hfi1_ipoib_send_dma_list+0x62/0x270 [hfi1] [ 1081.032633] hfi1_ipoib_send+0x112/0x300 [hfi1] [ 1081.042001] ipoib_start_xmit+0x2a9/0x2d0 [ib_ipoib] [ 1081.046978] dev_hard_start_xmit+0xc4/0x210 -- [1081.148347] __sys_sendmsg+0x59/0xa0 crash> ipoib_txreq 0xffff9cfeba229f00 struct ipoib_txreq { txreq = {list = { next = 0xffff9cfeba229f00, prev = 0xffff9cfeba229f00 }, descp = 0xffff9cfeba229f40, coalesce_buf = 0x0, wait = 0xffff9cfea4e69a48, complete = 0xffffffffc0fe0760 <hfi1_ipoib_sdma_complete>, packet_len = 0x46d, tlen = 0x0, num_desc = 0x0, desc_limit = 0x6, next_descq_idx = 0x45c, coalesce_idx = 0x0, flags = 0x0, descs = {{ qw = {0x8024000120dffb00, 0x4} # SDMA_DESC0_FIRST_DESC_FLAG (bit 63) }, { qw = {0x3800014231b108, 0x4} }, { qw = { 0x310000e4ee0fcf0, 0x8} }, { qw = { 0x3000012e9f8000, 0x8} }, { qw = {0x59000dfb9d0000, 0x8} }, { qw = { 0x78000e02e40000, 0x8} }} }, sdma_hdr = 0x400300015528b000, <<< tx リクエスト構造体のポインターが無効です。sdma_status = 0x0, SDMA_DESC0_LAST_DESC_FLAG (bit 62) complete = 0x0, priv = 0x0, txq = 0xffff9cfea4e69880, skb = 0xffff9d099809f400 } SDMA 送信がちょうど 6 つの記述子で構成され、dword パディング (7 番目の記述子) が必要な場合、sdma_txreq 記述子配列が適切に拡張されず、パケットがコンテナ構造内にオーバーフローします。これにより、送信完了の実行時にパニックが発生します。厳密なパニックは、コンテナ構造のどの要素が破損するかによって異なります。修正するには、_pad_sdma_tx_descs() で正しい式を使用して、記述子配列を拡張する必要があるかどうかをテストします。このパッチを適用すると、クラッシュは再現されなくなり、マシンは安定します。
(CVE-2024-26766)
Nessus はこれらの問題をテストしておらず、代わりにアプリケーションが自己報告するバージョン番号にのみ依存していることに注意してください。
ソリューション
影響を受ける kernel-livepatch-5_14_21-150400_24_69-default や kernel-livepatch-5_14_21-150500_55_7-default パッケージを更新してください。
プラグインの詳細
ファイル名: suse_SU-2024-1726-1.nasl
エージェント: unix
サポートされているセンサー: Agentless Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Frictionless Assessment Azure, Nessus Agent, Nessus
リスク情報
ベクトル: CVSS2#AV:L/AC:H/Au:S/C:C/I:C/A:C
ベクトル: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
現状ベクトル: CVSS:3.0/E:H/RL:O/RC:C
脆弱性情報
CPE: cpe:/o:novell:suse_linux:15, p-cpe:/a:novell:suse_linux:kernel-livepatch-5_14_21-150400_24_69-default, p-cpe:/a:novell:suse_linux:kernel-livepatch-5_14_21-150500_55_7-default
必要な KB アイテム: Host/local_checks_enabled, Host/cpu, Host/SuSE/release, Host/SuSE/rpm-list
エクスプロイトの容易さ: Exploits are available