EEN_BT02J-Bluetooth解析-チュートリアル

Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Bluetooth 解析 - チュートリアル はじめに この文書では、Ellisys Bluetooth 解析ソフトウェアの機能を簡単に紹介します。
サンプル キャプチャ Ellisys Bluetooth 解析ソフトウェアの評価を行う最も簡単な方法は、ソフトウェアに含まれるサンプルファイルを
見ることです。これらのサンプルファイルはメニュー File - Load sample でロードすることができます。
それでは、ヘッドセットと携帯電話間のトラフィックをキャプチャしたサンプルファイル HfpSco.btt で始めましょ
う。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
1
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Protocol Overview(プロトコル オーバービュー)
Ellisys のオーバービューは、この解析ソフトウェアの中心となるものです。これはキャプチャされたトラフィックを
プロトコル層から最上位層までの各層をグループ化して表示します。各媒体(クラシック Bluetooth BR/EDR, Low
Energy , HCI)は同時にキャプチャされ(HCIは開発中)それぞれのオーバービューで表示されます。次のスクリー
ンショットはクラシック Bluetooth トラフィックの例です。
次のスクリーンショットは Low Energy トラフィックの例です。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
2
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Ellisys のオーバービューは、簡単に読めるように作られました。トラフィックはプロトコル層内に階層的に集めら
れツリー形式で表示されます。プロトコルの階層はツリーのノードを用いて簡単にレビューできます。下のスクリー
ンショットを用いてレビューしてみましょう。AT コマンド、AT レスポンス、AT ハンドシェークからなる AT HFP ト
ランザクションが見えます。各 AT パケットは、ベースバンドの L2CAP 上の RFCOMM フレームで送られてい
ます。これらの階層は BR/EDR オーバービューで非常に簡単に確認することができます。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
3
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Detail View(ディテール ウィンドウ)
オーバービューで選択された行の詳細は、ディテール ウィンドウで確認する事ができます。下のスクリーンショ
ットは、SDP サービス サーチ トランザクションの詳細を表示しています。SDP 情報のみならず、下位層(例えば
L2CAP とベースバンド)の情報も表示されています。デフォルトでは下位層の情報は折りたたまれて要約されて
いますが、それぞれの詳細を確認するために展開することができます。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
4
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
SDP トラフィックを詳しく見てみると、有効なサービス クラスとプロトコル ディスクリプタを検知するためにマスタ
ーが SDP サービス サーチ リクエストを送出しているのがわかります。その応答として返された情報が効果的な
方法で明確に表示されています。もし、あなたが SDP を知っていれば、この動的な構造を記述するためには多
くのフィールドを必要とする、とても柔軟なプロトコルであることもご存じでしょう。先のスクリーンショットはとてもシン
プルに見えますが実際にその通りです。デフォルトでは、Ellisys ソフトウェアは最も必要と思われる関連情報のみ
を表示し、一般的に通信を理解するために有効でない情報、例えば CRC、長さ、予約フィールドなど は表示し
ません。もちろん、必要に応じてこれらの情報を表示することもでき、何か問題(例えば不正 CRC )がある場合に
はそのフィールドを自動的に表示します。以下は全の SDP イベントを展開したものです。灰色の行はデフォル
トで表示されないものです。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
5
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Protocol Toolbar (プロトコル ツールバー)
先に見たように、オーバービューは一つの画面で全てのプロトコルを解り易く表示します。これはイベントの流
れを理解する場合に非常に有効です。例えば、ページング、L2CAP 接続、RFCOMM 確立と AT トラフィックな
どが簡単に見えます。しかし、特定のプロトコルやトラフィックに対して注目したいことが時々あります。その様な場
合に非常に便利な機能が 2つあります。一つはこのセクションで説明するプロトコル ツールバーで、もう一つは
次のセクションで説明するインスタント フィルタです。
それぞれのオーバービューにあるプロトコル ツールバーはワンクリックでプロトコルレベルを切り替えるとても便
利なものです。デフォルトでは “All layers” ボタンが有効になっていて全てのプロトコル レイヤーを一度に表示
します。イベントのシーケンスを理解するのにはとても便利ですが、時々一つのプロトコル レイヤーのみを表示し
た方が便利なこともあります。例えば AT がどのように進行しているか見たい時、AT ボタンをクリックするだけで
次のスクリーンショットを得ることができます。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
6
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
そして、LMP をチェックしたいと思ったら、LMP ボタンをクリックするだけで次のスクリーンショットが得られま
す。
お気づきだと思いますが、カラムは各プロトコルで独立して構成されるので、同時に複数のプロトコルを広域に
わたって調べる時に非常に便利です。カラムだけではなく、プロトコル固有フィールドのインスタント フィルタも自
動的に切り替えられます。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
7
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Instant Filters(インスタント フィルタ)
カラム単位のインスタント フィルタは、表示フィルタをオーバービューに迅速に適応する極めて効率的な機能
です。これらのフィルタは、シンプルなテキスト パターンでワイルドカード (*) も使用できます。例を見てみましょ
う。AT と SCO オーディオトラフィックのみを表示したいとします。単純に “at, audio” を インスタント フィルタ
ボックスの Item カラムに入力します。これで次のスクリーンショットのように “at” または “audio” で始まる行の
みが表示されます。
さらに、“!at, audio” のように NOT サイン (!) を用いることで表示させないこともできます。これで “at” また
は “audio” で始まる行のみが非表示となり、その他のトラフィックが全て表示されます。
‘*’ (0 以上の文字数に対応)や ‘?’ (1文字対応)といったワイルドカードもサポートされています。例えば、
“*ev3” と入力すると“*ev3” を含む全ての行が合致します。
レンジ(間隔)も数値カラムではサポートされます。レンジは start..stop のかたちで指定されます。例えば、0秒
と1秒の間に発生した項目のみを表示するには、単純にインスタント フィルタ ボックスの Time カラムに “0..1”
と入力します。
フィルタを指定するより簡単な方法は、指定行の指定カラムを右クリックすることで、それにより選択され項目に
応じてトラフィックを保持するか除外するかの選択メニューが現れます。 _______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
8
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Filtering by Device(デバイス フィルタ)
全チャネル同時記録スニッファを用いた場合、エリア内の全てのデバイスが出すトラフィックがキャプチャされま
す。ただ一つのデバイスや通信のみに注目したい場合、デバイス フィルタの適用は極めて有効です。Ellisys ソ
フトウェアは、このフィルタ機能をデバイス トラフィック ウィンドウで迅速かつ簡単に実現しています。
デフォルトでは、全てのデバイスが表示されます。フィルタ ウィンドウはトレースでキャプチャされた全てのデバ
イスを、それらの間で確立された通信のリストとして表示します。希望の通信に関連するものだけを表示する簡単
な方法は、デバイス名(または LMP 名)、Company ID、またはBD_ADDR をフィルタ ボックスに入力することで
す。部分的な文字入力も可能です。入力された文字にマッチするものだけがリストに表示され、それらをフィルタ
することができます(そして、オーバービューの表示項目が少なくなります)。
特定デバイス間のトラフィックのみを保持するためにデバイスは左のエリアに追加することができます。もし、一
つのデバイスが指定された場合、そのデバイスに関する全ての送受信トラフィックが表示されます。複数のデバイ
スが指定された場合、それらのデバイス間トラフィックが表示されます。
オーバービューのカスタマイズ
オーバービューでエンジニアの思い通りにフィルタをかける事ができるのはいいのですが、様々なプロトコルに
合うようにカスタマイズできなければ有益ではありません。Ellisys ソフトウェアでは、非常に簡単な方法でカスタマ
イズできます。ディテール ウィンドウからフィールドを選択し、オーバービューにドラッグ&ドロップするとオーバー
ビューに新しいカラムが即座に現れます。これは、インスタント フィルタと組み合わせると特に強力な機能となりま
す。以下のスクリーンショットは、 TCP トラフィックを確認すするためにオーバービューをカスタマイズしたもので
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
9
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
す。IP アドレスと TCP ポートがディテール ウィンドウからドラッグ&ドロップされました。
この機能のすごいところは、オーバービューに新しいカラムを作るためにディテール フィールドを追加するとす
ぐにフィルタ、検索、カラーリング、エクスポート等が使用出来るようになることです。これはあらゆる可能性を開き
ます。何かが表示された時、それはすぐに使用できます。もはやフラストレーションはありません。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
10
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
サーチとカラーリング アイテムは検索やカラーリング(ハイライト)することができます。この最も簡単な検索機能はオーバービューの
右上に配置されたサーチ ボックスで、インスタント サーチと呼ばれます。このボックスに入力されたテキスト パタ
ーンでオーバービューの全てのアイテムやカラムを検索します。
より細かな条件での検索は、CTRL + F でオープン可能なサーチ ダイアログで実現します。データもテキスト
やフィールド同様に検索されます。より拡張された検索を行うために、検索条件を結合することができます。同じ
条件で検索されたアイテムをカラーリングしたりカウントしたりすることもできます。
以下のスクリーンショットは、IpSrc が 172.10.20.3 で SrcPort が http: のものをカラーリングするよう指定され
たサーチボックスを表示しています。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
11
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
そして、その結果です。
このカラーリングは、指定カラムの行を右クリックして Colorize を選択することでも可能です。
Instant Timing (インスタント タイミング)
インスタント タイミングはベースバンド パケットを正確な時間情報と共に表示します。
このビューはマウス ホイール、キーボードの上下矢印キー、またはズームバーのドラッグでズームすることがで
きます。ビューはスケールバーのドラッグ、またはキーボードの左右矢印キーで移動することができます。マウスを
パケットの上に置くと自動的にパケットの詳細情報を表示します。マウスをパケットエリア内でドラッグすると時間計
測用のカーソルが現れます。
インスタント タイミングのダイナミックレンジは驚異的な高さを誇ります。ビューは百ナノ秒の精度(正確には
125ns、1/8 シンボル)で詳細を表示することができます。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
12
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
また、数百秒間のトラフィックを表示することもできます。
このビューは、デフォルトで“by master device”モードになっていますので、各行はマスターデバイスまたはスレ
ーブデバイスが送出したトラフィックで構成されます。ビューは、インスタント タイミング内のツールバーの Display
メニューボタンを用いて、代わりに “by RF channel” モードで構成することも可能です。この場合、次のスクリーン
ショットのようにパケットは周波数/RF チャネル順に並びます。
接続確立時のトラフィック(照会、ページング、アドバタイズメント等)やアイドル トラフィック(POLL / NULL パ
ケットやエンプティ パケット)を表示しないようにするための表示フィルタも、同様に Display メニューから選択す
ることができます。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
13
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
Instant Piconet(インスタント ピコネット) インスタント ピコネットは、キャプチャした全てのピコネットとスキャッタネットのトポロジーをグラフィカルに表示
するためにデザインされました。インスタント ピコネットは、トポロジーに加えて照会やページングのイベント、アク
ティブな ACL と SCO 接続のデータスループットを表示します。このビューは、Ellisys ソフトウェアの全てのビュ
ーと同じくライブ(キャプチャ中)でも動作し、キャプチャされたトラフィックの再生のための プレイバックモード(開
発予定)でも使用することができます。
以下のスクリーンショットは、インスタント ピコネットで表示された、かなり複雑なスキャッタネットです。
全てのビューはお互いにリンクしているので、オーバービューで選択されたイベントが変わるとインスタントピコ
ネットもそのポジションに変わります。インスタント ピコネットのタイムスタンプをクリックすると、オーバービューを同
期させます。インスタント タイミングは、インスタント ピコネットの正確な時間を表示する特別のカーソルを持って
います(このカーソル移動でインスタント ピコネットは更新されます)。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
14
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
インスタント ピコネットで見られる様々な表現を簡単にまとめました。
マスター・スレーブ間の アイドル接続 を表しています。マスターは常に
青い外周を持っています。スレーブは常に黒い外周を持っています。横
にあるゲージはデバイスの RSSI を表しています。
アクティブなデータ接続 を表し、スループットが表示されます。
2つのシンプルなピコネットからなる スキャッタネット を表しています。中
央のデバイスは右のデバイスのスレーブで、左のデバイスのマスターで
す。
照会 を表しています。照会者はマスターのように青い外周で表され、応
答デバイスは黒い外周で表されます。
ページング を表しています。ページング(呼び出し)・デバイスはマスター
のように青い外周で表され、ページド(待ち受け、スキャン)・デバイスは黒
い外周で表されます。
トラフィックのキャプチャ
クリーンなキャプチャを取るための適切なコンフィグレーションと操作についての詳細は、Ellisys の Expert
Note “Your First Wide-Band Capture” を参照してください。
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
15
Ellisys Bluetooth Expert Notes
EEN_BT02 – Bluetooth Analysis Tutorial
________________________________________________
ソフトウェアの入手
ソフトウェアは、以下の Ellisys の Web サイトからリクエストをすることで入手することができます。
http://www.ellisys.com/products/bex400/download.php
ダウンロードには承認が必要ですが、Bluetooth SIG または Bluetooth 開発に真剣に関連しているほとんど全
ての会社は承認されます。
フィードバック
本文書は、Ellisys Bluetooth Expert Notes “EEN_BT02 – Bluetooth Analysis Tutorial Rev. B. 2011-12-20” を
翻訳したものです。原文、本文書及び Ellisys 製品に関するお問い合わせは、Ellisys 日本総代理店 ガイロジッ
ク株式会社 [email protected] までご連絡ください。
Ellisys Bluetooth エキスパート ノート和文 (Expert Notes原文)
・EEN_BT01J - トラフィックの正しい解析方法 (EEN_BT01 – Capturing Bluetooth Traffic, the Right Way)
・EEN_BT02J - Bluetooth 解析 - チュートリアル (EEN_BT02 – Bluetooth Analysis Tutorial)
・EEN_BT03J - 初めてのワイド バンド キャプチャ (EEN_BT03 - Your First Wide-Band Capture)
・EEN_BT04J - Bluetooth アナライザの正しい配置 (EEN_BT04 – Optimal Placement of Your Analyzer)
・EEN_BT05J - アンテナの輻射パターンについて (EEN_BT05 – Understanding Antenna’s Radiation Pattern)
・EEN_BT06J - Bluetooth セキュリティのウソ?ホント? (EEN_BT06 - Bluetooth Security - Truths and Fictions)
・EEN_BT07J - Secure Simple Pairing について (EEN_BT07 - Secure Simple Pairing Explained)
_______________________________________________
EEN_BT02 – Bluetooth 解析 - チュートリアル
16