第4回 パケットキャプチャ術で秘密もちょっぴりこぼれた?
NTTデータ先端技術株式会社
辻 伸弘
2010/6/28
Wiresharkのコマンドライン版「tshark」で知る、平文通信の危険性。膨大なログから狙った1行を検索するテクニック、身をもって体験せよ!(編集部)
新社会人の皆さんは、そろそろ通勤ラッシュにも慣れてきたころだろうか。配属先が決まった方、目下研修中といった方、すでにお客様先に行っている方、さまざまだろう。筆者も新社会人のころは、毎日が発見で新鮮だったと記憶している。筆者は幸い、「5月病」にはならなかったが、新しい生活にも慣れてくると、ふとした瞬間に気が抜けると知らず知らずのうちにたまっていたストレスが一気に出ることもある。皆さんがこの記事を読むころには、すでに6月も後半を迎えていることと思うが、引き続き気を付けていただきたい。
筆者は社会人になる前も、なってからも、そしていまでも「さて、何をしよう? 何で楽しもう?」と、暇さえあれば考えるようにしている。もしかしたら、これが「5月病」にならなかった理由かもしれない。
今回は、期待を胸に社会に飛び出してきた皆さんにささやかではあるが「パケットキャプチャ術」の情報を提供したいと思う。もちろん、業務上パケットとなじみがあまりない方や、最近このようなツールに触れていない方もいらっしゃるだろう。そんな方も読んでいただければ幸いである。
コマンドラインを使い、自在にパケットを取り出す
パケットキャプチャと聞いて、どのようなソフトウェアを思い浮かべるだろうか。硬派に「tcpdump」、ベタに「Wireshark」(旧Ethereal)だろうか。今回はWireshark付属のコマンドライン「tshark」を取り上げる。tsharkはWiresharkに比べ分析能力には欠けるが、動作が軽く安定している。そしてtcpdumpよりもキャプチャ停止条件や出力関連のオプションが充実しており、Linux系OSでもWindows系OSでも使用することができる。
| 【注】 tcpdumpのWindows版として、「WinDump」というツールがあるが、こちらは2006年12月を最後に更新されていない。 |
そして、フィルタ(任意のパケットをマッチさせる機能)条件の記述方法として、tcpdump形式(libpcap形式)とWireshark Display Filterの両方が用意されているため、フィルタ条件を学ぶ上でも役に立つことだろう。厳密には2つのフィルタには挙動の違いが生じるが、それについては後述する。
今回は、特定の通信の内容を捕捉するスキルを得ることを目標としよう。記事の最後ではセキュリティ・ダークナイトからの出題と、その解答を説明する。この記事を読めば、きっと答えにまで至れるはずだ。
問題: |
ダウンロードとインストール手順
今回利用するツールは、Wireshark公式サイトのダウンロードページからダウンロードし、インストールする。インストール自体は、非常に簡単であるためここでは割愛する。インストールが完了したら、環境変数からPathを通しておくとよいだろう。
| 図1 「Wireshark」の公式サイト |
![]() |
| 図2 システム環境変数を確認する |
図2のPathの最後を「;」(セミコロン)で区切り、tshark.exeが存在するフォルダまでのパスを追記する(デフォルトは、「C:\Program Files\Wireshark」)。パスが通っているかどうかの確認は、cmd.exe(コマンドプロンプト)で「tshark -h」としヘルプが表示されるかどうかで確認すればよいだろう。
![]() |
| 図3 pathを設定し、tsharkのヘルプが表示されるかを確認する |
Linux系OSのディストリビューションはたくさんあるが、今回は「Ubuntu」を例にインストール方法を紹介しよう。といっても、
| # apt-get install tshark |
の1行だ。
準備が整ったら
それでは、早速パケットをキャプチャしてみよう――と、その前に。
キャプチャを行うには、どのネットワークインターフェイス(以下NIC)で行うかを適宜指定する必要がある。そのためには、キャプチャを行うPCにどのようなNICが認識されているか、また、その番号を知る必要がある。
| # tshark -D |
としてみよう。下図は筆者の環境での実行結果である。
![]() |
| 図4 tshark -Dの実行結果(Windowsの場合) |
![]() |
| 図5 tshark -Dの実行結果(Ubuntuの場合) |
Windowsの方が若干分かりづらい印象を受けるかもしれないが、この中からキャプチャする対象のNICを番号で指定できるため、NICの名前で判断ができれば問題ないだろう。
上記の図4、Windowsの「-D」の例で、無線LANのパケットをキャプチャしたい場合は「11a/b/g Wireless LAN Mini PCI Express Adapter (Microsoft's Packet Scheduler)で2番、有線LANの場合は「Intel(R) PRO/1000 PL Network Connection (Microsoft's Packet Scheduler)」で5番となる。
自身のNICについては把握できただろうか。それでは、NICを指定してキャプチャを開始してみよう。
| # tshark -i N (「N」の部分はキャプチャを行うNICの番号を指定する) |
キャプチャを開始したら、Webブラウジングをしてみるといいだろう。目にも止まらぬ速さでログが流れていく。適当なところでCtrl+Cで止めていただきたい。
![]() |
| 図6 tsharkの実行イメージ |
さて、何も考えずひとまずパケットキャプチャを行ってみたが、「-D」や「-i」といったものがオプションである。
tsharkには、このほかにもオプションが多数あり、
- キャプチャ環境の設定
- キャプチャ条件
- 出力設定
などいろいろな制御を行うことが可能である。
ここからは筆者が知っておくべきだと判断するオプションについて解説する。適宜、手元でも実際に操作、確認していってほしい。
1/5 |
| Index | |
| パケットキャプチャ術で秘密もちょっぴりこぼれた? | |
| Page1 コマンドラインを使い、自在にパケットを取り出す ダウンロードとインストール手順 準備が整ったら |
|
| Page2 出力関連のオプション キャプチャ停止の条件を指定する |
|
| Page3 ファイル出力関連のオプション 保存ファイルの読み出し フィルタ関連のオプション |
|
| Page4 フィルタしてみよう フィルタで遊んでみる |
|
| Page5 解答編――たった1つのリクエストを見つけるまでのステップ |
|
セキュリティ・ダークナイト バックナンバー
| セキュリティ・ダークナイト 連載インデックス |
TechTargetジャパン
- Facebook タイムライン利用時の「鉄則」 (2012/2/9)
ユーザーインターフェイスの変更措置に伴い浮上した、Facebookの「過剰な情報提供」のリスクと対策とは - 無料サービスなら通信内容を記録してもいいの? (2012/1/13)
無料の公衆無線LANサービスが、ユーザーに無断で通信履歴を記録していたことが判明し、話題に - 攻撃はまるでレーザービーム (2011/12/26)
2011年に話題となった標的型攻撃は「人」という弱点ををねらい打ちにしました。では、人に教育さえしておけば防げるものなのでしょうか? - 見せたくないなら「持たせない」が鉄則! (2011/12/15)
逆コンパイル対策で難読化したのに、大事なデータが解析されちゃった? Androidアプリのセキュリティの道は深い
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -






