В iOS Forensic Toolkit 10.11 появилась поддержка извлечения данных на уровне загрузчика для Apple Watch Series 4, Apple Watch Series 5 и Apple TV 4K второго поколения. В этой статье подробно описана вся процедура для обеих моделей часов. Метод основан на эксплойте usbliter8, нацеленном на SecureROM — неизменяемый загрузочный код в чипе. Если эксплойт checkm8 работал с чипами Apple вплоть до поколения A11, то usbliter8 поддерживает уже следующее за ним поколение процессоров.
Процесс извлечения полностью криминалистически чист: инструментарий выполняет всю работу исключительно в оперативной памяти часов и не запускает штатную операционную систему устройства. Раздел пользовательских данных остаётся нетронутым, поэтому при повторном извлечении контрольная сумма будет совпадать.
Для применения usbliter8 требуется плата микроконтроллера со специальной прошивкой нашей разработки. Прошить плату необходимо всего один раз; после этого её можно использовать для всех последующих извлечений.
Для начала — требования и подготовка.
Прошивка платы
ПРИМЕЧАНИЕ. Прошить плату требуется однократно. После прошивки порт USB-C используется для подачи питания, а к разъёму USB-A подключается само устройство.
Перевод часов в режим восстановления (Recovery)
./EIFT_cmd tools recoveryПРИМЕЧАНИЕ. Всегда сначала переводите устройство в режим Recovery. Если ошибиться при вводе в DFU, часы начнут штатно загружать watchOS. Загрузка Apple Watch происходит медленно, и вы потеряете время.
Перевод часов в режим DFU
./EIFT_cmd info, чтобы убедиться, что часы перешли в режим DFUПРИМЕЧАНИЕ. Самый сложный момент — выдержать паузу в 2,5–3 секунды. Если с первого раза не получилось, просто повторите попытку.
Применение эксплойта
./EIFT_cmd info, чтобы убедиться, что часы находятся в режиме DFU и эксплойт usbliter8 успешно примененВ этой сессии плата вам больше не понадобится.
Команды здесь точно такие же, как и при извлечении через checkm8. Подробные инструкции можно найти в статьях в конце раздела.
| Команда | Назначение |
|---|---|
./EIFT_cmd boot |
Запускает ramdisk. Тулкит определяет версию watchOS и выводит одну или несколько ссылок на прошивки. Используйте последнюю ссылку в списке. Ссылку можно вставить в консоль либо скачать файл заранее и перетащить его мышью в окно терминала. |
./EIFT_cmd ramdisk unlockdata |
Разблокирует раздел данных и монтирует его в режиме «только для чтения» (read-only). При запросе тулкита введите код блокировки от часов. Если не сработает, используйте loadnfcd и далее unlockdata -s |
./EIFT_cmd ramdisk keychain -o {filename} |
Извлекает и расшифровывает связку ключей (keychain). |
./EIFT_cmd ramdisk tar -o {filename} |
Создает образ файловой системы. Контрольная сумма рассчитывается непосредственно в процессе извлечения. |
./EIFT_cmd ssh halt |
Выключает часы (при следующем включении они загрузятся в режим Recovery). |
Вот, собственно, и всё. Возможно, потребуется пара перезагрузок, но никаких особых хитростей здесь нет — процесс отлажен и стабилен. Плата прошивается один раз, затем часы переводятся в режим DFU, после чего эксплойт применяется с помощью платы. Как только загорится постоянный зеленый индикатор, дальнейшие шаги полностью соответствуют обычному извлечению данных через загрузчик. Единственная сложность в тайминге перевода в DFU: паузу между отпусканием кнопок нужно выдержать предельно точно. Также часы придётся переподключать несколько раз — для этой процедуры это абсолютно нормально.
Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).