Как захватить сетевой трафик из конкретного приложения для Android.

Я прочитал документ, в котором предлагается подход к захвату сетевого трафика из конкретного приложения для Android. Он говорит: «Мы использовали tcpdump для сбора всего сетевого трафика с виртуальной машины. Мы портировали утилиту strace на Android для регистрации каждого выполненного сетевого вызова По приложению. Мы определили все потоки, запущенные приложением, используя идентификатор процесса (pid) приложения. Основываясь на этой информации о потоке, мы можем отфильтровать трафик, который не является источником из приложения ». Но я все еще не мог знать принцип работы. Так как я могу захватить сетевой трафик из определенного приложения для Android? Спасибо за ответ.

Solutions Collecting From Web of "Как захватить сетевой трафик из конкретного приложения для Android."

Вы также можете использовать SandroProxy. Он также может захватывать поток приложений, которые не учитывают настройки прокси-сервера android os. Существует также возможность создавать файлы pcap для потока ssl. Одним из вариантов является также создание ssl, который может быть расшифрован с помощью wirehark.

Идея заключается в том, чтобы перехватывать поток http / https как обычный прокси или прозрачный прокси с помощью справки iptables, хранить его в виде запросов / ответов или файлов pcap и перенаправлять дальше на сервер.

Как определить, кто выполняет запросы: когда у вас есть открытый сокет для прокси, вы должны сопоставить информацию из / proc / net / tcp или / proc / net / tcp6, чтобы получить процесс uid. С помощью этого вы можете получить имена пакетов. Это может быть и больше.

Вы можете изучить, как создать собственный прокси-сервер и создать его из источников здесь:

http://code.google.com/p/sandrop/source/browse/projects/SandroProxyPlugin/src/org/sandroproxy/plugin/gui/MainActivity.java

http://code.google.com/p/sandrop/source/browse/projects/SandroProxyPlugin/readme.txt

— отправлено поддержкой SandroProxy —