【Wireshark】キャプチャしたパケットのデータ部を抽出する方法

Wiresharkは、ネットワーク上に流れているパケットを「見える化」するツールです。パケットキャプチャ、ネットワークアナライザ、プロトコルアナライザなどと呼ばれたりします。

Wiresharkは便利なツールなんですが、使い方がいまいちよく分からなかったりします・・・

  • Wiresharkでデータ部のみを抽出したい
  • Wiresharkでデータ部を抽出する方法を知りたい
  • Wiresharkでデータ部を抽出する方法が分からない

この記事では、上記のような問題や悩みについての原因や解決策について解説します。

Wiresharkでデータ部を抽出する方法

環境・前提条件

今回の記事は以下のような環境で検証してます。

  • ゲストOS:Kali Linux (Xfce Version 4.16, 言語:英語)
  • ホストOS:Windows10 Pro (バージョン 21H1)
  • 仮想化ソフト:VMware(R) Workstation 15 Player (バージョン15.5.7)

Wiresharkでデータ部を抽出する方法(手順)

  1. Wiresharkを起動
    インタフェースは「eth0」または「any」を選択

  2. ブラウザを起動して適当なURLへアクセス
    今回は「google.com」へアクセスします。

  3. Wiresharkのパケットキャプチャを停止
    Wireshark パケットキャプチャを停止

  4. Wiresharkでキャプチャしたパケットを「http」でフィルタリング

    Wireshark httpでフィルタリング

    ※「OCSP」のプロトコルしか表示されない場合は、ブラウザ履歴をクリア後に、再度、手順2から試してみてください。
     ブラウザ履歴の手順:
      ブラウザの右上のメニュー → [History]-[Clear Recent History]-[Time range to clear]を[Everything]にして[OK]を押す

  5. Wiresharkでデータ部を抽出

    今回は「Follow TCP Stream機能」を使います。

    抽出した行を選択(❶)、[Follow]-[TCP Stream]を選択(❷)します。

    Wireshark データ部を抽出

  6. Wiresharkでデータ部を抽出

    上記の操作で、指定されたTCPパケットが含まれるセッションとそのデータ部分が抽出・表示されます。
    ・Wireshak上では、フィルタが自動で「tcp.stream eq 21」となり、TCPセッションのデータ部が抽出される(❸)
    ・この時、データ部の生データは青色で表示される(❹)

    Wireshark データ部が抽出される

  7. Wiresharkで抽出したデータ部をファイルに保存
    [Save as…]ボタンで任意のフォルダに保存します。

    Wireshark データ部を抽出

まとめ

  • Wiresharkで抽出したいセッションなどをフィルタリング
  • 「Follow Stream」機能でデータ部を抽出