Wireshark を使用したネットワーク分析

WiresharkWiresharkBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、サイバーセキュリティ分野における強力なツールである Wireshark を使って、ネットワーク分析の面白い世界に入りましょう。デジタルな探偵のように、コンピュータネットワーク上で起こっている複雑な会話を理解することが課題です。表面下で本当に何が起こっているのかをどうやって見るのでしょうか。ここで Wireshark が役に立ちます。

Wireshark はネットワークトラフィックの顕微鏡のようなものです。ネットワークを横切って移動するデータをリアルタイムでキャプチャし、調べることができます。この機能は、ネットワークの問題のトラブルシューティング、異常な活動の検出、アプリケーションがどのように通信するかを理解するために不可欠です。

この実験が終わるとき、以下のことに関する実践的な経験を身につけています。

  1. Wireshark のインストールとセットアップ
  2. ネットワークトラフィックのキャプチャ
  3. パケットデータの分析
  4. ネットワークキャプチャのフィルタリング
  5. 一般的なプロトコルの識別

ネットワーク分析の魅力的な世界に突入しましょう!

Wireshark のインストール

このステップでは、Ubuntu システムに Wireshark をインストールします。Wireshark は Ubuntu のデフォルトのリポジトリにあり、インストールプロセスは簡単です。

  1. まず、ターミナルを開きましょう。デスクトップ上で、Xfce ターミナルを見つけて開きます。
Opening Xfce Terminal window

注:無料ユーザーはインターネットに接続できないため、実験環境には既に Wireshark が事前にインストールされています。独自で Wireshark をインストールして練習するには、プロユーザーにアップグレードしてください。

Pro ユーザー限定
  1. 利用可能なソフトウェアに関する最新情報を確認するために、パッケージリストを更新しましょう。次のコマンドを実行します:
sudo apt update
  1. パッケージリストが最新になったので、Wireshark をインストールしましょう。次のコマンドを入力します:
sudo apt install wireshark -y
  1. インストール中に、非スーパーユーザーがパケットをキャプチャできるように許可するかどうか尋ねられます。矢印キーを使って「はい」を選択し、Enter キーを押します。これにより、root として実行する必要なく Wireshark を使用できるようになり、より安全になります。
Wireshark installation prompt
  1. インストールが完了したら、Wireshark のバージョンを確認することで、Wireshark が正しくインストールされたことを確認します:
wireshark --version

Wireshark のバージョン番号が表示される出力が表示されるはずです。

  1. パケットをキャプチャするための必要な権限があることを確認するには、ユーザーをwiresharkグループに追加します:

まず、wiresharkグループが存在するかどうかを確認します:

getent group wireshark

wiresharkグループが存在しない場合は、以下のコマンドでグループを作成します:

sudo groupadd wireshark

デフォルトでは、Wireshark は非 root 権限で実行されます。これにより、特定のインターフェイスやプロトコルからパケットをキャプチャする能力が制限される場合があります。Wireshark と一緒にインストールされる Dumpcap ツールを使って、Wireshark に必要な権限を与えるには、次のコマンドを使用します:

sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 4755 /usr/bin/dumpcap
sudo gpasswd -a $USER wireshark

おめでとうございます!ネットワークアナリストのツールキットの中で最も強力なツールの 1 つをインストールしました。

ネットワークトラフィックのキャプチャ

Wireshark をインストールしたので、いくつかのネットワークトラフィックをキャプチャしましょう。これは、ネットワークインターフェイスを通って流れるすべてのデータパケットを捕まえるための網を張るようなものです。

  1. ターミナルに「wireshark」と入力し、Enter キーを押して Wireshark を開きます。
  2. Wireshark が開くと、ネットワークインターフェイスの一覧が表示されます。「eth0」または「eth1」と表示されるインターフェイスを探します。これらは通常、主なネットワークインターフェイスです。
    Wireshark interface selection
  3. インターフェイスをダブルクリックしてパケットのキャプチャを開始します。メインウィンドウにパケットの流れが表示され始めます。
    Wireshark packet capture window
  4. キャプチャするためのトラフィックを生成しましょう。新しいターミナルウィンドウを開き、次のコマンドを入力します:
    curl http://example.com
    このコマンドは、example.com のウェブページを取得し、いくつかの HTTP トラフィックを生成します。
  5. 数秒間キャプチャした後、Wireshark ウィンドウの上部にある赤い四角の「停止」ボタンをクリックしてキャプチャを停止します。
  6. 初めてのバッチのネットワークトラフィックをキャプチャしました!キャプチャの各行は、ネットワークを越えて送信される小さなデータ単位であるパケットを表しています。
  7. このキャプチャを後で分析するために保存するには、ファイル > 保存に移動し、ホームディレクトリ(/home/labex)にmyfirstcapture.pcapngとしてファイルを保存します。
    Saving network capture file

ネットワークトラフィックをキャプチャするこのプロセスは、ネットワーク分析にとって基本的です。次のステップでは、このデータをどのように理解するか学びます。

パケットデータの分析

ネットワークトラフィックをいくつかキャプチャしたので、データに突入して何がわかるか見てみましょう。

  1. Wireshark で保存したキャプチャファイルを開きます。ファイル > 開くに移動し、ホームディレクトリからmyfirstcapture.pcapngを選択します。または、ファイルをダブルクリックして開きます。
  2. 上部のペインには、キャプチャしたすべてのパケットの一覧が表示されます。各行は 1 つのパケットを表し、送信元と宛先の IP アドレス、使用されるプロトコル、そして簡単な情報フィールドなどの情報が含まれています。
  3. パケットをクリックして選択します。中央のペインには、パケットの詳細が異なるプロトコル層に分解されて表示されます。これは玉ねぎを剥ぐようなもので、各層がパケットに関するさらに多くの情報を明らかにします。
  4. HTTP トラフィック(ウェブブラウジング)を探しましょう。ウィンドウ上部のフィルターバーに「http」と入力し、Enter キーを押します。これにより、HTTP パケットのみが表示されます。
    Wireshark HTTP packet filter
  5. 情報フィールドに「GET」があるパケットを見つけます。これはウェブページの要求を表しています。クリックして詳細を調べます。
    HTTP GET packet details
  6. パケットの詳細ペイン(中央)で、「Hypertext Transfer Protocol」セクションを展開します。ここでは、要求された特定のページを含む HTTP 要求の詳細が表示されます。
  7. 次に、サーバーの応答を探しましょう。情報フィールドに「HTTP/1.1 200 OK」があるパケットを見つけます。これはウェブサーバーからの正常な応答を表しています。
    HTTP server successful response packet
  8. このパケットの詳細を調べます。「Line-based text data」セクションでウェブページの内容が見えるかもしれません。

この分析プロセスは、ネットワークの動作を理解するために重要です。会話のログを読むようなもので、誰が誰と話しているのか、何を言っているのか、そしてどのように言っているのかがわかります。

フィルタの使用

Wireshark の本当の力は、大量のネットワークデータを迅速にフィルタリングして分析する能力にあります。このステップでは、特定の種類のトラフィックに焦点を当てるためのフィルタの使い方を学びましょう。

  1. Wireshark でキャプチャファイルを開いた状態で、いくつかの簡単な表示フィルタを使ってみましょう:
    • TCP トラフィックのみを表示するには、フィルタバーに「tcp」と入力し、Enter キーを押します。
    • 特定の IP アドレスへのトラフィックまたはその IP アドレスからのトラフィックを表示するには、「ip.addr == 93.184.215.14」と入力します(これは example.com の IP アドレスですが、キャプチャで見つけた任意の IP アドレスに置き換えることができます)。
      Wireshark TCP filter example
    • すべての HTTP GET 要求を表示するには、「http.request.method == "GET"」と入力します。
  2. もっと複雑なフィルタを作成しましょう。example.com へのすべての HTTP GET 要求を探します:
    • フィルタバーに入力:「http.request.method == "GET" && http.host contains "example.com"」
      Wireshark HTTP GET filter
    • このフィルタは、「example.com」を含む任意のドメインへのすべての GET 要求を表示します。
  3. Wireshark では、後で使用するためにフィルタを保存することもできます。HTTP GET フィルタを保存しましょう:
    • フィルタバーの横にあるプラス記号(「+」)をクリックします。
    • フィルタに「HTTP GETs」と名前を付け、保存をクリックします。
    • これで、保存済みフィルタのリストから選択することで、いつでもこのフィルタを迅速に適用できます。
  4. 最後に、調査結果の一部をエクスポートしましょう。統計 > HTTP > 要求に移動し、次に「名前を付けて保存」をクリックして、HTTP 要求の一覧をファイルにエクスポートします。
    • /home/labexを選択し、ファイルを「http_requests.txt」として保存します。
      Exporting HTTP requests list

このようにフィルタを使用することで、大量のネットワークデータを迅速に篩い分けて、重要なものに焦点を当てることができます。まるで超高性能の拡大鏡があるかのように、特定の種類のネットワークトラフィックをすぐに表示してくれます。

まとめ

この実験では、Wireshark を使ってネットワーク分析の世界に初めて足を踏み入れました。以下のことを学びました:

  1. Linux システムに Wireshark をインストールして設定する方法
  2. ネットワークトラフィックをキャプチャして分析用に保存する方法
  3. パケットデータを調べてネットワーク会話を理解する方法
  4. 特定の種類のトラフィックに焦点を当てるためにフィルタを使用する方法

これらのスキルはネットワーク分析の基礎を形成しており、サイバーセキュリティやネットワーク管理に興味のある人にとって非常に重要です。あなたが旅を続けるにつれて、Wireshark はネットワークの動作を理解し、問題のトラブルシューティング、さらにはセキュリティ脅威の検出に役立つ非常に貴重なツールであることがわかります。練習と探求を続けてください。ネットワーク分析の魅力的な世界では、いつも学ぶことがあります!

Wireshark とネットワーク分析の理解を深めるには、LabEx の「Wireshark のクイックスタート」コースをチェックしてください。このコースでは高度なトピックがカバーされており、この強力なツールをマスターするための実践演習も含まれています:https://labex.io/courses/quick-start-with-wireshark

Wireshark コースの表紙画像