2016-10-03 4 views
0

AVDにインストールされたアンドロイドアプリ(ファイル.apk)のGUI(たとえば押しボタン)でアクティブになったイベントによって生成されたネットワークトラフィックをキャプチャします。まず、私は(私はpsコマンドを使用して、プロセスのPIDを取得しました)adbのシェルでstraceのコマンドを使用して、プロセスのシステムコールをキャプチャ:アンドロイドアプリケーションによって生成されたネットワークトラフィックをキャプチャします

strace -f -tt -s 200 -p 27707 -o syscallcap.txt 

それから私はtxtファイルを分析するが、主なスレッド(27707)は、未知のプロセスからのデータ受信(またはデータ送信) - システムコールrecvfrom(sendtoまたはsendmsg) - 最後の二つのフィールドであるNULL):

27707 19:06:29.441356のrecvfrom(72、 「nysv \ 0 \ 0 \ 0 \ 0} \ 323 \ 33 {\ 370 \ R \ 0 \ 0W \ 36 \ 1 \ 0 \ 0 \ 0 \ 0 \ 0" 、2400、MSG_DONTWAIT、 NULL、NULL)は24

どのように私は私の目的のために重要であり、どのようなシステムコールの理解することができますを=? システムコールからエミュレータにインストールされたアンドロイドアプリのhttp/tcp/udpネットワークトラフィックをキャプチャするにはどうすればよいですか? 論文作成のためのアドバイスやアイデアは歓迎します。

答えて

0

まあ、デバイスのネットワークトラフィックを記録する方法は2通りあります。

IPTABLES

iptablesがチェーンとルールを設定するために使用するLinuxのNetfilterのモジュールのためのファイアウォールのアプリケーションです。 iptablesを使用してトラフィックをインターセプトし、内部プロキシサーバにリダイレクトし、内部プロキシサーバは設定されたプロキシサーバにトラフィックを中継します。

を使用すると、すべてのネットワークトラフィックをログに記録するアプリケーションでのトンネリングを実装することができ、この方法を使用してROOT

Android firewall with VpnService

に必要です。提供

リンクがフォアグラウンドアプリからのマッピングトラフィックのために、今すぐあなたに方向

を与える必要があり、すべてのアプリケーションは、そのトラフィックをログに記録するように設定/チェーンを監視するために使用することができるユニークなアプリIDを持っています。

関連する問題