タオソフトウェアロゴ

tPacketCapture

About 「tPacketCapture」

tPacketCapture icon

「tPacketCapture」はroot権限を必要としないパケットキャプチャアプリです。

「tPacketCapture」はAndroid OS 4.0(Ice Cream Sandwich)で提供されているVpnServiceを利用して端末の通信内容をキャプチャします。
これにより、既存のパケットキャプチャアプリでは必須とされていたroot権限を取得していない端末であっても通信データをキャプチャすることが可能です。
通常、VPN(Virtual Private Network)というと、トンネリングによりパケットに新しいヘッダを付加して外部と通信を行うイメージですが、このアプリではパケットの送受信時に受け取ったデータの記録のみを行います。
記録したデータは一般的なパケットキャプチャツールで読み込み可能なPCAP形式で出力されるため、 ファイルをPCに転送してWiresharkなどの解析ツールで利用することが可能です。

自分のアプリがセキュアに通信を行えているかの確認や、バックグラウンドで怪しい通信をしていそうなアプリを見つけることが可能です。

また、キャプチャ処理自体に外部サーバを使用しないため安心してご利用いただけます。

このアプリはアンドロイドの脆弱性をついたアプリケーションではなく、アンドロイドのセキュリティモデルに従って実装されております。
またキャプチャしたパケットはSDカードに保存するのみで、弊社によるパケットデータ収集等の処理は一切行っておりません。
セキュリティ的に気になされる方が多いですが、同等ロジックを用いて悪質なアプリの作成はできません。詳細はQ&Aを参照してください

Youtube(tPacketCapture v1.0)

対応 OS

  • Android OS 4.0 以上

価格

  • tPacketCapture - 無料
  • tPacketCapture Pro - 1000円

Version 2.0.1

  • 起動時にアプリが終了する問題を修正

tPacketCapture、tPacketCapture Pro 機能比較

機能 tPacketCapture tPacketCapture Pro
全ての通信をキャプチャ
アプリケーションフィルタリング ×

tPacketCapture Pro:アプリケーションフィルタリング

ONにしたアプリの通信のみキャプチャします。
特定のアプリケーションの通信ログのみ取得する事で、パケット解析が容易になります。

tPacketCapturePro Filter app list

使い方

パケットキャプチャの開始/終了

パケットキャプチャを開始するには、画面下部に表示されるCaptureボタンを選択します。
AndroidのシステムによってVPN接続を作成してもよいかどうかを尋ねるダイアログが表示されるので、許可することでキャプチャが開始されます。
これ以降、キャプチャを停止するまでの通信内容は[Capture Files Dir:]で表示されるディレクトリ内にPCAPファイルとして記録されます。
(キャプチャ中はファイル出力を行うため通信速度が低下します)

tPacketCapture tPacketCapture VPNサービス開始確認ダイアログ

キャプチャ中は出力ファイル名やファイルサイズ、ストレージの情報が[Current File]と[Storage Size]の箇所に表示されます。
これらは画面上部のtPacketCapture 更新ボタンを押すことで最新の情報に更新されます。

tPacketCapture キャプチャ中

Android5.0からパケットキャプチャの終了方法が変わりました。Android5.0の端末をご利用の場合はこちら をご参照ください。
パケットキャプチャを終了するには通知バーより「tPacketCapture」を選択し、表示されるダイアログ内の「切断」ボタンを選択します。

tPacketCapture 通知バー tPacketCapture VPNサービス終了確認ダイアログ

Android 5.0 のパケットキャプチャの終了
パケットキャプチャを終了するにはクイック設定パネルより「ネットワークが監視されている可能性があります」を選択し、表示されるダイアログ内の「VPNを無効にする」を選択します。
(システムUIがカスタマイズされている一部の端末において、クイック設定パネルに上記項目が表示されずにパケットキャプチャを終了できなくなる現象が発生しています。 本現象は端末側の不具合のためアプリ側で制御することができません。その場合はお手数ですが、以下の手順に従ってパケットキャプチャを終了させて下さい。)

tPacketCapture クイック設定パネル tPacketCapture VPNサービス終了確認ダイアログ

キャプチャ結果の閲覧/共有

キャプチャ結果はSDカード、または同等の外部記憶装置にPCAP形式のファイルとして保存されます。

画面上部のFILE LISTタブを選択するか画面をスワイプすることで、保存先ディレクトリ内のキャプチャ済みファイル一覧が表示されます。
また、ファイル一覧からファイルを選択すると端末内のテキストビューアーアプリなどでデータを簡易的(バイナリ部分は文字化けします)に確認することが可能です。

tPacketCapture ファイル一覧 tPacketCapture 簡易表示

より詳細に解析する場合はファイルをPCに転送した後、WiresharkなどのPCAP形式に対応するソフトをご利用ください。
以下に端末からPCへファイルを転送するコマンドの例を示します
(adbコマンドを利用するにはAndroidの開発環境がインストールされている必要があります)。

adb pull /mnt/sdcard/Android/data/jp.co.taosoftware.android.packetcapture/files/2012_0322_121649.pcap .

また、リスト上のファイルをロングタップして選択後にtPacketCapture ファイル共有 ボタンを押すことで選択したファイルをGmailやDropboxに共有することが可能です。(Gmailの場合は添付ファイルとして処理されます)

tPacketCapture ファイル選択 tPacketCapture ファイル共有

キャプチャデータの削除

tPacketCapture ファイル削除 ボタンを押すと保存先ディレクトリ内のファイルを全て削除することが可能です。
その他、ファイルをロングタップすることでファイルを個別に削除することも可能です。
キャプチャ中にログイン処理などを行った場合、パスワード等のデータがファイルに記録される可能性があるためファイル使用後は速やかにファイルを削除してください。

tPacketCapture ファイルの削除

オプションメニュー

tPacketCapture オプションメニュー ボタンを選択することで以下の内容が確認できます。

  • About : アプリのバージョン情報などを表示します。
  • ヘルプ : アプリの使用方法を表示します。

tPacketCapture オプションメニュー

ちょっと詳しい話

キャプチャするデータについて

このアプリはIPv4のTCP/UDP通信データをキャプチャします。
そのため、pingなどのICMPパケットは記録されません。

Ethernetヘッダについて

VPNを利用してパケットキャプチャを行うため、データリンク層の情報は取得されません。
しかしながら、一部の解析ツールなどではPCAPファイルデータににEthernetヘッダが含まれていないと正しくファイルを読み込めないものが存在するため、アプリ側で固定の擬似Ethernetヘッダを付加しています。
(また、MACアドレスのベンダーはGoogleとなっています)

Q&A

Q.同じ仕組みを使って悪い事はできますか?

A.できません
第三者によりパケットキャプチャが行われると非常に危険なため、きちんとした予防策が取られています。 まず、この仕組みを使うと、OSにより「注意」ダイアログが表示されます。この注意ダイアログにOKを押さないと動作する事はできません。
また、動作中はOSが通知バーに鍵アイコンを表示します。
上記動作はアプリケーションからは制御できないため、こっそりとバックグラウンドでパケットを収集する事はできません。

Q.SSL通信のパケットを見ることができますか?

A.できません

Q.カスタムROMで動かないのですが...

A.VPNServiceが動作する物でしかこのソフトは動きません。
ちなみに公式のエミュレータでも動作しません。
Android OS 4.0.3の公式エミュレータで動作を確認。

トラブルシューティング

Capture開始後にネットワークに接続できなくなる

一部の端末に搭載されている「Wi-Fi安定制御機能」との相性により正しくネットワークに接続できない場合があります。 その場合は、「Wi-Fi安定制御機能」をOFFにしてからご利用ください。

「Wi-Fi安定制御機能」のON/OFFは端末の Wi-Fi設定>詳細設定>Wi-Fi安定制御機能 より変更可能です 詳しくは各端末の取扱説明書をご確認ください。

Android5.0以降でクイック設定パネルからパケットキャプチャの終了ができない

システムUIがカスタマイズされている一部の端末(例えばZenFone 5)において、クイック設定パネルにVPNを切断するためのボダンが表示されずにパケットキャプチャの終了ができない現象が発生しています。 本現象は端末側の不具合のためアプリ側で制御することができません。 その場合は一度端末を再起動する事でtPacketCaptureを終了し、次回以降は以下の手順でパケットキャプチャを終了させて下さい。
※以下の手順は通知バー上に鍵アイコンが表示されていないにも関わらず、パケットキャプチャが継続している場合にも対応できる可能性があります。

  • 1. ダミーVPN設定の作成
    • 1-1. 端末の設定を開き、無線とネットワーク配下の「その他の設定」を選択
    • 1-2. VPNを選択して、新たにVPNプロフィールを追加する(+ボタン)
    • 1-3. VPNプロフィールの編集で、名前:「パケットキャプチャ終了」、サーバアドレス:「127.0.0.1」に設定(その他の項目は変更の必要なし)
    • 1-4. 保存を選択
  • 2. tPacketCaptureを起動してキャプチャを開始する
  • 3. パケットキャプチャの終了(VPNの切断)
    • 3-1. 端末の設定を開き、無線とネットワーク配下の「その他の設定」を選択
    • 3-2. VPNを選択
    • 3-3. 作成しておいたダミーVPN設定を選択
    • 3-4. システムがダミーVPNへの接続を試みることにより、tPacketCaptureによるVPNが切断されてパケットキャプチャが終了する(通知バーの鍵アイコンが消える)
    • 3-5. ホーム画面に戻る

ダウンロードとインストール

tPacketCapture Pro(有料)をダウンロードする前に無料版のtPacketCaptureで動作確認を行なってください。

  • 特定のAndroid端末ではVPNサービスが正しく動作せず、データを正しくキャプチャできない場合があります。
  • ストリーミング等の大量のデータを送受信する場合、速度的な制限により全てのパケットをキャプチャすることができませんのでご了承ください。

Google Playストア からのダウンロード

Goole Playストア - アプリケーション - ツール からダウンロードしてください。

tPacketCapture(無料)

http://play.google.com/store/apps/details?id=jp.co.taosoftware.android.packetcapture

tPacketCapture Downroad

tPacketCapture Pro(有料)

http://play.google.com/store/apps/details?id=jp.co.taosoftware.android.packetcapturepro

tPacketCapture Pro Downroad

Release Note

Version 1.0

  • ファーストリリース

Version 1.1

  • キャプチャ処理の高速化

Version 1.2

  • キャプチャ結果の共有機能を追加

Version 1.3

  • UIをAndroid4.0(ICS)風に変更
  • キャプチャ処理の高速化

Version 1.4

  • キャプチャ結果をPCに取り込む際、エクスプローラでファイルが表示されない問題を修正

Version 1.5

  • レイアウト変更
  • tPacketCapture Pro(有料)をリリース

Version 1.6

  • Android4.4(KitKat)対応

Version 1.7

  • キャプチャ処理の高速化

Version 2.0

  • Android5.0(Lollipop)対応
  • 5.0でキャプチャを停止してもトグルボタンが切り替わらない問題を修正
  • 5.0でキャプチャを停止してもファイル一覧が更新されない問題を修正
  • レイアウトを変更

Version 2.0.1

  • 起動時にアプリが終了する問題を修正

動作確認端末

  • LG Nexus 5
  • LG Nexus 4
  • ASUS nexus 7
  • Galaxy S3 SC-06D
  • Galaxy Nexus SC-04D
  • AQUOS PHONE 104SH
  • Iconia Tab A500
  • MOTOROLA XOOM(4.0.3)
  • ASUS Eee Pad TF201
  • Acer ICONIA Tab A200
  • HTC J ISW13HT
  • MEDIAS X N-07D
  • URBANO PROGRESSO
  • その他多くの4.0以上の端末で動作確認されております。動作しない端末がありましたらご連絡ください

プライバシーポリシ

1.アプリケーション提供者名

タオソフトウェア株式会社

2.アプリケーションで取り扱う利用者情報

  • 項目
    通信する全てのデータ

  • 内容
    通信中に送受信された全てのデータ(個人情報、プライバシーに関する情報、パスワード等も含む)は アプリケーションで取得しファイルに保存します。

  • 取得方法
    開始指示から終了指示の間の通信データを取得します

  • 利用目的
    アプリケーションの機能として取得します

  • 同意取得の方法
    取得開始毎にダイアログを表示して同意を求めます。

  • その他
    アプリケーションで取得した情報に関しては、ファイルに保存するのみであり、データを収集するサーバに送信する等、弊社で情報を取得する事はありません。

3.パーミッションと利用目的

  • INTERNET
    (完全なインターネット アクセス)
    VPNService機能自体にはINTERNETパーミッションは必要ありませんが、内部的にSocketのオープンをしております。
    SocketのOpenをするためにはINTERNETパーミッションが必要となるため使用しております。

  • WRITE_EXTERNAL_STORAGE
    (USB ストレージのコンテンツの変更/削除、SD カードのコンテンツの変更/削除)
    取得したデータを外部記憶装置にファイルとして保存するのに使用しております。

4.プライバシーポリシーの掲示場所

  • プライバシーポリシーの掲示方法
    ホームページ に掲示

  • プライバシーポリシー概要提示場所
    アプリケーションの説明画面に記載。

    本アプリケーションは通信中に送受信された全てのデータ(個人情報、プライバシーに関する情報、パスワード等も含む)取り扱いますが、ファイルに保存するのみで、弊社が取得する事はありません。アプリケーションには広告は表示されません。 プライバシーポリシーの詳細につきましては、こちらを参照ください。 上記URLへは、デベロッパー情報のプライバシーポリシリンクから移動可能です。

5.利用者関与の方法

  • サービス自体に利用される情報の利用者関与
    利用を取りやめるときは、アプリケーションをアンインストールしてください。アプリケーションで作成されたファイルは全て削除されます。
    SDカードが使用不可能な状態でアプリケーションをアンインストールした場合は、手動で削除してください。

  • 広告に利用される情報の利用者関与
    広告は表示しておりません。

6.外部送信・第三者提供・情報モジュールの有無

  • 外部送信・第三者提供
    利用者情報(通信データ)はアプリケーション内で使用するのみであり弊社にて保持しておりません。従って第三者提供出来ません。

  • 情報収集モジュールを組み込む場合の取り扱い
    広告を含め、情報を収集するモジュールは使用しておりません。

7.問い合わせ窓口

mail address

8.プライバシーポリシーの変更について

「同意取得」が必要な、重要なプライバシーポリシーの変更はアプリケーション内でポップアップ表示させ再度「同意取得」致します。
「同意取得」が必要ないプライバシーポリシーの変更に関しては、弊社サイトで告知を致します。

本ソフトウェア使用上の注意

タオソフトウェアは、お客様に対し、許諾プログラムにおける一切の動作保証、使用目的への適合性の保証、使用結果に関わる的確性や信頼性の保証をせず、かついかなる内容の瑕疵担保義務も負いません。また、このプログラムに関し発生する問題はお客様の責任および費用負担をもって処理されるものとします。

タオソフトウェアは、お客様に対し、許諾プログラムに関する技術サポート、保守、機能改善等のいかなる技術的役務の提供義務も負いません。

タオソフトウェアは、いかなる場合も、お客様の逸失利益、特別な事情から生じた損害(損害発生につきタオソフトウェアが予見し、または予見し得た場合を含みます。)および第三者からお客様に対してなされた損害賠償責任に基づく損害について一切責任を負いません。又、お客様はタオソフトウェアに対し、何らの請求も行わないものとします。

その他

タオソフトウェアでは、Android(アンドロイド)を用いたアプリケーションを受託開発致します。お気軽にご連絡ください。