【活用ガイド】

JVNDB-2026-027859

LinuxのLinux KernelにおけるNULL ポインタデリファレンスに関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。powerpc/time: arch_irq_work_raise() から冗長な preempt_disable()/preempt_enable() の呼び出しを削除しました。リアルモードでのマシンチェック例外処理時にカーネルパニックが発生していました。BUG: 0xc00000006be21300 の読み取り時にカーネルデータアクセスを処理できませんでした。Oops: 不正な領域へのカーネルアクセス、シグナル: 11 [#1] MSR: 8000000000001003 <SF,ME,RI,LE> CR: 88222248 XER: 00000005 CFAR: c00000000003ffc4 DAR: c00000006be21300 DSISR: 40000000 IRQMASK: 0 NIP [c000000000029e40] arch_irq_work_raise+0x10/0x70 LR [c00000000003ffc8] machine_check_queue_event+0xa8/0x150 Call Trace: [c0000000179d3c70] [c00000000003ff64] machine_check_queue_event+0x44/0x150 [c0000000179d3d30] [c0000000000084e0] machine_check_early_common+0x1f0/0x2c0。このクラッシュは、arch_irq_work_raise() がリアルモードで実行されるマシンチェック例外(MCE)ハンドラから preempt_disable() を呼び出したために発生していました。この状況で preempt_count にアクセスするとフォルトが発生し、パニックにつながります。arch_irq_work_raise() 内の preempt_disable()/preempt_enable() のペアは、元々コミット 0fe1ac48bef0("powerpc/perf_event: Fix oops due to perf_event_do_pending call")で、例外コンテキストから irq work を発行する際の競合回避のために追加されました。その後、コミット 471ba0e686cb("irq_work: Do not raise an IPI when queueing work on the local CPU")により irq_work_queue() パス内でのプリエンプション保護が追加され、さらにコミット 20b876918c06("irq_work: Use per cpu atomics instead of regular atomics")では、arch_irq_work_raise() に到達する前の irq_work_queue_on() に同等の保護が追加されました。 irq_work_queue() / irq_work_queue_on() → preempt_disable() → __irq_work_queue_local() → irq_work_raise() → arch_irq_work_raise()。その結果、mce_irq_work_raise() 以外の呼び出し元はすでにプリエンプション無効状態で実行されており、arch_irq_work_raise() 内の追加の preempt_disable()/preempt_enable() ペアは冗長となっていました。arch_irq_work_raise() 関数は MCE ハンドラから呼ばれると NMI コンテキストで実行されます。したがって、MSR[EE]=0 の NMI コンテキスト内ではプリエンプトやスケジューリングが発生しないため、ここから preempt_disable()/preempt_enable() の呼び出しを削除しても安全です。これにより、リアルモードコンテキストから preempt_count にアクセスすることを回避できます。【Maddy によるコミットタイトルの修正】
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 5.5 (警告) [NVD値]
  • 攻撃元区分: ローカル
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 低
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): なし
  • 可用性への影響(A): 高
影響を受けるシステム


Linux
  • Linux Kernel 5.18 以上 6.1.175 未満
  • Linux Kernel 6.13 以上 6.18.34 未満
  • Linux Kernel 6.19 以上 7.0.11 未満
  • Linux Kernel 6.2 以上 6.6.142 未満
  • Linux Kernel 6.7 以上 6.12.92 未満
  • Linux Kernel 7.1

想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う情報について、書き換えは発生しません。
・当該ソフトウェアが完全に停止する可能性があります。
対策

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。
ベンダ情報

CWEによる脆弱性タイプ一覧  CWEとは?

  1. NULL ポインタデリファレンス(CWE-476) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-64214
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-64214
  2. 関連文書 : powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/51860e423592893cd7bfa7287d99a3aff4dc3a9d)
  3. 関連文書 : powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/8079acc5ee5235a627e4586d4f42082a9000ea64)
  4. 関連文書 : powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/6dcd072a5ae3aed336e4a67a7d4cc5205b240065)
  5. 関連文書 : powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/72d8d1c36452a4d3ee134b1da48de7518c1329f9)
  6. 関連文書 : powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/31467b23823ffec1f6fff407f8e3ca9af8b7491a)
  7. 関連文書 : powerpc/time: Remove redundant preempt_disable|enable() calls from arch_irq_work_raise() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a09d07ac45e283c9861a9ceea06f56d0ba851d22)
更新履歴

  • [2026年08月12日]
      掲載