Как стать автором
Обновить

Настраиваем Android-девайс для анализа трафика приложений

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров13K
Всего голосов 6: ↑5 и ↓1+6
Комментарии14

Комментарии 14

Фраза "только броузером" наводит на мысль, что неброузерные коннекты пройдут мимо нашего сниффера. Я прав?

Верно, это действительно так. И по этой причине необходимы все дальнейшие манипуляции с прописыванием системного прокси либо с модификацией апк-файла приложения.

Вот это самое важное, научиться сниффить приложения под Андроид 11 и выше, включая websocket. Кто бы научил?

Честно скажу, пока не вник в тему на достаточном уровне
Но оставайтесь на связи, разберусь и обязательно выпущу дополнение :)

Не могу сказать с полной уверенностью, но скорее нет. Сокет перехватывать не пробовал, но grpc по схожей схеме (патченый apk и прокси через fiddler) сниффил вполне успешно

Вместо плясок с прокси можно на точке доступа заворачивать весь трафик от устройства на прозрачную проксю из Burp. Количество пойманных запросов возрастает многократно

А как тогда его расшифровывать? Насколько я понял идею трафик будет логироваться, но не проксироваться, и mitm атака с подменой сертификата не получится

Так это, Burp transparent proxy все сделает. Только сертификат надо подсунуть

Оба способа так себе. Самые интересные приложения игнорируют системные сертификаты, и детектят "странные" устройства (например сам факт запущености на x86 или отсутвия правильного gps или датчиков типа акселерометра) и вообще не работают на эмуляторах (или делают вид что как бы работают, но сливают на сервер всё до чего могут дотянуться, в итоге любая попытка транзакции с такого приложения - полюбому считается фродовой). Так что рассказали бы лучше как это делают немного более продвинутые пользователи: magisk+lsposed+модули для ssl unpin (коих целая куча).

В заметке в первую очередь ведется описание настройки на физическом девайсе, благодаря чему не возникает проблемы детектирования "странного" устройства или эмулятора.
А также спасибо за идею для следующего материала, обязательно напишу на досуге :)

По второму способу не очень понятно, он работает везде, или только на эмуляторе Genymotion?

Тестировал на физическом девайсе, на нем этот метод тоже сработал (Nexus 5 + LineageOS (Android 11)).

Спасибо! Тогда действительно полезно, патчить апк зачастую лень.

Я поднимал mitmproxy и заворачивал на него траффик через wireguard. На телефоне нужно было подключиться к VPN и весь трафик идет туда. Но методы добавления сертификата помогут.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации