製品・ソフトウェアに関する情報
LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性
Title LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性
Summary

Linuxカーネルにおいて、以下の脆弱性が修正されました。cnicのcnic_delete_taskにおけるuse-after-freeバグを修正しました。元のコードでは、cnic_cm_stop_bnx2x_hw()内でcancel_delayed_work()が使用されており、遅延ワークアイテムである'delete_task'がすでに実行中の場合、その完了が保証されていませんでした。さらに、その遅延ワークアイテムは周期的であり、cnic_cm_stop_bnx2x_hw()内のflush_workqueue()は呼び出し前にキューに入れられたワークアイテムのみを待機します。flush_workqueue()呼び出し後にキューに追加されたワークアイテムは待機対象に含まれません。つまり、周期的なワークアイテムの実行が終了した後でも、workqueueに遅延ワークアイテムが存在する可能性があります。これにより、cnic_free_dev()によってcnic_devが解放された後でもdelete_taskがアクティブなままでcnic_delete_task()内でcnic_devを参照しようとしてuse-after-freeの状況が発生します。典型的な競合状態は以下の通りです。CPU0(クリーンアップ)ではcnic_netdev_event() - cnic_stop_hw() - cnic_cm_stop_bnx2x_hw() - cancel_delayed_work() - flush_workqueue() - cnic_free_dev(dev)が実行され、cnic_devが解放されます。一方、CPU1(遅延ワークコールバック)ではcnic_delete_task()がflush_workqueue()の後にqueue_delayed_work()を実行し、新しいdelete_taskインスタンスがdevを使用します。cancel_delayed_work()をcancel_delayed_work_sync()に置き換えることで、周期的な遅延ワークアイテムが適切にキャンセルされ、ワークアイテムの実行が完了するまで待機した後にcnic_devが解放されるようになりました。さらにcancel_delayed_work_sync()は__flush_work(work, true)を使用して現在実行中のワークアイテムの完了を同期的に待つため、flush_workqueue()は冗長となり削除されるべきです。このバグは静的解析により特定されました。再現および修正検証のために、QEMU上でcnic PCIデバイスをシミュレートし、cnic_delete_task()内にssleep()を挿入するなど意図的な遅延を加えてバグ発生の可能性を高めました。

Possible impacts 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

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

Publication Date Oct. 4, 2025, midnight
Registration Date Jan. 26, 2026, 7:37 p.m.
Last Update Jan. 26, 2026, 7:37 p.m.
CVSS3.0 : 重要
Score 7.8
Vector CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Affected System
Linux
Linux Kernel 2.6.37 以上 5.4.300 未満
Linux Kernel 5.11 以上 5.15.194 未満
Linux Kernel 5.16 以上 6.1.154 未満
Linux Kernel 5.5 以上 5.10.245 未満
Linux Kernel 6.13 以上 6.16.9 未満
Linux Kernel 6.17
Linux Kernel 6.2 以上 6.6.108 未満
Linux Kernel 6.7 以上 6.12.49 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
Change Log
No Changed Details Date of change
1 [2026年01月26日]
  掲載
Jan. 26, 2026, 7:37 p.m.