wiresharkはパケット(フレーム)をキャプチャするツールです。これを分析して不審な通信が行われていないか監視します。莫大な量の通信データが得られるのでその効率的な解析には様々な工夫が必要です。
パケットとフレームはほぼ同じ意味ですが厳密には、パケットはL3以上、フレームはL2で使います。(OSI参照モデル)
これを簡単に言えば小包(パケット)の最終的な宛先を意識する場合には「パケット」、とりあえず次に送る隣の宛先を意識する場合には「フレーム」です。
またはルーター(スイッチ)を乗り越えてその先にデータが移動する場合は「パケット」、乗り越えるまでの近隣のデータ転送の場合は「フレーム」と表現します。
しかしながら、本記事では分かりやすく両者をパケットと表記します。
Wiresharkの起動
Kali – 09 Sniffing & Spoofing – wireshark で起動します。
現在のバージョンは4.0.3です。
最初にルート権限を求められますのでパスワードを入力します。
キャプチャするインターフェースを選ぶ
起動した状態です
上の窓が表示フィルタ(後述)、下の窓がキャプチャフィルタ(後述)です。
その下にLANアダプターの選択欄があります。Linuxではインターフェース名が表示されています。(要は有線LAN、wifi、bluetoothなどのうち、どの通信を選ぶのかを決定する訳です。)
wifiの場合はwlan0なので、このwlan0をダブルクリックすると選択されてそのインターフェースからのパケットのキャプチャが始まります。
キャプチャの開始と終了、保存
キャプチャが開始されると画面が切り替わり下のような画面になります。
上段に並ぶのアイコンの説明
- 一番左はキャプチャスタートボタン(サメの背ビレ)
- 次はキャプチャストップボタン(正方形)
- その次は再スタートボタン(サメの背ビレ)
- 左から6番目が保存ボタン
- その他カーソルを当てるとそれぞれ説明が出ます。
なお保存したファイルの操作にもルート権限が必要です。ルート権限で作業するか、もしくは権限の変更を行います。
キャプチャしたパケットの分析
画面は大きく3分割されており、上段がパケットの並ぶ欄となります。1行が1パケットに相当します。ここからどれか1行を選択すると、そのパケットの内容が下段に表示されます。
左下が詳細表示で、右下が生データです。
詳細については別記事で取り上げる予定です。
フィルタについて
あっという間に大量のパケットデータが貯まってしまうので、フィルタを使用して目的のパケットを絞り込みます。
フィルタには前述の通り2種類のフィルタがあります。両者とも入力欄のすぐ左の見出しアイコンをクリックすると入力例が表示できます。
表示フィルタ
収集したパケットの中から、条件に合うパケットを選別表示します(合わないものは対象外として保持されます)
キャプチャフィルタ
予め条件を決めておき、特定の条件のパケットのみ選別して収集します(パケットの総量は少なくて済みます)
キャプチャオプションについて
メニューのキャプチャーオプションを開くと、キャプチャ時の設定ができます。
promiscuousモード
入力タブのプロミスキャス欄にチェックをつけると、お隣さんのPC(ルーターやスイッチで隔てられていない近隣のPC)への通信データ(つまり自分宛ではないデータ)をも取得するモードとなります。
デフォルトではチェックが入っています。
注意)有線での他人の情報の盗聴は犯罪です。他者に対しては絶対に行わないで下さい。
保存形式
同じく出力タブには、保存形式としてpcap-ng方式とpcap方式が選択できます。デフォルトはpcap-ng方式になっておりこちらへの移行が進んでいるようですが、pcap方式で解析処理を行うツールも多いようです。
まとめ
wiresharkはパケットのキャプチャそのものは容易ですが、そのデータの分析作業には様々なノウハウが必要のようです。
コメント