【活用ガイド】

JVNDB-2026-028067

LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。ixgbevf:VEPAマルチキャストソースのプルーニングにおけるUse-After-Freeの問題の修正です。ixgbevf_clean_rx_irq()は、ソースMACアドレスがVF自身のアドレスと一致するフレーム(VEPAマルチキャストのワークアラウンド)をskbを解放してプルーニングし、次のディスクリプターへ進みます。具体的には、次のコードが実行されます: dev_kfree_skb_irq(skb); continue;skbポインターはwhileループの外で宣言されており、反復間で持続します。continue文がループの最後にある「skb = NULL」のリセット処理をスキップするため、次の反復で「else if (skb)」のパスに入り、解放済みのskbに対してixgbevf_add_rx_frag()が呼び出され、skb_shinfo(skb)->nr_fragsが参照されます。これにより、NAPIソフトIRQコンテキストにおいてUse-After-Freeが発生します。兄弟ドライバーであるiavfは、continueの前にポインターをNULLに設定することでこの問題を正しく処理しています。今回も同様のパターンを適用しました。私はixgbevfハードウェアを所有していません。このバグは静的解析(scan_drop_continue_loops.py+semgrepのdrop_continue_in_loopルールによる解析、最高スコアのマルチツール検証)で発見されました。Use-After-FreeはKASANの環境下で、正確なコードパターン(skbの確保、kfree_skb、続いてskb_shinfo(skb)->nr_fragsの読み取り)を再現するテストモジュールのロードによって確認されました: BUG: KASAN: slab-use-after-free in ixgbevf_uaf_test_init+0x100/0x1000 Read of size 8 at addr 000000006163ae78 by task insmod/30 freed 208-byte region [000000006163adc0, 000000006163ae90)QEMUはigb(82576)をエミュレートしていますが、ixgbe(82599)をエミュレートしておらず、さらにigbvf VFドライバーにはVEPAソースプルーニングのパスが含まれていないため、エミュレートされたハードウェア上での完全なエンドツーエンドの再現は不可能でした。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 3.19 以上 5.10.258 未満
  • Linux Kernel 5.11 以上 5.15.209 未満
  • Linux Kernel 5.16 以上 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. 解放済みメモリの使用(CWE-416) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-64113
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-64113
  2. 関連文書 : ixgbevf: fix use-after-free in VEPA multicast source pruning - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/e8768bcbe5cd30c4ea36a22022c9ffaa66903693)
  3. 関連文書 : https://git.kernel.org/stable/c/55b3e91d62b2f7a24109b2d7c9f4c66d2e3b1ec1
  4. 関連文書 : ixgbevf: fix use-after-free in VEPA multicast source pruning - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a244395d8c563ed1bb26c3ef708db6aeeaa08084)
  5. 関連文書 : https://git.kernel.org/stable/c/5d49b568c188dc77199d8d2b959c91da8cc27cf1
  6. 関連文書 : ixgbevf: fix use-after-free in VEPA multicast source pruning - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/6ef30384a50a50e4a484cddf341bc27de31aa3de)
  7. 関連文書 : https://git.kernel.org/stable/c/3d931ac62411a7e43b85dba5fe45e1a4a91bd5cb
  8. 関連文書 : ixgbevf: fix use-after-free in VEPA multicast source pruning - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/add70e2682c0ad3be2a5810bcf1bc13963ba4df9)
  9. 関連文書 : ixgbevf: fix use-after-free in VEPA multicast source pruning - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/dfef79e09ed2f5df975c98547f97f5d7f8982a24)
更新履歴

  • [2026年08月13日]
      掲載