
BLE-Replayは、Bluetooth Low Energy(BLE)ペリフェラル評価ツールです。
BLE-Replay は、Bluetooth Low Energy (BLE) ペリフェラル評価ツールです。モバイルデバイスから Bluetooth HCI ログを取得/消費し、セントラルがペリフェラルに対して行うすべての書き込みを抽出します。
このデータは、Linux ホスト上のほとんどの Bluetooth ドングルを使用して再生 (リプレイ) できるほか、変更のためにディスクに保存することもできます。このツールを使えば、wireshark でデータを抽出したり、gatttool などのツールでスクリプトを組んだりすることなく、すぐにペリフェラルのテストを開始できます。デバイスに対してテストする独自のキャラクタリスティック書き込みシーケンスを手作業で作成でき、バイトレベルのファジングにも対応しています。
このツールは、モバイルアプリが BLE デバイス上の一部のキャラクタリスティックに書き込みを行い、何らかの機能を設定/ロック解除/無効化したり、デバイス上で他の状態変更アクションを実行したりする場合に役立ちます。
Linux と BlueZ スタック。
BLESuite -> https://github.com/nccgroup/BLESuite
python ble-replay.py -h
["000e", "58e96f71ac901b55", [0,1,5,7], 2]
["002c", "627474686f6c65", [], 1]
["0002", "01", [0], 40]
各行には、次の 4 つのパラメータからなる JSON リストが含まれます。
Android デバイスから HCI ログを取得し、そのままリプレイします。
python ble-replay.py -f -r
コンピュータ上の HCI ログを解析し、そのままリプレイします。
python ble-replay.py -p btsnoop_hci.log -r
Android デバイスから HCI ログを取得し、変更可能なリプレイデータをディスクに書き込みます。
python ble-replay.py -f -of replaydata.json
必要に応じて 16 進値を変更し、次のコマンドでそのファイルを再生します。
python ble-replay.py -if replaydata.json -r