CVE-2026-90322 in Linux情報

要約

〜によって VulDB • 2026年09月17日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

ocfs2/cluster: ハートビートのローカルノードを安定させる

o2nm_node_local_store() は local=0 を処理する際に o2net を停止し cl_local_node を O2NM_INVALID_NODE_NUM に設定しますが、cl_has_local の状態は残したままになります。この古い(stale)な状態により o2nm_this_node() が 255 を返し、後の local=1 の試行が -EBUSY でブロックされ、o2nm_this_node() を動的に呼び出すハートビートのユーザーに対して 255 が渡される可能性があります。

ローカルノードのリセット時には cl_has_local をクリアする必要があります。しかし、その時点でハートビッドスレッドは実行中の場合があります。これらのスレッドは起動時にローカルノード設定項目をピン留め(保持)していますが、o2hb_do_disk_heartbeat() およびスレッドの終了処理では o2nm_this_node() を再読み込みしてローカルスロットおよび o2nm_undepend_this_node() のために使用しています。local=0 がライブなローカルノード状態をクリアした後、これらの動的な読み取りは O2NM_MAX_NODES(無効なノード番号である 255 と同じ値)を返します。

リージョン開始時にハートビッド領域にローカルノード番号を保存します。その安定したノードを使用して、ハートビットスロットの書き込み/チェック、ネゴシエーションメッセージ、および最終的な configfs の undepend を行います。現在のローカルノードが保存されたノードと一致しなくなった場合、ハートビッドループを停止させます。また local=0 パスにおいて cl_has_local と cl_local_node の両方をクリアすることで nodemanager の状態がノードの削除と一致するようにします。

検証により以下のカーネルレポートが再現されました: KASAN slab-out-of-bounds in o2hb_do_disk_heartbeat+0x372/0xb30 RIP: 0010:memset+0xf/0x20 Read of size 8 Call trace: dump_stack_lvl+0x66/0xa0 print_report+0xd0/0x630 o2hb_do_disk_heartbeat+0x372/0xb30 (fs/ocfs2/cluster/heartbeat.c:1079) srso_alias_return_thunk+0x5/0xfbef5 __virt_addr_valid+0x188/0x2f0 kasan_report+0xe4/0x120 o2hb_do_disk_heartbeat+0x5/0xb30 (fs/ocfs2/cluster/heartbeat.c:1079) o2hb_thread+0x14e/0x770 kthread_affine_node+0x139/0x180 lockdep_hardirqs_on_prepare+0xda/0x190 trace_hardirqs_on+0x18/0x130 kthread+0x19d/0x1e0 ret_from_fork+0x37a/0x4d0 __switch_to+0x2d5/0x6f0 ret_from_fork_asm+0x1a/0x30

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

責任者

Linux

予約する

2026年09月11日

モデレーション

承諾済み

エントリ

VDB-406872

EPSS

0.00000

アクティビティ

非常低い

ソース

Want to know what is going to be exploited?

We predict KEV entries!