CVE-2026-74636 in Linux
要約
〜によって VulDB • 2026年08月22日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
tracing: update_event_fieldsとevent_define_fieldsの間の競合状態を修正
以下のシーケンスにより、event_define_fields() と update_event_fields() の間に競合状態が発生する可能性があります。
CPU0 (モジュールAを読み込み) CPU1 (モジュールBを読み込み) =============================== =============================== load_module(A) load_module(B) notifier_call_chain notifier_call_chain trace_module_notify trace_module_notify mutex_lock(&event_mutex) trace_event_update_all() trace_module_add_events(A) down_write(&trace_event_sem) __register_event(call_A) __add_event_to_tracers(call_A) event_define_fields(call_A) for each f: list_for_each_entry(field, list_add(&f->link, &class->fields, link) &class->fields) field = class->fields->next;
ここで、trace_event_update_all() 内での class->fields へのアクセスは event_mutex で保護されていません。
これにより、以下のパニックが発生します: Unable to handle kernel access ... at virtual address 0000000000000018 pc : update_event_fields+0xf8/0x368 Call trace: update_event_fields+0xf8/0x368 trace_event_update_all+0x7c/0x2b4 trace_module_notify+0x4c/0x1dc notifier_call_chain+0x84/0x168 blocking_notifier_call_chain_robust+0x64/0xd4 load_module+0x10c8/0x123c __arm64_sys_finit_module+0x230/0x31c
trace_event_update_all() 内で trace_event_sem より先に event_mutex を取得することで修正します。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.