スマートフォンの通信を覗いて見よう!ver0.13(2013.12.07,IT交流勉強会)
-
Upload
yoshitake-takata -
Category
Technology
-
view
2.313 -
download
5
description
Transcript of スマートフォンの通信を覗いて見よう!ver0.13(2013.12.07,IT交流勉強会)
スマートフォンの通信を
覗いて見よう!ver 0.13
2013/12/07 SatIT交流勉強会
近畿大学 工学部情報学科
自己紹介広島在住、広島を中心に勉強会に出没オープンソースカンファレンス2013Hiroshima地元実行委員 @oschiroshima の中の人
広島サーバユーザ友の会(仮称) はじめた奴
hiroshima.rb 広報担当? ・・・最近何もしていないような(汗
日本Androidの会 中国支部 運営スタッフ? ・・・最近全然何もしていないような(汗
Ustreamで勉強会の配信とかやってます。Twitter @takatayoshitake
今日のお題
● スマートフォンのアプリの通信先や開発したアプリのデバック用にパソコンでパケットキャプチャなどで通信を確認する方法を簡単にご紹介します。
会場の皆さんに質問
PCのインターネット共有を使ったことある人?
挙手をお願いします。
追記: 当日参加者の約半分の方が挙手
みんな知ってたら→終了
知らない人がいたら→次のページに
進む
前準備
● パソコンを無線APにする。● インターネット共有で有線回線でインターネットに接続出来る。
● パケット代も節約出来てお得。
※機種により出来ない場合も有り
パソコン(無線AP化)
スマートフォン
無線接続
ルータ等
LAN有線接続
インターネット
インターネット共有 構成例
Windows 7 編
コマンドプロンプト - 管理者として実行– 設定方法(1行で入力)netsh wlan set hostednetwork mode=allow ssid=<アクセス・ポイント名> key=<パスフレーズ> keyusage=persistent- 例netsh wlan set hostednetwork mode=allow ssid=win7softap key=passphrase1234wxyz keyusage=persistent- 開始方法netsh wlan start hostednetwork
状態にAP名が表示されたら成功(少し掛かる)ダメな場合は対応してないのであきらめるOr 別の無線USBアダプタ買うとか
アクセス・ポイント名 Microsoft Virtual Wifi Miniport Adapter
アダプタ設定
チェックする
追加された接続を選択
ローカルエリア接続プロパティ
IPv6等の不要なものはチェックをはずす。※これを外さないと
うまく行かない場合があるようです。
C:\>netsh wlan show hostednetwork
ホストされたネットワークの設定------------------------------ モード : 許可 SSID 名 : "win7softap" クライアントの最大数 : 8 認証 : WPA2-パーソナル 暗号 : CCMP
ホストされたネットワークの状態------------------------------ 状態 : 開始 BSSID : 10:66:82:xx:xx:xx 無線の種類 : 802.11n チャネル : 10 クライアント数 : 2 30:85:a9:xx:xx:xx 認証済み 84:38:35:xx:xx:xx 認証済み
注: MACアドレスなどは一部 xx:xx:xx に変更しています。
詳しい手順は「Windows7 softAP」
などで検索してね
MACも同様な事ができます。
詳しい手順は「mac インターネット共有」
などで検索してね
PCの無線AP化が出来たら本題のパケットキャプチャ
ソフトウェア紹介及びデモ
Packet capture Wiresharkhttp://www.wireshark.org/
通信内容の詳細が確認出来る通信先IP等は確認しやすいがURL等はわかり難い上級者向けかな?
URL Snooper 2http://www.donationcoder.com/Software/Mouser/urlsnooper/
multimedia 以外を表示する場合はProtocol Filter - Show All に変更URL等を抽出し表示される
URLが https:// から始まる通信は暗号化されているのでパケットをキャプチャしても内容確認不可
Proxy Soft を利用することで通信内容を確認出来る。
クライアント側(スマホ等)側でProxy設定が必要
Androidの場合は設定 - Wifi無線AP名を長押し - ネットワークを変更
詳細オプションを表示 にチェック※iphoneは「iphone proxy 設定」等で検索してね
[Win]Proxy soft Fiddler 2http://fiddler2.com/
Fiddler
● 通信内容を確認する方法は「Fiddler」で検索
● より詳しい使い方や詳細を知りたい方は書籍も販売されています。
http://www.oreilly.co.jp/books/9784873116167/
[MAC] Proxy soft Charlshttp://www.charlesproxy.com/
Charls
● Charlsは有料 $50 ですが無料試用期間あり
● 無料で使えるものでMACでSSLキャプチャ可能なソフトとしては mitmproxy もあるようです。
– http://mitmproxy.org/
– ※試したことありませんがInstall 通りでうまく動かないこともあるそうです。「mitmproxy」で事前に検索
クラウドデバイスのプログラミング
● ワイヤレス通信サービスの普及により、ほぼいつでもどこでもインターネットに接続できる。
● スマートフォンやタブレットはクラウドサービスに接続する為のデバイス(クライアント)
● (状況によりますが)必要に応じてWebAPI等を活用してシステムを構築する事が出来る。
● プログラムを全てクライアント側で無理して作る必要は無く組み合わせて効率よく開発する事が出来る。適所適材。
まとめ
● スマートフォンやタブレットの通信はPCを無線AP化してパケットキャプチャすることで調べる事が出来る。
● 暗号化通信(https)はProxyソフトでキャプチャ出来る。
● クラウドデバイスのプログラムはWebAPI等を使ってサーバ・クライアントそれぞれの利点を生かして開発しましょう。
最後にご注意
● パケットキャプチャ等で解析したデータや内容は不用意に公開すると大事な情報が漏洩したりする危険があるので控えましょう。
● 他の人が開発したソフトのキャプチャ結果や解析結果を開発者の許可無く公開するとトラブルになる可能性があるので個人で参考にするのみか開発者に許可を取る等してからにしましょう。
● ・・・個人で参考にするのは大丈夫だと思うけど、丸パクリでとかはダメだと思います。
ご清聴
ありがとう
ございました