Эксплойт checkm8 позволяет обойти ограничения безопасности и получить неограниченный доступ к загрузчику (bootrom) устройств. Особенность этого эксплойта в том, что уязвимость, на которой он основан, нельзя исправить программно (в виде обновления ПО или перепрошивки устройства), так как брешь кроется в неперезаписываемой (read-only) памяти устройства.
Метод «iOS с использованием checkm8» позволяет извлечь часть информации из телефона или планшета, даже если устройство заблокировано и пароль от экрана блокировки неизвестен. В таком случае извлечение будет происходить в режиме BFU (Before First Unlock), в котором можно получить данные о сетевых подключениях, артефакты операционной системы, информацию о звонках и сообщениях, а также данные некоторых приложений и голосовой почты. Если устройство разблокировано происходит логическое извлечение всей его файловой системы.
Для успешного применения уязвимости checkm8 на iPhone 8, iPhone 8 Plus, iPhone X на iOS 14.0 - 16.0 необходимо отключить блокировку экрана устройства с помощью пароля. При отключении блокировки экрана с помощью пароля из устройства будут удалены карты Apple Pay и будет недоступен сброс пароля учетной записи Apple ID через ввод пароля на блокировку экрана.
На устройствах iPhone 8, iPhone 8 Plus, iPhone X на iOS 16.0 и 16.0 Beta с номером билда 20А362 и выше, а также на устройствах iPad 5th gen, iPad 6th gen и iPad 7th gen на iOS 16.1 Beta с номером билда 20B5045d и выше не применится уязвимость, если ранее была установлена блокировка экрана устройства с помощью пароля. Номер билда можно посмотреть в Настройки / Основное / Об этом устройстве / Версия iOS /.
Для iPhone 7, iPhone 7+ на iOS 14.0 - 14.8 возможно применение SEP уязвимости, для которой не требуется отключение пароля блокировки экрана. После применения SEP эксплоита нельзя менять пароль блокировки, это может привести устройство в нерабочее состояние. Восстановление устройства потребует перепрошивки с удалением пользовательских данных. Изменить пароль можно после завершения работы метода и перезагрузки устройства.
С применением уязвимости сheckm8 из Apple-устройств можно извлечь:
данные только выбранных приложений, установленных на устройстве;
данные секретного хранилища keychain;
полную файловую систему устройства в виде .tar-архива;
Для извлечения данных методом «iOS с использованием checkm8» необходимо выполнить следующие действия:
Запустите модуль «МК Извлечение устройств».
Выберите метод «iOS с использованием checkm8».
Проверьте, что извлечение методом поддерживается для вашего устройства.
Зарядите iOS-устройство.
Убедитесь, что установлена последняя версия iTunes (можно скачать и установить по кликабельной ссылке в инструкции к методу).
Выберите путь для сохранения извлечения или оставьте его по умолчанию, после чего нажмите на кнопку «Checkm8 извлечение».
После открытия вкладки с процессом извлечения подключите iOS-устройство к ПК по USB в режиме восстановления для определения версии iOS. Как перевести то или иное устройство в данный режим, можно прочитать в инструкции по кликабельной ссылке. После перевода в режим восстановления появится информация о подключенном устройстве и кнопка «Начать извлечение», нажмите ее.
Для считывания параметров устройства переведите его в режим DFU. Как перевести устройство в данный режим, можно прочитать в инструкции на экране ПК.
Дождитесь установки драйвера “USB driver installer“, применения уязвимости, модификации Boot и Kernel.
Подождите, пока специальный RAMDisk загрузится в оперативную память устройства и телефон запустится в специальной подготовленной для извлечения среде, вместо стандартной ОС устройства, чтобы избежать включения устройства в обычном режиме. Это гарантирует сохранность пользовательских данных и предотвращает любые изменения в них.
После повторного подключения iOS-устройства на экране ПК появятся две активные кнопки: «Извлечь все данные» и «Выборочное извлечение». Нажав «Извлечь все данные», возможно получить полный объем информации из устройства, доступный для метода. Кнопка «Выборочное извлечение» предоставляет возможность выбрать конкретные данные для извлечения в целях экономии времени.
Дождитесь извлечения данных keychain, файловой структуры устройства, подсчета хешей и выключения устройства.
По окончании извлечения во вкладке «Результат извлечения» можно открыть папку с извлеченными данными или импортировать их в программу для дальнейшего анализа.