LoginSignup
69
58

More than 1 year has passed since last update.

パケット解析で役立つWiresharkの機能

Last updated at Posted at 2017-11-09

書籍「実践パケット解析」の中で役立つと感じた箇所をピックアップしています。

便利な機能たち

  • 統計[Statistics] -> 対話[Conversation]
  • 統計[Statistics] -> 終端[EndPoint]
  • 統計[Statistics] -> プロトコル階層[Protocol Hierarchy]

wiresharkFunctions

対話[Conversation]

IPアドレスとポートごとに分類して一覧表示されます。ここでは「どこから、どこへ向けて、どれだけの量のパケットが送られているか」を把握することが出来ます。

Conversation

グラフ

IOグラフ

変化が多いと不安定であることが伺えます。

ioGraph

ズームして細かく確認したいグラフの箇所をクリックすることで、パケット一覧の該当する箇所付近が選択されます。

ラウンドトリップタイムグラフ

ラウンドトリップグラフ(RTT)とは、「パケットの受信が確認されるまでにかかる時間」を表します。つまり、パケットが宛先に届き、その返答が自分に戻ってくるのにかかった時間のことです。

Statistics -> TCP Stream Graph -> Round Trip Time Graph

RTT

フローグラフ

Statistic -> Flow Graph

flowGraph

自動解析されたプロトコルが異なるとき

個別のパケットを選択してDecode as -> Transportで任意のプロトコルを選択する。

パケット長

  • イーサネットの最大フレームサイズ 1518バイト
  • これからイーサネット、IP、TCP HEADERを差し引いた1460バイトが7層のプロトコルヘッダ、データに使用可能

パケットのマーキング

  • マーキング: Ctrl + M
  • 次のマーキング: Shift + Ctrl + N
  • 前のマーキング: Shift + Ctrl + B

キャプチャ/BPF構文

BPF構文を使って作成したフィルタを「式」とよび、それぞれの式は1つ以上の「プリミティブ」で構成されている。プリミティブは1つ以上の「修飾子」とそのあとに続くID文字列または数値のセットから構成される。

修飾子の種類

  • Type(host, net, port)
  • Dir(src, dst)
  • Proto(ether, ip, tcp, udp, http,ftp)

dst host 192.168.0.10 && tcp port 80

論理演算子

  • AND(&&)
  • OR(||)
  • NOT(!)

ホスト名とアドレスによるフィルタ

IPv4の場合

host 172.16.16.149

IPv6の場合

host 2001:db8:85a3:8a2e:370:7334

ホスト名

host testserver2

Macアドレスでも指定可能

src host 00-1a-a0-52-e2

ポートとプロトコルによるフィルタ

ポート8080

port 8080

宛先がポート8080

dst port 8080

IPv6を除外

!ip6

プロトコルフィールドによるフィルタ

到達不能のメッセージ(タイプ3)

icmp[0] == 3

Pingパケット(ICMP)

icmp[0] == 8 || icmp[0] == 0

ICMPのタイプ3、コード1(ホスト到達不能)パケット

icmp[0:2] == 0x0301

RSTフラグがセットされたTCPパケット

tcp[13] &4 == 4

よく使うフィルタ

フラグがセットされた TCPパケット

tcp[13] &XXX == XXX

  • URG: XXX=32
  • ACK: XXX=16
  • PSH: XXX=8
  • RST: XXX=4
  • SYN: XXX=2
  • FIN: XXX=1

TCP SYN-ACKパケット

tcp[13] == 18

指定したMacアドレスで送受信されるトラフィック

ether host 00:00:00:00:00:00

ブロードキャストパケット

broadcast

フィルタ式の文法

演算子

  • 等しい ==
  • 等しくない !=
  • 大なり >
  • 小なり <
  • 以上 >=
  • 以下 <=

論理演算子

  • 論理和 and
  • 論理積 or
  • 排他的論理和 not
  • 否定 xor

ポート

  • 1-1023 スタンダードポートグループ
  • 0 は予約済みなので除外
  • 1024-65535 エフェメラルポートグループ(日本ではウェルノウンポート)
69
58
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
69
58