【活用ガイド】

JVNDB-2026-028288

LinuxのLinux Kernelにおける不特定の脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。l2tp: l2tp_session_unhashにおけるlist_del_rcuの使用に関して、権限を持たないローカルユーザが、同じトンネル上でL2TP_CMD_SESSION_GETをL2TP_ATTR_IFNAME付きで同時に発行するとともに、L2TP_CMD_SESSION_CREATEおよびL2TP_CMD_SESSION_DELETEを発行することで、l2tp_session_get_by_ifname()内でホストCPUを無期限に固定できる問題です。これら3つのコマンドはいずれもGENL_UNS_ADMIN_PERM権限を必要とするため、netnsユーザ名前空間内のCAP_NET_ADMIN権限があれば十分です。l2tp_coreがロードされている任意のホストでは、標準的な`unshare -Urn`サンドボックスからこのトリガーを実行可能です。l2tp_session_unhash()はlist_del_init()でセッションをtunnel->session_listから削除しますが、このリストはrcu_read_lock_bh()の下でl2tp_session_get_by_ifname()によってlist_for_each_entry_rcu()で走査されます。list_del_init()は削除されたエントリのnextおよびprevポインタを自己参照状態にします。エントリを読み込んだリーダがpos->list.nextを次に進めた場合、&session->listを読み取り、container_of()によって同じセッションに戻ってしまい、list_for_each_entry_rcu()はリストの先頭に達しません。walker内のstrcmp()でCPUが停止し、BHおよびプリエンプションが無効になるため、ホスト上のRCUグレース期間がそこにて停止し、停止したスレッドはkillできません(シグナルSIGKILLはシステムコールの戻り時に配信されます)。l2tp_session_register()の既存のlist_add_rcu()に合わせてlist_del_rcu()の使用に変更しました。削除されたセッションはl2tp_session_free()内のkfree_rcu()が解放するまで、一貫性のあるnextおよびprevポインタでフライト中のwalkerに対して可視のまま残ります。tunnel->session_listにはlist_del_init()の呼び出しは1箇所だけであり、l2tp_core.cの533行目にあるlist_del_init(&session->clist)はRCU下で走査されないper-collisionリストに対して行われています。unhashポイント以降ではnet/l2tp/内においてlist_empty(&session->list)はどこでも使用されていないため、削除後の自己初期化の破棄は安全です。この修正によりユーザ空間に見える振る舞いに変更はありません。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 6.11.3 以上 6.12.92 未満
  • Linux Kernel 6.13 以上 6.18.34 未満
  • Linux Kernel 6.19 以上 7.0.11 未満
  • Linux Kernel 7.1

想定される影響

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

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

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

  1. 情報不足(CWE-noinfo) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-64119
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-64119
  2. 関連文書 : l2tp: use list_del_rcu in l2tp_session_unhash - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/979c017803c40829b03acd9e5236e354b7622360)
  3. 関連文書 : l2tp: use list_del_rcu in l2tp_session_unhash - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/acab6314bb75be994f720ed13e9d9139cbf828a8)
  4. 関連文書 : l2tp: use list_del_rcu in l2tp_session_unhash - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/e0c3dd7b30cc5ee42ab502da140cda93d794a20b)
  5. 関連文書 : https://git.kernel.org/stable/c/5e40919a40cb3e590ed45c2a54a4a2518aa88a99
更新履歴

  • [2026年08月17日]
      掲載