はじめに
以前当ブログでWiresharkのインストール方法について解説しました。
そこで今回は実際にWiresharkをどのように使用するのか解説していきたいと思います。
Wiresharkを使用する際の注意
パケットキャプチャーをネットワーク上のどこで実施するかについては十分注意して下さい。
例えば上記のような構成の場合、何も設定しない場合はPCがキャプチャできるのはサーバ1とPC間のパケットのみとなります。
もしPCでサーバ1とサーバ2,3間のパケットをキャプチャしたい場合、PCを収容するL2スイッチのポートをミラーポートとして設定し、PCのNICをプロミスキャスモードに設定する必要があります。
ミラーポートは各ポートを通過するパケットをコピーしてポートの接続先に転送します。
プロミスキャスモードでは宛先MACアドレスが自端末以外の場合でもパケットを取り込みます。
また、無線LANを利用している場合も注意して下さい。
無線LANを利用している場合もPCがキャプチャできるのは自端末と通信相手間のパケットのみになります。
他端末の無線通信をキャプチャしたい場合は無線LANアダプタをモニターモードというモードに設定する必要があります。
Windowsの場合、モニターモードに対応する無線LANアダプタを探す必要がありますが(なかなかないようです・・・)、Macでは「スニファ」という機能を利用することで簡単にモニターモードでパケットキャプチャすることが可能です。詳しくはこちらの記事をご覧ください。
Wiresharkの使い方
以下のサメアイコンをクリックすることでパケットキャプチャを開始します。
キャプチャ画面は以下のようになります。
キャプチャ画面は上画像のように大きく4つのエリアに分かれています。
①はフィルターツールバーです。フィルターを用いてキャプチャした膨大なパケットから対象パケットを絞り込みます。今回はDNSプロトコルを指定しています。プロトコルや送信元、送信先IPアドレスなど様々な絞り込み方法がありますが、例としてWiresharkにデフォルトで登録されているフィルタを載せます。(Mac上部の「Capture」→「Capture Filters」で表示)
Wiresharkにおいてフィルターの使い方は非常に重要です。よく利用するフィルターについてはCapture Filtersの「+」ボタンで登録しておくと良いでしょう。
②はパケットリストです。ここではキャプチャしたパケットの一覧を見ることができます。
③はパケットディテールです。ここでは②で選択したパケットの詳細を見ることができます。
パケットディテールはこのようにTCP/IP参照モデルに沿って表示してくれます。「>」ボタンを押すと詳細を確認することができます。
ただし、TLS通信の中身を確認しようとしている場合は注意して下さい。通常、以下のようにデータ部が暗号化されており解析が困難です。
復号化した状態で解析するためにはWebブラウザーがTLSハンドシェイクのデータのログを保存しておき、Wiresharkで読み込む必要があります。詳しくはこちらの記事をご覧ください。
④はパケットバイトです。ここでは②でキャプチャしたパケットのバイト列を確認することができます。バイト(16進数)と文字列(ASCII)のペアで表示されているので注意して下さい。
終わりに
今回はWiresharkの使い方について基礎的な部分をお伝えしました。
まだ細かいテクニカルな部分はありますが、個別事例に合わせて学習すれば問題ないと思います。
ご清覧ありがとうございました。