Всем привет. После прошлой моей статьи "Отлавливаем трафик защищенных Android приложений / Android reversing" поступило много вопросов - есть ли способ проще но не менее эффективный?
Сегодня я вам расскажу о эффективном и простом способе обхода проверки подлинности сертификата в Android приложениях.
Что нам потребуется:
1. Эмулятор Android. Советую MEmu (https://www.memuplay.com/)
2. Reverse proxy, на ваш вкус:
1. Установите Android эмулятор MEmu.
Время тестов, берем любое приложение которое мы не сможем отснифать без патча проверки сертификата, к примеру Kohls (https://www.apkmirror.com/apk/kohls...scan-shop-pay-save-7-54-android-apk-download/)
После установки Kohls закрываем полностью Inspeckage и открываем его по новой (это мы делаем для того что бы inspeckage обновил список установленных приложений).
Выбираем целевое приложение в инспекторе и открываем его(Kohls)
Как мы видим - трафик успешно словился, а ошибка в приложение т.к доступ из РФ на сайт закрыт.
=========================
Итого: теперь вы умеете ловить трафик с защищенных приложений (конечно работает не для всех приложений, но результат намного лучше чем используя trustme или заезжанный sslunpinning.).
НО! Дело в том, что автоматический патч проверки сертификатов это 1% от функционала Inspeckage.
Я думаю исходя из его названия можно догадаться что он умеет еще?
Это очень мощный инструмент для анализа Android приложений. Я показал лишь 1 из его функций.
Всем спасибо за внимание.
Сегодня я вам расскажу о эффективном и простом способе обхода проверки подлинности сертификата в Android приложениях.
Что нам потребуется:
1. Эмулятор Android. Советую MEmu (https://www.memuplay.com/)
2. Reverse proxy, на ваш вкус:
Charles (https://www.charlesproxy.com/download/)
Burp (https://portswigger.net/burp/pro)
Fiddler (https://www.telerik.com/fiddler)
из всего этого разнообразия советую выбрать Fiddler, во первых он бесплатен и не уступает функционалу Charles и Burp, а во вторых в прошлой статье я написал подробную инструкцию по его настройке ("Отлавливаем трафик защищенных Android приложений / Android reversing" CTRL+F ->
3. APK которые мы установим на эмулятор:Устанавливаем Fiddler и настраиваем его)
Приступаем?1. Установите Android эмулятор MEmu.
После установки MEmu откройте MemuConsole (
C:\Program Files (x86)\Microvirt\MEmu\MEmuConsole.exe).Удалите образ установленный по умолчанию и установите образ с версией Android 7.1 (
)
2. Запустите образ и установите скачанный ранее APK файл "XposedInstaller_3.1.5.apk"Откройте "Xposed Installer" (что бы надоедающие уведомление не открывалось вновь не забудьте поставить галочку
)
Установите последнюю версию Xposed Framework:
После того как загрузка закончилась и вы увидели сообщение о удачной установки и требование перезагрузить ОС для применения настроек ("Done! Changes will become active on reboot") откажитесь от автоматической перезагрузки (это важно!)
Теперь переходим в раздел
Download и используя строку поиска находим модуль Inspeckage - Android Package Inspector
* не пугайтесь сообщение которое появится при установке модуля, вам нужно зайти в настройки и разрешить установку приложений из неизвестных источников
После установки модуля открываем в Xposed раздел
Modules и активируем модуль
И теперь перезагружаем Android.
3. Откройте Inspeckage
После запуска вы увидите сообщение о том что сервис Inspeckage запущен на порту 8008 (
)
Теперь у вас есть 2 варианта зайти в панель управление Inspeckage:
Через браузер в Android:
пишем в адресную строку локальный адрес
127.0.0.1:8008 и попадаем в панель
Но т.к не всегда удобно пользоваться панелью в браузере эмулятора воспользуемся чуть более сложным вариантом:
Открываем настройки Android, прем в самый низ и заходим в раздел "Developer options"
В этом разделе ищем настройку отладки устройства и включаем отладку по USB
Перезагружаем Android, запускаем Inspeckage по новой.
Открываем папку с установленным эмулятором
либо в адресной строке проводника в папке пишем "CMD" и тычем Enter)
C:\Program Files (x86)\Microvirt\MEmu открываем PowerShell/CMD (Shift + ПКМ
Проверим можем ли мы работать теперь с эмулятором через ADB
adb devices
Как видим устройство подключено. Пробросим порт
)
adb forward tcp:8008 tcp:8008 (
Заходим в браузер в вашей Windows и пробуем открыть панель по локальному адресу
127.0.0.1:8008 (помните что Inspeckage должен быть запущен на Android!)
Все супер, теперь будет гораздо удобнее.
Теперь давайте настроим Inspeckage под обход проверки сертификатов в приложениях:
Нужно открыть настройки модуля
В данном окне вам нужно включить "SSL uncheck", установить ip и port вашего reverse proxy и активировать прокси, и по итогу добавить ее.
Все готово.Время тестов, берем любое приложение которое мы не сможем отснифать без патча проверки сертификата, к примеру Kohls (https://www.apkmirror.com/apk/kohls...scan-shop-pay-save-7-54-android-apk-download/)
После установки Kohls закрываем полностью Inspeckage и открываем его по новой (это мы делаем для того что бы inspeckage обновил список установленных приложений).
Выбираем целевое приложение в инспекторе и открываем его(Kohls)
Как мы видим - трафик успешно словился, а ошибка в приложение т.к доступ из РФ на сайт закрыт.
=========================
Итого: теперь вы умеете ловить трафик с защищенных приложений (конечно работает не для всех приложений, но результат намного лучше чем используя trustme или заезжанный sslunpinning.).
НО! Дело в том, что автоматический патч проверки сертификатов это 1% от функционала Inspeckage.
Я думаю исходя из его названия можно догадаться что он умеет еще?
Это очень мощный инструмент для анализа Android приложений. Я показал лишь 1 из его функций.
Всем спасибо за внимание.