Инструменты для анализа Android-приложений на Android

Приложения для анализа Андроид приложений

Если вы занимаетесь аналитикой мобильных приложений или разрабатываете их, то знаете о таких десктопных инструментах, как IDA, apktool или Jadx. Но бывает, что компьютера под рукой нет, а вам очень надо нужно проанализировать приложение. В сегодняшней статье я расскажу про лучшие приложениях для анализа Андроид-приложений, которые помогут вам решить эту проблему.

Xposed Installer

Анализ Android приложений. Xposed Installer
Анализ Android-приложений. Xposed Installer

Этот приложение работает только под рутом и позволяет изменять приложения и системные сервисы Android. Самые типичные примеры модификаций: удаление из приложений рекламы, переназначение задач на основные кнопки, увеличение времени работы батареи. Звучит весьма здорово, не так ли? Однако самая распространенная проблема, с которой сталкивается большинство желающих поставить этот инструмент, — сложность установки. Очень часто это приложение просто не ставится на девайс. Иногда установка Xposed может «окирпичить» устройство и в таком случае может помочь только восстановление прошивки телефона.

Принцип платформы Xposed заключается в способности загружать код для определенного модуля Java перед началом любого app_process, тем самым контролируя его поведение. Так что модули Xposed могут выполнять код при запуске процесса приложения. Возможно, звучит вдохновляюще, но на самом деле это страшная вещь. Например, вы запускаете модуль, а он захватывает все возможные функции приложения, включая переводы денег и ввод паролей, если такое поведение предусмотрено в приложении. Поэтому, если вы не доверяете автору конкретного модуля, советую воздержаться от его установки на свое устройство.

Лучше попробуйте написать свой собственный модуль, в котором вы будете полностью уверены.

Подробнее о работе с Xposed читайте в статье «Как изменить Android с помощью Xposed». На десктопе в качестве альтернативы можно использовать Frida, подробнее — в статье «Внедрение кода в чужое приложение с помощью Frida».

Эмулятор терминала для Android

Инструментом Terminal Emulator for Android я пользуюсь очень давно. Он полезен для запуска различных команд на мобильном устройстве. А с правами root возможностей будет еще больше: например, вы сможете посмотреть информацию о любом процессе или получить доступ к файлам любого приложения.

Анализ Android приложений. Terminal Emulator for Android
Анализ Android-приложений. Terminal Emulator for Android

Это чем-то похоже на ADB, только в контексте мобильного приложения.

MT Manager

Очень мощный и простой в использовании инструмент для управления файлами.

Анализ приложений Android. MT Manager
Анализ приложений Android. MT Manager

Он предназначен для редактирования, клонирования, шифрования и оптимизации пользовательских и системных файлов APK прямо на телефоне. Фактически это файловый менеджер, который может работать с APK и его содержимым. Его часто используют для того, чтобы взломать платные функции приложения.

Принцип работы этого инструмента довольно прост: он анализирует файлы DEX и файлы ресурсов APK, позволяет изменять их, а затем перепаковывает. MT Manager можно найти в открытом доступе.

APK Studio — аналог приложения для персонального компьютера.

Root Explorer

Этот инструмент довольно известен, его функции схожи с тем, что делает MT Manager, но он больше ориентирован на просмотр, изменение и другие операции над всеми файлами, которые находятся на устройстве. Root Explorer отлично справится с просмотром базы данных или файлов XML из песочницы приложения, поэтому обычно этот инструмент используют тестировщики и аудиторы безопасности.

После установки RE его интерфейс выглядит так
После установки RE его интерфейс выглядит так

Здесь отображается корневой каталог мобильного телефона. Его можно изменить. После вы можете изменить каталог RE по умолчанию, чтобы он открывался сразу в удобном для вас месте.

РЕКОМЕНДУЕМ:
Взлом приложений для Андроид с помощью отладчика

В каталоге /data установлено программное обеспечение устройства. Этот раздел используется для установки приложений, сохранения файла настроек. Приложения, которые были установлены в память устройства, можно найти в каталоге /data/app.

Анализ приложений Android. RE /data
Анализ приложений Android. RE /data

sdcard — пространство карты памяти. В системе Android приложение может быть установлено в двух местах: data или sdcard.

Помимо этого, есть еще системные приложения, которые находятся в каталоге /system/app. Если вы хотите удалить предустановленное приложение, вам сюда, но будьте осторожны. Перед удалением приложения из этого каталога убедитесь, что система в нем не нуждается, иначе придется перепрошивать аппарат.

SuperSU

SuperSU был написан разработчиком, известным под ником ChainFire.

Анализ приложений Android. SuperSU
Анализ приложений Android. SuperSU

По названию понятно, что это приложение необходимо для управления устройством с правами суперпользователя. Если вы рутировали свой телефон, то должны понимать, что любое приложение может захватить повышенные права и сделать что-то очень нехорошее. (подробнее об опасности root). Как раз для таких ситуаций нужен SuperSU, который позволяет контролировать доступ приложений к root: например, давать привилегии на ограниченное количество времени. Помимо этого, с его помощью можно по умолчанию отключить возможность получения su некоторым приложениям.

К сожалению, 4 октября 2017 года ChainFire опубликовал заявление «Выход SuperSU на пенсию» в своем Google+. Он заявил, что больше не будет участвовать в развитии SU и продаст свое детище китайской коммерческой компании.

Magisk

Magisk — это системный администратор прав суперпользователя. Он имеет две основные функции: управление разрешениями root и установка модулей расширений с различными функциями.

Когда мы говорим об администрировании root, многие сразу думают о SuperSU. Но, как я уже говорила, автор покинул свой проект. На его замену пришел Magisk.

Анализ приложений Андроид. Magisk
Анализ приложений Андроид. Magisk

Поначалу заменить SuperSU было довольно сложно, и, несмотря на проблемы с поддержкой, многие все равно продолжали им пользоваться. К тому же у Magisk до недавнего времени был очень грубый интерфейс, что также отпугивало потенциальных пользователей. Теперь интерфейс стал более приятен глазу, в соответствии со спецификацией Google Material Design.

Это приложение было удалено из Google Play, но его все еще можно найти в открытом доступе.

Анализ приложений Андроид. Здесь мы скрываем от Root Checker, что устройство рутировано
Анализ приложений Андроид. Здесь мы скрываем от Root Checker, что устройство рутировано

Самая популярная функция Magisk — скрытие root от выбранных приложений, к примеру банковских клиентов, которые обычно не хотят работать на рутированном устройстве.

Root Checker

С помощью этого приложения можно проверить наличие прав root на устройстве. Выше, говоря о Magisk, я отметила, что root должен скрыться от Root Checker. На скриншоте — результат этой манипуляции.

Анализ приложений Андроид

Приложение может делать запрос к SafetyNet, где содержится информация об устройствах. Это позволяет оценить безопасность и совместимость среды Android, в котором работают приложения.

Анализ приложений Андроид
Анализ приложений Андроид. SafetyNet

SafetyNet проверяет информацию о программном и аппаратном обеспечении аппарата, на котором установлено приложение, а после создает профиль этого устройства. Затем ищет в своей базе подобный профиль устройства среди доступных ему моделей, которые прошли тестирование на совместимость с Android. Помимо этого, оценивается целостность программного и аппаратного обеспечения устройства, а также проверяется APK, который выполнил запрос.

РЕКОМЕНДУЕМ:
Использование Android в связке с Linux

Hex Editor

Этот инструмент позволит посмотреть любой файл на устройстве в шестнадцатеричном виде. Hex Editor можно использовать вместе с MT Manager для редактирования файла APK.

Анализ Андроид приложений. Hex Editor
Анализ Андроид приложений. Hex Editor

С помощью приложения можно напрямую редактировать содержимое памяти. Также Hex Editor имеет функцию экспорта данных: вы можете напрямую выводить шестнадцатеричные данные в C, Java и другие форматы программного кода. Благодаря импорту данных непосредственно в программу вы избавитесь от необходимости делать это вручную.

Show Java

Иногда нужно быстро декомпилировать приложение, которое уже установлено на устройстве, и Show Java отлично подойдет для решения этой задачи. Эта программа позволяет декомпилировать APK и просматривать распакованные файлы.

Анализ Андроид-приложений. Show Java и Java decompile
Анализ Андроид-приложений. Show Java и Java decompile

На персональном компьютере советую воспользоваться JADX или javadecompilers.

Это мой рабочий стол, и я уверена в этих инструментах
Это мой рабочий стол, и я уверена в этих инструментах

РЕКОМЕНДУЕМ:
Как устроена операционная система Андроид

Эти инструменты позволяют исследователю быть более мобильным и делать интересные вещи и без компьютера. Надеюсь, и вы узнали новые пути для аналитики мобильных приложений и вам было интересно.

Не забывайте постоянно обновлять набор своих инструментов!

Понравилась статья? Поделиться с друзьями:
Добавить комментарий