Безопасность IOS-приложений (часть 27) – Настройка мобильной платформы для пентестов в IOS 7

Безопасность IOS-приложений (часть 27) – Настройка мобильной платформы для пентестов в IOS 7

В этой статье мы поговорим о том, как настроить мобильную платформу для пентеста на джейлбрейковом устройстве с IOS 7.

Автор: Пратик Джианчандани (Prateek Gianchandani)

В этой статье мы поговорим о том, как настроить мобильную платформу для пентеста на джейлбрейковом устройстве с IOS 7. На просторах интернета разгораются весьма жаркие дискуссии на тему того, безопасно ли использовать устройство с джейлбрейком. Однако если вы интересуетесь тематикой безопасности и пентестинга, не существует ни одной причины, почему вам не нужно сделать джейлбрейк. Поскольку джейлбрейк (первая его публичная версия) авторства evasi0n был выпущен без предварительного оповещения разработчиков, большинство фитч не работал в IOS 7. Один из наиболее критических компонентов Mobile Substrate, используемый во множестве мест, первоначально не работал в IOS 7. Однако с тех пор многое изменилось. Обновленная версия Mobile Substrate (именуемая Cydia Substrate) была выпущена некоторое время назад, и многие фишки, хотя и не все, также были доработаны под IOS 7. В этой статье мы рассмотрим процесс настройки платформы с установленной IOS 7 для выполнения пентестов.

Как сделать джейлбрейк

Чтобы сделать джейлбрейк, необходимо загрузить соответствующее программное обеспечение с сайта evasi0n.com. Текущая версия поддерживает устройства с версией IOS вплоть до 7.0.6. После загрузки подключите устройство к вашему компьютеру через USB, откройте evasi0n и кликните на кнопку Jailbreak, чтобы начать процесс. Мое устройство уже с джейлбрейком, поэтому я не буду запускать этот процесс заново.

Рисунок 1: Стартовое окно утилиты evasi0n

После запуска следуйте инструкциям программы. Как только джейлбрейк завершен, вы увидите, что на устройстве появилась Cydia. Теперь вам необходимо установить последнюю версию Mobile Substrate (которая называется Cydia Substrate) и Substrate safe mode для IOS 7. Фреймворк Mobile Substrate очень важен, поскольку на нем завязано большинство функционала. Substrate safe mode позволяет перезагружать устройство в безопасном режиме, когда отключены все фитчи. Это может потребоваться при возникновении проблем с устройством.

При поиске по слову Cydia вы найдете Cydia Substrate.

Рисунок 2: Поиск и установка Cydia Substrate

При поиске по слову Substrate вы найдете Substrate Safe Mode. Для установки в обеих утилит вам необходимо кликнуть на них, а затем нажать на кнопку Install.

Рисунок 3: Поиск и установка Substrate Safe Mode

После этого вам необходимо установить утилиту OpenSSH, которая позволит вам подключаться к устройству через ssh. Чтобы найти эту утилиту, в поисковой строке введите OpenSSH.

Рисунок 4: Поиск и установка OpenSSH

Чтобы установить OpenSSH, кликните на названии утилиты, а затем на кнопку Install.

Рисунок 5: Информация об утилите OpenSSH

После установки OpenSSH необходимо поменять пароли. IP-адрес устройства можно найти, если зайти в настройки приложения, выбрать Wifi, а затем посмотреть настройки сети, к которой вы подключены. По умолчанию, для пользователей mobile и root установлен пароль alpine.

Рисунок 6: Смена паролей

Далее, используя Cydia, необходимо установить пакет Big boss recommended tools, который содержит самые нужные утилиты для работы.

Рисунок 7: Установка пакета Big boss recommended tools

Теперь необходимо установить другие важные утилиты. Начнем с Clutch. Эта утилита дешифрует приложения, загружаемые из App Store. Загрузить Clutch можно отсюда. Скопируйте ее в папку /usr/bin и не забудьте назначить права на запуск.

Рисунок 8: Загрузка и установка Clutch

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

E: Could not get lock /var/lib/dpkg/lock – open (35: Resource temporarily unavailable) E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

Это означает, что на переднем плане работает Cydia. Cydia также требует привилегий суперпользователя, и, следовательно, если вы попытаетесь запустить другую утилиту, у вас ничего не получится. Нажмите кнопку Home на устройстве и переведите Cydia в фоновый режим. Теперь вы можете запускать терминальные команды с привилегиями суперпользователя.

Еще одна важная утилита для работы - class-dump-z. На данный момент (10 января 2014 года) новая версия class-dump-z не работала с устройствами на базе IOS 7. Однако просматривать информацию о классах вы можете, используя старую утилиту class-dump.

Рисунок 9: Выгрузка информации о классах приложения при помощи утилиты class-dump

То же самое касается и Cycript. Если вы запустите новую версию в IOS 7, то получите Segmentation fault. Однако более старая версия (например, 0.9.458 или старее), кажется, работает вполне сносно, но с ограниченным функционалом. Полагая, что подобные проблемы были из-за некорректной работы Mobile Substrate, я сделал джейлбрейк заново. После этого, cycript стал работать в полный рост.

Вы можете загрузить Cycript отсюда, а затем установить его при помощи команды dpkg -i packageName.

Возможно, вы также захотите установить отладчик gdb. Корректную версию можно взять здесь.

В следующей статье мы рассмотрим утилиту Hopper, которая предназначена для патчинга бинарный файлов. 

Большой брат следит за вами, но мы знаем, как остановить его

Подпишитесь на наш канал!