Режим обновления прошивки Device Firmware Upgrade (DFU) был разработан Apple для обновления или исправления прошивки устройства, даже если оригинальная прошивка была повреждена. С недавнего времени этот режим получил второе дыхание: для ряда моделей iPhone были разработаны способы извлечения файловой системы, а для старых устройств — и взлома кода блокировки, работающие именно через режим DFU. В то же время режим DFU не документирован, а способы попасть в него отличаются сложностью и разнообразием. В этой статье собрана актуальная на январь 2020 года информация обо всех известных нам способах перевода iPhone разных моделей в режим DFU.
Перевести iPhone в режим DFU вам придётся в случаях, когда для анализа устройства необходимо воспользоваться эксплойтом checkm8 или установить джейлбрейк checkra1n, позволяющих извлекать данные из устройств поколений от iPhone 5 до iPhone X включительно, или при использовании limera1n на старых устройствах. Кроме того, режим DFU необходим для взлома кода блокировки на iPhone 4, 5 и 5c посредством Elcomsoft iOS Forensic Toolkit. Ещё один вариант использования режима DFU — извлечение по методу «до первой разблокировки» (BFU). Наконец, DFU можно использовать для сброса заблокированного телефона (в этом случае данные с устройства будут безвозвратно удалены).
Перед тем, как переводить iPhone в режим DFU, вам может потребоваться перевести его в режим восстановления прошивки (recovery mode). По многократным сообщениям экспертов, перевод устройства в режим recovery с последующим переходом в режим DFU обеспечивает заметно более высокую вероятность срабатывания эксплойта. Наш собственный опыт подтверждает информацию от экспертов: запустить взлом паролей на тестовом iPhone 5 нам удалось исключительно при переходе в режим DFU через recovery; при непосредственном переходе в режим DFU эксплойт не срабатывал. В то же время нам не удалось перевести новый iPhone 12 в режим DFU через recovery, так что универсального рецепта, к сожалению, не существует.
Подводя итоги: если вы планируете анализ с использованием checkm8 или checkra1n, попробуйте сначала переключить телефон в режим восстановления, и только потом — в режим DFU.
В отличие от режима DFU, режим восстановления (в англоязычных источниках – recovery mode) прекрасно документирован, и перевести в него устройство не составляет труда. Для перевода устройства в этот режим необходимо выполнить принудительную перезагрузку, запустить на компьютере iTunes (или открыть Finder на свежих версийх macOS), подключить устройство к компьютеру, после чего выполнить следующие действия (информация с сайта Apple):
Процедура вывода устройства из режима восстановления также различается для разных поколений устройств. Общие для всех устройств шаги:
В случае, если штатным образом вывести устройство из режима восстановления не удаётся, воспользуйтесь следующей процедурой.
Для режима обновления прошивки DFU отсутствует какая-либо официальная документация. Предполагается, что в этот режим устройства будут переводить исключительно авторизованные сотрудники ремонтных мастерских. Последовательность шагов для перевода устройства в режим DFU отличается для устройств разных поколений, а сам процесс значительно сложнее. Для успешного перехода в этот режим требуется в точности выдерживать заданные задержки. Если недодержать или передержать кнопки в процессе выполнения инструкций, устройство просто перезагрузится.
Информацию о способах перевода различных устройств в режим DFU приходится черпать из независимых источников. Ниже приводится краткий список статей с актуальными данными:
Ниже приводится информация о переводе в режим DFU ряда устройств, для которых нам удалось найти соответствующие инструкции. Обратите внимание: в режиме DFU экран устройства останется чёрным; никакого визуального подтверждения перехода в режим DFU вы не увидите.
Apple TV
Устройства с процессорами A9 и более старые (ряд моделей iPad, iPhone 6s и более старые, iPhone SE и iPod touch 6 и более старые)
Альтернативный способ 1:
Альтернативный способ 2:
Экран устройства останется полностью черным.
Устройства с процессором A10 devices (iPhone 7 и iPhone 7 Plus, iPad 2018, iPod touch 7)
Если на экране устройства отображается сообщение о подключении устройства к iTunes, повторите процедуру.
Устройства с процессором A11 и более новые (iPhone 8 и новее, iPad Pro 2018, iPad Air 2019, iPad Mini 2019)
Если устройство успешно перешло в режим DFU, экран остаётся чёрным. iTunes выдаст сообщение, что обнаружено устройство в режиме восстановления.
Если на вашем устройстве отображается экран с сообщением о подключении устройства к iTunes, повторите процедуру.
Устройства с процессором A12, A13 и A14 Bionic (модельный ряд iPhone Xr и Xs, модельные ряды iPhone 11 и iPhone 12, iPhone SE 2020)
Эти устройства также можно перевести в режим DFU, но большого смысла с точки мобильной криминалистики в этом нет. Эксплойт checkm8 неприменим ни к одной из этих моделей, а доступная в режиме DFU информация об устройстве минимальна.
Процесс выхода из режима DFU также различен для разных устройств.
Для устройств с физической кнопкой «Домой» (вплоть до iPhone 6s и iPhone SE включительно): удерживайте кнопку «Домой» и кнопку блокировки до перезагрузки устройства.
Для iPhone 7 и iPhone 7 Plus: удерживайте боковую кнопку и кнопку уменьшения громкости, пока устройство не перезагрузится.
Для iPhone 8 и iPhone 8 Plus, iPhone X: нажмите кнопку увеличения громкости, затем кнопку уменьшения громкости, после чего нажмите и удерживайте боковую кнопку, пока устройство не перезагрузится.
Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).