【活用ガイド】

JVNDB-2026-027164

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

概要

ZephyrのBluetooth GATTクライアントにおけるCCC書き込み応答ハンドラ gatt_write_ccc_rsp()(subsys/bluetooth/host/gatt.c内)は、params->notify(conn, params, NULL, 0) を既に呼び出した後に、アプリケーションの params->subscribe() コールバックを呼び出していました。公開されているGATT APIに従うと、NULLデータのnotifyコールバックはサブスクリプションが終了したことを示す信号として文書化されており、この時点で bt_gatt_subscribe_params 構造体はアプリケーションによって解放または再利用可能になります。そのため、その後に構造体上で subscribe() を呼び出すことはuse-after-freeに該当し、解放済みの params->subscribe 関数ポインタを間接的に呼び出すことになります。このエラーの分岐はリモート(隣接)から到達可能であり、GATTクライアントとして動作するZephyrデバイスが bt_gatt_subscribe() を呼び出し、接続されたGATTサーバピアがCCC書き込みに対してATTエラー応答を返すと(ピア提供のエラーコードは att_error_rsp -> att_handle_rsp を経由して gatt_write_ccc_rsp に伝播します)、この並び順に誘導される可能性があります。通知終了ハンドラ内でサブスクリプションパラメータを解放または再利用するアプリケーションでは、これによりメモリ破損やクラッシュ(サービス拒否)、または攻撃者によって影響される制御フローの可能性が生じます。修正では、エラーおよび購読解除の両パスにおいて subscribe() コールバックを終了Notify(NULL)の前に実行するようハンドラの順序を変更しています。
CVSS による深刻度 (CVSS とは?)

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


Zephyr Project
  • Zephyr 2.4.0 以上 4.5.0 未満

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

・当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。
・当該ソフトウェアが扱う情報の一部が書き換えられる可能性があります。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

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

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

  1. CVE-2026-10685
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-10685
  2. 関連文書 : bluetooth: host: consistent notification of subscription termination  zephyrproject-rtos/zephyr@c7292f2  GitHub
更新履歴

  • [2026年08月10日]
      掲載