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

Linuxカーネルにおいて、以下の脆弱性が修正されました。atm: lec: lec_arp_clear_vccsにおけるnullポインタ逆参照を修正しました。syzkallerによってlec_arp_clear_vccs()内のnullポインタ逆参照が報告され、この問題はsyzkallerの再現ツールを使って簡単に再現できます。ATM LANE(LANエミュレーション)モジュールでは、同じatm_vccが複数のlec_arp_tableエントリ(例: entry-vccやentry-recv_vcc)で共有されることがあります。基盤となるVCCが閉じられると、lec_vcc_close()はすべてのARPエントリを順に処理し、対応するエントリごとにlec_arp_clear_vccs()を呼び出します。例えば、lec_vcc_close()がpriv-lec_arp_empty_onesや他のARPテーブルのハッシュリストを繰り返し処理する際、1. 最初の繰り返しで、VCCを共有する最初のARPエントリに対して、lec_arp_clear_vccs()は関連付けられたvpriv(vcc-user_back)を開放し、vcc-user_backをNULLに設定します。2. 2回目の繰り返しで、同じVCCを共有する次のARPエントリに対して再度lec_arp_clear_vccs()が呼ばれます。この時、vcc-user_back(LEC_VCC_PRIV(vcc)経由)からNULLのvprivを取得し、`vcc-pop = vpriv-old_pop`を実行しようとしてnullポインタ逆参照のクラッシュが発生します。この問題は、vprivを逆参照する前にNULLチェックを追加することで修正しました。もしvprivがすでにNULLであれば、それはVCCが前回の呼び出しでクリアされたことを示すため、クリーンアップはスキップし、そのエントリのvcc/recv_vccポインタだけを安全にクリアします。vprivがNULLの場合は、VCCがすでに前の繰り返しで完全に解放されているため、vcc_release_async()を含むクリーンアップ全体のブロックをvprivのガード内に配置しました。これにより、すでに終了処理中のソケットに対してフラグが重複設定されたりコールバックが繰り返し発生することを防止します。Fixesタグはentry-vccパスに脆弱性がオリジナルのコードから存在したため、最初のコミットを指しています。entry-recv_vccパスは後にコミット8d9f73c0ad2f(「atm: fix a memory leak of vcc-user_back」)で同様のパターンが追加されましたが、両方のパスを今回修正しました。

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

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

公表日 2026年3月25日0:00
登録日 2026年6月3日17:03
最終更新日 2026年6月3日17:03
CVSS3.0 : 警告
スコア 5.5
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
影響を受けるシステム
Linux
Linux Kernel 2.6.12
Linux Kernel 2.6.12.1 以上 5.10.253 未満
Linux Kernel 5.11 以上 5.15.203 未満
Linux Kernel 5.16 以上 6.1.167 未満
Linux Kernel 6.13 以上 6.18.17 未満
Linux Kernel 6.19 以上 6.19.7 未満
Linux Kernel 6.2 以上 6.6.130 未満
Linux Kernel 6.7 以上 6.12.77 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年06月03日]
  掲載
2026年6月3日17:03