Linuxカーネルのserial: caifモジュールにおいて、ldisc_close()関数内でのuse-after-free脆弱性が修正されました。この脆弱性は、caif_serialのhandle_tx()関数がttyが解放された後にser-ttyにアクセスしてしまうことで発生し、ldisc_close()とパケット送信の間の競合状態が原因です。原因はldisc_close()の中でtty_kref_put()が呼ばれ、ネットワークデバイスがまだアクティブな状態にあるため、serとttyのライフサイクルが一致していなかったことにあります。この問題を解決するため、ttyの参照解放処理をunregister_netdevice()の後に移動し、ネットワークデバイスが存在する限りttyの参照を保持するように変更しました。こうしてuse-after-freeを防止しています。なお、再現方法としてldisc_close()の先頭にmdelay(500)を挿入し、再現性を高める手法が用いられています。
Linux Linux Kernel 3.11 以上 5.10.252 未満 Linux Kernel 5.11 以上 5.15.202 未満 Linux Kernel 5.16 以上 6.1.165 未満 Linux Kernel 6.13 以上 6.18.14 未満 Linux Kernel 6.19 以上 6.19.4 未満 Linux Kernel 6.2 以上 6.6.128 未満 Linux Kernel 6.7 以上 6.12.75 未満
・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 ・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 ・当該ソフトウェアが完全に停止する可能性があります。
リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。
解放済みメモリの使用(CWE-416) [NVD評価]
CVE-2026-45866
National Vulnerability Database (NVD) : CVE-2026-45866 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d3c75db4e0460641dbcd274b40867e252d801da1) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/331e2b7051635780edea248dd08ae2026c126f4a) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/52731ef4438155cea782fac74e547a327ab9e7c5) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/40962f2bf8cdba63af23aec95ad3f49b689e58e2) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/4e63d6f68544ae5269ac9735ae5b69b59b5b8725) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/308e7e4d0a846359685f40aade023aee7b27284c) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/5e266ba8d330d3b8e5bc198f238cd8901826cfa1) 関連文書 : serial: caif: fix use-after-free in caif_serial ldisc_close() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/c8c197aaa56b25a2d54f3aa07e27e228d6c08546)
[2026年06月26日] 掲載