В этой статье читатели узнают о том, как правильно настроить безопасную среду для пентестинга мобильных приложений. Кроме того, пойдет речь об инструментах, которые помогут осуществить сам пентестинг.
Установка Frida-Server на Android
Установка Genymotion
Сначала стоит скачать Genymotion, перейдя по ссылке, в соответствии с типом своей системы (Window или Linux). Кроме того, нужно создать учетную запись на сайте, так как для того, чтобы использовать инструмент, пользователю будет необходимо авторизироваться в приложении.
Таким образом, человек запускает установщик и входит в систему, используя свои учетные данные Genymotion. Если программа запрашивает лицензионный ключ, следует нажать на кнопку «Personal use».
Поскольку пользователь (в данном примере) использует «Сommunity edition», он выбирает второй вариант.
Установка виртуального устройства Android
Как только прошлый инструмент был установлен, нужно установить Android-симулятор с использованием Genymotion для любого типа устройств.
Примечание: Android API должен быть выше, чем API23.
Пользователь выбирает NAT в качестве сетевого режима при добавлении телефона Android.
Как видно на картинке, пользователь добавил Nexus 5X с API 26.
Теперь настала пора включить Virtualbox и изменить свой сетевой адаптер на NAT для добавленного мобильного телефона Android.
Теперь следует включить свой телефон посредством Genymotion, таким образом пользователь получит IP-адрес в верхней части экрана.
Установка Gapps
Gapps еще известен как приложение Google, т.е. приложение, похожее на Google Play.
Конечно, пользователь может использовать Google Play для загрузки любой программы из магазина; он также способен скачать любой файл формата APK на это устройство Genymotion, что также автоматически установит нужное ему приложение.
Чтобы установить Gapps, все, что нужно пользователю, это нажать кнопку «Open GAPPS»: начнется установка в фоновом режиме.
После перезагрузки устройства пользователь сможет увидеть приложение Google Play на устройстве Genymotion.
Подключение к Shell Android с помощью Ubuntu
Для проведения тестирования на проникновение пользователь должен получить доступ к Shell Android, здесь он использует Ubuntu для установления подключения. Нужно установить некоторые дополнительные инструменты.
apt install android-tools-adb
Пользователь выполнит следующую команду для подключения к телефону:
adb connect 192.168.41.101
adb shell
Как только человек получит Shell Android, он обнаружит, что он похож на Shell Linux.
Тестирование на проникновение Android с помощью Frida
Установка Frida на Ubuntu
Frida — это мощный инструмент с открытым исходным кодом, который позволяет специалистам перехватывать данные и, таким образом, внедрять вредоносные полезные нагрузки.
Чтобы установить Frida, необходимо убедиться, что у пользователя есть привилегии Root на машине Ubuntu, а затем выполнить следующую команду:
pip3 install Frida-tools
Установка Objection на Ubuntu
Objection – это инструмент среды мобильных телефонов, разработанный Frida, который позволит пользователю оценить уровень безопасности его мобильного приложения, без необходимости получать привилегии Root.
pip3 install objection
Установка Frida-Server на Android
Перед установкой Frida-Server на свое Android-устройство нужно определить его архитектуру с помощью следующей команды:
adb shell
getprop |grep abi
Следует также перейти по этому URL-адресу: https://github.com/frida/frida/releases и скачать файл ZIP для своего устройства. Поскольку у пользователя архитектура x86, поэтому он и скачал версию для x86.
После того как пользователь скачал и извлек файлы для установки Frida-Server, он должен переименовать файл на «Frida-server» и скопировать папку внутри каталога /tmp устройства Android с помощью следующей команды:
adb push frida-server /tmp
Нужно изменить разрешения для «Frida-server» внутри /tmp на устройстве Android.
adb shell
cd /tmp
chmod 777 frida-server
С помощью Frida пользователь может распознать работающие в фоновом режиме процессы Android-приложения.
В данном примере пользователь тестирует DIVA, что является уязвимым apk, используемым для учебных пособий по тестированию на проникновение Android. Итак, человек установил этот apk на свое Android-устройство и протестирует его с помощью Frida.
Нужно рассмотреть более подробно результаты тестирования DIVA, а затем использовать Object, чтобы изучить их. Это позволит пользователю выполнить задачи, перечисленные ниже:
- Взаимодействие с файловой системой, перечисление записей, а также загрузка файлов там, где это разрешено.
- Выполнение различных задач, связанных с памятью, таких как перечисление загруженных модулей и их экспорт.
- Обход и имитация сред jailbroken или root.
- Запуск и перечисление загруженных классов и методов.
- Выполнение обычных обходов SSL.
- Получение аргументов из методов, вызываемых при использовании целевого приложения.
- Взаимодействие с базами данных SQLite онлайн без необходимости загружать целевую базу данных и использовать внешний инструмент.
- Выполнение пользовательских скриптов Frida.
frida -ps -U | grep diva
objection -g jakhar.aseem.diva explore
android root disable
android sslpinning disable
Как видно на картинке, у пользователя есть bypass root-detection & SSL-Pinning. SSL Pinning — это дополнительный уровень безопасности для предотвращения перехвата и проведения MITM-атаки.
Автор переведенной статьи: Shubham Pandey.
Важно! Информация исключительно в учебных целях. Пожалуйста, соблюдайте законодательство и не применяйте данную информацию в незаконных целях.
ЧИТАТЬ ВСЕ СТАТЬИ НА САЙТЕ | ПОДПИСЫВАЙТЕСЬ НА НАШ TELEGRAM КАНАЛ