【活用ガイド】

JVNDB-2025-025019

Debian等の複数ベンダの製品における解放済みメモリの使用に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。Bluetoothのl2cap_sock_cleanup_listen()におけるUse-After-Freeの問題を修正しました。syzbotが再現手段なしに以下のsplatを報告しました。splatでは、bt_accept_dequeue()を呼び出した単一スレッドがskを解放し、その後にアクセスしていました。根本原因は、該当コミットで追加された競合状態のあるl2cap_sock_cleanup_listen()の呼び出しだと考えられます。bt_accept_dequeue()はlock_sock()のもとで呼び出されますが、l2cap_sock_release()は例外です。二つのスレッドがbt_accept_dequeue()内のリストイテレーション中に同一のソケットを参照する可能性があります。CPU1ではsock_hold(sk)を行いlock_sock(sk)でclose()をブロックし、sock_put(sk)、bt_accept_unlink(sk)、sock_put(sk)、release_sock(sk)と進みます。一方、CPU2はlock_sock(sk)、sock_put(sk)、bt_accept_unlink(sk)、sock_put(sk)(最後の参照カウント)、bt_accept_unlink(sk)(Use-After-Free)へと進行します。タイミングによっては別のスレッドが"Freed by task"部分に現れることがあります。l2cap_sock_release()内のl2cap_sock_cleanup_listen()をlock_sock()の内部で呼び出すことで対処しています。具体的には、KASANによるUse-After-Free検出のトレースが示されており、spinlock_debug.cやnet/bluetooth関連ファイルの関数呼び出し順で問題が発生していました。これにより、BluetoothのL2CAPソケットのクリーンアップ処理中にUse-After-Free脆弱性が生じる問題を修正し、競合状態を防止するためのロック制御を強化しました。
CVSS による深刻度 (CVSS とは?)

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


Debian
  • Debian GNU/Linux 11.0
Linux
  • Linux Kernel 4.14.322 以上 4.15 未満
  • Linux Kernel 4.19.291 以上 4.20 未満
  • Linux Kernel 5.10.190 以上 5.10.243 未満
  • Linux Kernel 5.15.126 以上 5.15.192 未満
  • Linux Kernel 5.4.253 以上 5.4.299 未満
  • Linux Kernel 6.1.45 以上 6.1.151 未満
  • Linux Kernel 6.13 以上 6.16.6 未満
  • Linux Kernel 6.4.10 以上 6.6.105 未満
  • Linux Kernel 6.7 以上 6.12.46 未満
  • Linux Kernel 6.17

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

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

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

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

  1. 解放済みメモリの使用(CWE-416) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2025-39860
参考情報

  1. National Vulnerability Database (NVD) : CVE-2025-39860
  2. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/964cbb198f9c46c2b2358cd1faffc04c1e8248cf)
  3. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/306b0991413b482dbf5585b423022123bb505966)
  4. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/6077d16b5c0f65d571eee709de2f0541fb5ef0ca)
  5. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3dff390f55ccd9ce12e91233849769b5312180c2)
  6. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/47f6090bcf75c369695d21c3f179db8a56bbbd49)
  7. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/2ca99fc3512a8074de20ee52a87b492dfcc41a4d)
  8. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/83e1d9892ef51785cf0760b7681436760dda435a)
  9. 関連文書 : Bluetooth: Fix use-after-free in l2cap_sock_cleanup_listen() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/862c628108562d8c7a516a900034823b381d3cba)
更新履歴

  • [2026年01月22日]
      掲載