Мастхэв для мобильной аналитики. Что нужно, чтобы вскрывать приложения для Android на Android
Источник: t.me/Bureau121
Эмулятор терминала для Android
Инструментом Terminal Emulator for Android я пользуюсь очень давно. Он полезен для запуска различных команд на мобильном устройстве. А с правами root возможностей будет еще больше: например, ты сможешь посмотреть информацию о любом процессе или получить доступ к файлам любого приложения.
Terminal Emulator for Android
Это чем-то похоже на ADB, только в контексте мобильного приложения.
Xposed Installer
Xposed Installer
Этот инструмент работает только под рутом и позволяет изменять приложения и системные сервисы Android. Самые типичные примеры модификаций: удаление из приложений рекламы, переназначение задач на основные кнопки, увеличение времени работы батареи. Звучит весьма здорово, не так ли? Однако самая распространенная проблема, с которой сталкивается большинство желающих поставить этот инструмент, — сложность установки. Очень часто это приложение просто не ставится на девайс. Иногда установка Xposed может «окирпичить» устройство.
Принцип платформы Xposed заключается в способности загружать код для определенного модуля Java перед началом любого app_process
, тем самым контролируя его поведение. Так что модули Xposed могут выполнять код при запуске процесса приложения. Возможно, звучит вдохновляюще, но на самом деле это страшная вещь. Например, ты запускаешь модуль, а он захватывает все возможные функции приложения, включая переводы денег и ввод паролей, если такое поведение предусмотрено в приложении. Поэтому, если ты не доверяешь автору конкретного модуля, советую воздержаться от его установки на свое устройство.
Лучше попробуй написать свой собственный модуль, в котором ты будешь полностью уверен.
INFO
Подробнее о работе с Xposed читай в статье «Сам себе моддер: как изменить Android с помощью Xposed». На десктопе в качестве альтернативы можно испол��зовать Frida, подробнее — в статье «Инъекция для андроида. Внедряем код в чужие приложения с помощью Frida».
MT Manager
Очень мощный и простой в использовании инструмент для управления файлами.
MT Manager
Он предназначен для редактирования, клонирования, шифрования и оптимизации пользовательских и системных файлов APK прямо на телефоне. Фактически это файловый менеджер, который может работать с APK и его содержимым. Его часто используют для того, чтобы взломать платные функции приложения.
Принцип работы этого инструмента довольно прост: он анализирует файлы DEX и файлы ресурсов APK, позволяет изменять их, а затем перепаковывает. MT Manager можно найти в открытом доступе.
INFO
APK Studio — аналог приложения для персонального компьютера.
Root Explorer
Этот инструмент довольно известен, его функции схожи с тем, что делает MT Manager, но он больше ориентирован на просмотр, изменение и другие операции над всеми файлами, которые находятся на устройстве. Root Explorer отлично справится с просмотром базы данных или файлов XML из песочницы приложения, поэтому обычно этот инструмент используют тестировщики и аудиторы безопасности.
После установки RE его интерфейс выглядит так
Здесь отображается корневой каталог мобильного телефона. Его можно изменить. После ты можешь изменить каталог RE по умолчанию, чтобы он открывался сразу в удобном для тебя месте.
В каталоге /data
установлено программное обеспечение устройства. Этот раздел используется для установки приложений, сохранения файла настроек. Приложения, которые были установлены в память устройства, можно найти в каталоге /data/app
.
RE /data
sdcard
— пространство карты памяти. В системе Android приложение может быть установлено в двух местах: data
или sdcard
.
Помимо этого, есть еще системные приложения, которые находятся в каталоге /system/app
. Если ты хочешь удалить предустановленное приложение, тебе сюда, но будь осторожен. Перед удалением приложения из этого каталога убедись, что система в нем не нуждается, иначе придется перепрошивать аппарат.
SuperSU
SuperSU был написан разработчиком, известным под ником ChainFire.
SuperSU
По названию понятно, что это приложение необходимо для управления устройством с правами суперпользователя. Если ты рутировал свой телефон, то должен понимать, что любое приложение может захватить повышенные права и сделать что-то очень нехорошее. Как раз для таких ситуаций нужен SuperSU, который позволяет контролировать доступ приложений к root: например, давать привилегии на ограниченное количество времени. Помимо этого, с его помощью можно по умолчанию отключить возможность получения su
некоторым приложениям.
INFO
К сожалению, 4 октября 2017 года ChainFire опубликовал заявление «Выход SuperSU на пенсию» в своем Google+. Он заявил, что больше не будет участвовать в развитии SU и продаст свое детище китайской коммерческой компании.
Magisk
Magisk — это системный администратор прав суперпользователя. Он имеет две основные функции: управление разрешениями root и установка модулей расширений с различными функциями.
Когда мы говорим об администрировании root, многие сразу думают о SuperSU. Но, как я уже говорила, автор покинул свой проект. На его замену пришел Magisk.
Magisk
Поначалу заменить SuperSU было довольно сложно, и, несмотря на проблемы с поддержкой, многие все равно продолжали им пользоваться. К тому же у Magisk до недавнего времени был очень грубый интерфейс, что также отпугивало потенциальных пользователей. Теперь интерфейс стал более приятен глазу, в соответствии со спецификацией Google Material Design.
Это приложение было удалено из Google Play, но его все еще можно найти в открытом доступе.
Здесь мы скрываем от Root Checker, что устройство рутировано
Самая популярная функция Magisk — скрытие root от выбранных приложений, к примеру банковских клиентов, которые обычно не хотят работать на рутированном устройстве.
INFO
Подробнее о Magisk — в статье «Magisk. Модифицируем прошивку Android с комфортом».
Root Checker
С помощью этого приложения можно проверить наличие прав root на устройстве. Выше, говоря о Magisk, я отметила, что root должен скрыться от Root Checker. На скриншоте — результат этой манипуляции.
Приложение может делать запрос к SafetyNet, где содержится информация об устройствах. Это позволяет оценить безопасность и совместимость среды Android, в котором работают приложения.
SafetyNet
SafetyNet проверяет информацию о программном и аппаратном обеспечении аппарата, на котором установлено приложение, а после создает профиль этого устройства. Затем ищет в своей базе подобный профиль устройства среди доступных ему моделей, которые прошли тестирование на совместимость с Android. Помимо этого, оценивается целостность программного и аппаратного обеспечения устройства, а также проверяется APK, который выполнил запрос.
Hex Editor
Этот инструмент позволит посмотреть любой файл на устройстве в шестнадцатеричном виде. Hex Editor можно использовать вместе с MT Manager для редактирования файла APK.
Hex Editor
С помощью приложения можно напрямую редактировать содержимое памяти. Также Hex Editor имеет функцию экспорта данных: ты можешь напрямую выводить шестнадцатеричные данные в C, Java и другие форматы программного кода. Благодаря импорту данных непосредственно в программу ты избавишься от необходимости делать это вручную.
Show Java
Иногда нужно быстро декомпилировать приложение, которое уже установлено на устройстве, и Show Java отлично подойдет для решения этой задачи. Эта программа позволяет декомпилировать APK и просматривать распакованные файлы.
Show Java и Java decompileINFO
На персональном компьютере советую воспользоваться JADX или javadecompilers.
Это мой рабочий стол, и я уверена в этих инструментах
Эти инструменты позволяют исследователю быть более мобильным и делать интересные вещи и без компьютера. Надеюсь, и ты узнал новые пути для аналитики мобильных приложений и тебе было интересно.
Не забывай постоянно обновлять набор своих инструментов!