Статьи по ключевому слову ‘checkra1n’

Джейлбрейк checkra1n — уникальное явление в экосистеме Apple, эксплуатирующее аппаратную уязвимость в загрузчике ряда устройств. К сожалению, процесс установки джейлбрейка checkra1n не так прост и прямолинеен, что часто приводит к ошибкам. В то же время чёткое следование инструкциям позволяет добиться успеха почти в ста процентах случаев. О правилах и особенностях установки checkra1n мы поговорим в этой статье.

Для чего нужен checkra1n

Нужно ли устанавливать джейлбрейк в процессе извлечения данных? Ответ на этот вопрос зависит только от вас. Если известен код блокировки устройства, вам могут быть доступны другие варианты извлечения данных — от логического анализа до скачивания из облака (через сброс пароля к iCloud). В то же время работа через джейлбрейк позволяет извлечь полный образ файловой системы, включая рабочие базы данных различных защищённых программ мгновенного обмена сообщениями, которые практически никогда не попадают в резервные копии.

Даже если вы приняли решение об установке джейлбрейка, вовсе не обязательно пользоваться именно checkra1n. Для ряда устройств и версий iOS доступен альтернативный вариант — джейлбрейк unc0ver; ещё один джейлбрейк (Odyssey) на подходе.  Между этими вариантами есть существенная разница, о которой мы писали в англоязычной части нашего блога в статье checkra1n & unc0ver: How Would You Like to Jailbreak Today. Вкратце, основными преимуществами checkra1n является поддержка самых свежих версий iOS, которые не поддерживаются другими джейлбрейками, и возможность работы с «холодными» устрофствами в режиме BFU (Before First Unlock, или «до первой разблокировки») даже в тех случаях, когда код блокировки устройства неизвестен. Ещё одним немаловажным преимуществом checkra1n является то, что для его установки не нужно подписывать файл-установщик (IPA) через AltStore или с использованием учётной записи Apple для разработчиков.

Совместимость и интерфейс командной строки

checkr1n совместим с моделями iPhone от 5s до iPhone X включительно, многочисленными моделям iPad, а также Apple TV 4 (Apple TV HD) и Apple TV 4K. Поддержка версий iOS заявлена в промежутке от iOS 12.3 до 13.5.

В то же время разработчики предусмотрели возможность установки checkra1n и на тех версиях iOS, которые не поддерживаются официально. Для этого достаточно активировать режим “Allow untested versions”, как показано на скриншоте. Мы успешно опробовали checkra1n на устройствах с iOS 13.5.1 и 13.6. В то же время со старыми версиями iOS (12.3 и ниже) успеха мы не добились.

При установке checkra1n рекомендуем воспользоваться интерфейсом командной строки вместо режима GUI; по нашим наблюдениям, в режиме командной строки установка работает более надёжно. Важно отметить, что при работе с устройствами, которые находятся в режиме BFU с неизвестным кодом блокировки экрана и заблокированным портом USB, режим командной строки — единственный доступный.

Требования к компьютеру

В отличие от подавляющего большинства других джейлбрейков, checkra1n устанавливается только с компьютера под управлением macOS или Linux. Версии для Windows нет, однако существуют различные способы обхода этого ограничения — например, эмуляторы и загрузочные флеш-накопители. Если в вашем распоряжении только компьютер под управлением Windows, воспользуйтесь одним из решений Ra1nUSB, Bootrain или ra1nstorm.

Кроме того, существует вариант установки через Raspberry Pi, однако по информации от разработчиков он работает недостаточно стабильно (в особенности — на устройствах Raspberry Pi Zero и Raspberry Pi 3).

Таким образом, для установки checkra1n имеет смысл воспользоваться именно компьютером под управлением macOS. Мы не проверяли работу установщика на Big Sur, но в macOS Catalina он функционирует без проблем.

Требования к коннектору и кабелю

Основное правило: используйте сертифицированный кабель формата Lightning to USB Cable (с коннектором USB Type-A), но ни в коем случае не кабель с коннектором USB Type-C. О причинах пишут разработчики checkra1n:

Кабели Lightning с разъёмом USB-C проблематичны в использовании. В частности, некоторые из них не могут быть использованы для перехода в режим DFU, и мы ничего не можем с этим поделать. В число неработоспособных входят как собственные кабели USB-C от Apple, так и некоторые сторонние кабели. В то же время ряд сторонних кабелей оказался работоспособным, однако сказать заранее, какой кабель сработает, а какой — нет, не получается. Если конкретный кабель не работает, рекомендуем использовать кабель USB-A, при необходимости — в сочетании с адаптером USB-A-C.

Техническое объяснение:

BootROM перейдёт в режим DFU только в том случае, если обнаружит напряжение на разъёме USB. В свою очередь, определение напряжения на разъёме сводится к проверке того, установлен ли определённый вывод из чипа Tristar. Tristar делает это на основе «идентификатора аксессуара» кабеля. Очевидно, что кабели USB-A и USB-C имеют разные идентификаторы аксессуаров, а некоторые кабели USB-C заставляют Tristar не устанавливать вывод напряжения USB.

Наконец, воздержитесь от использования USB-хабов (вариант с переходником с USB-C на USB-A допустим).

Другие особенности

Одной из неочевидных особенностей при установке checkra1n является уровень заряда аккумулятора телефона. Убедитесь, что устройство не находится в режиме Low Power, а заряд аккумулятора заметно превышает 20%.

Ещё одна рекомендация от разработчиков checkra1n: при попытке установить checkra1n на несколько телефонов подряд, успешной будет только первая попытка. Обойти проблему можно, перезапустив checkra1n после каждой попытки.

Со своей стороны добавим, что, возможно, вам придётся перезапустить компьютер с macOS. Похоже, драйвер USB driver или какой-то другой компонент системы перестаёт нормально работать после попытки установить checkra1n; при этом самый простой способ восстановить работоспособность — перезагрузить компьютер, отключить iPhone, подключить его заново и снова ввести в режим DFU.

Если вам всё ещё не удаётся установить checkra1n, вы можете оформить запрос в checkra1n issue tracker, максимально подробно описав проблему и убедившись, что её решение не опубликовано ранее.

Ближайшее будущее

Заработает ли checkra1n с новыми версиями iOS, включая iOS 14? Для iOS 13.6 ответ положительный. Что же касается iOS 14, мы протестировали работу последней версии checkra1n (0.20.2) с iOS 14 beta 2 на ряде устройств от iPhone 6s до iPhone X, обнаружив, что на данный момент ни одна из протестированных конфигураций не поддерживается. В то же время, одному из наших партнёров удалось успешно установить checkra1n на одно из тестовых устройств.

Вероятно, checkra1n получится адаптировать для работы с будущими версиями iOS, но полной уверенности в этом нет. Apple работает над усилением безопасности экосистемы; по слухам, извлечение в режиме BFU на устройствах iPhone 7, iPhone 8 и iPhone X заметно ограничат или сделают невозможным (iPhone 6s в этот список не входит). В то же время, если код блокировки экрана вам известен, то установить checkra1n вы сможете, но только после того, как код блокировки будет с устройства удалён. Обратите внимание, что снятие кода блокировки приводит к ряду негативных последствий в том, что касается содержимого устройства и доступа к iCloud.

Какие существуют способы для извлечения максимально подробных данных из устройств iPhone, iPad, Apple TV и Apple Watch, и каким из множества способов стоит воспользоваться? Ответ на этот вопрос — многомерная матрица со множеством сносок и отступлений. О них мы и поговорим в этой статье.

Вопрос совместимости

Первые два измерения матрицы — совместимость различных способов извлечения с версией программного обеспечения и аппаратной платформой устройства. На создание таблицы совместимости ушло много времени и усилий; при этом время, в течение которых эти данные будут оставаться актуальными, ограничено циклом выхода новых версий соответствующих операционных систем. В таблице отсутствуют модели планшетов iPad; это упущение связано с тем, что совместимость соответствующих моделей iPad практически полностью совпадает с совместимостью моделей iPhone, работающих под управлением аналогичных версий операционной системы (версии iOS и iPadOS  синхронизированы).

Расшифровка сокращений:

  • Backups — локальные резервные копии в формате iTunes или в iCloud
  • iCloud Sync — данные, синхронизированные в облаке iCloud
  • Media/Shared/Logs — мультимедиа-файлы (изображения и видео), файлы некоторых приложений и журналы диагностики
  • FFS — Full File System, полный образ файловой системы устройства
  • Keychain — Связка ключей (извлечение и расшифровка)
  • FFS & keychain — полный образ файловой системы и расшифровка Связки ключей

Рассмотрим возможные подводные камни.

По типу устройства

iPhone и iPads (iOS/iPadOS)

Для iOS (и iPadOS) доступно максимальное разнообразие методов извлечения данных. Всё, что вам потребуется — это кабель Lightning или USB Type-C (для моделей iPad Pro и Apple TV 4). Впрочем, для извлечения через checkra1n мы рекомендуем использовать кабель USB-A — Lightning (пример), но не USB-C — Lightning, т.к. при использовании последнего часто возникают проблемы (в частности, с переводом устройства в режим DFU).

Apple TV (tvOS)

В случае с Apple TV 4 всё достаточно просто: устройство оборудовано разъёмом USB Type-C. В новой модели 4K порт убрали; вам потребуется переходник, позволяющий подключиться к скрытому порту Lightning. Мы написали об этом в статье Jailbreaking Apple TV 4K.

Если вы предпочитаете использовать checkra1n вместо unc0ver (например, если версия tvOS не поддерживается unc0ver), обратите внимание: вам потребуется дополнительный кабель-прерыватель для перевода устройства в режим DFU.

Без джейлбрейка можно извлечь мультимедиа-файлы и метаданные плюс некоторые журналы диагностики.

Apple Watch (watchOS)

В данном случае адаптер нужен всегда, см. Apple TV and Apple Watch Forensics 01: Acquisition. Нужные адаптер носит название «IBUS». В настоящее время подобные адаптеры существуют для поколений часов S1/S2/S3, но не для S4 или S5. В то же время, часть данных (в основном Здоровье), которые собираются часами, синхронизируются с подключённым телефоном iPhone и через него — с облаком iCloud. Отдельных резервных копий часов в облаке нет, но часть данных Apple Watch хранится в резервных копиях iPhone.

По методу извлечения

Логическое извлечение данных — самый быстрый, простой, безопасный и совместимый метод сбора данных. Да, этот метод предоставляет ограниченный объем данных; тем не менее, мы рекомендуем воспользоваться в первую очередь именно им. Обратите внимание:

  • Существуют различия в данных между локальными и облачными резервными копиями.
  • Также существуют различия между локальными резервными копиями с и без пароля (см. The Most Unusual Things about iPhone Backups); больше данных содержат именно резервные копии с паролем.
  • Извлечь резервную копию из облака может оказаться сложнее, чем кажется (и это не только вопрос двухфакторной аутентификации).

Имейте в виду, что резервные копии — лишь часть информации, доступной в рамках логического извлечения. Можно извлечь мультимедиа-файлы с метаданными, даже если резервная копия защищена паролем, а пароль неизвестен. Кроме того, можно извлечь некоторые файлы приложений (обычно документы, но иногда и другие пользовательские данные от фотографий до баз данных, включая например менеджеры паролей) и журналы диагностики, которые могут помочь в восстановлении истории использования устройства. Этот метод — единственный, который работает на устройствах Apple TV без джейлбрейка и на устройствах Apple Watch от S1 до S3.

Полный образ файловой системы содержит намного больше данных, чем даже резервная копия с паролем. С образом файловой системы вы получаете все данные, включая данные из «песочниц» приложений и системные базы данных с точками местоположения, информацию об использовании устройства и многое другое.

Настоящая золотая жила — Связка ключей. Связка ключей представляет собой защищённое и зашифрованное хранилище для паролей пользователя, ключей шифрования, сертификатов, данных кредитных карт и многого другого. Расшифровав Связку ключей, вы получите доступ к чатам защищённых мессенджеров, к сторонним облачным службам, используемым владельцем устройства, и многому другому. Если вы не работаете со Связкой ключей, вы многое теряете.

Чтобы получить файловую систему и связку ключей, мы рекомендуем извлечение с помощью агента (если он доступен для выбранной модели и версии системы), так как это самый безопасный и надежный метод. Однако поддержка версий iOS и моделей устройств шире именно с джейлбрейками.

Наконец, извлечение из облака iCloud (честно говоря, наша любимая тема). У этого метода так много преимуществ, что о них стоит написать отдельную статью. Устройство — не нужно! А вот код блокировки от него (не говоря о пароле к учётной записи) понадобится для расшифровки некоторых данных, защищённых в облаке сквозным шифрованием (не совсем корректный термин, извините). Через облако можно получить доступ к текущим и удалённым данным, а также к данным с других устройств пользователя, подключённых к той же учётной записи.

По версии ОС

Для логического анализа, включая извлечение файлов мультимедиа и журналов диагностики, версия операционной системы не имеет значения. Логический анализ доступен для всех версий ОС: от древней iOS 4 до предварительной бета-версии iOS 13.6 (последняя версия, доступная на момент написания этой статьи); результат будет примерно одинаков. Первая бета-версия iOS 14 выходит на следующей неделе, и мы практически уверены, что логический анализ заработает сразу и без проблем.

К сожалению, в случае с джейлбрейками и нашим собственным агентом-экстрактором дела обстоят иначе. Как джейлбрейки, так и наш агент-экстрактор базируются на обнаруженных исследователями уязвимостях. Такие эксплойты существуют для большинства версий iOS вплоть до iOS 13.5 включительно, но некоторые конкретные версии системы охвачены не полностью. Например, для iOS 12.3–12.4.7 из iPhone 5s и iPhone 6 мы можем извлечь только образ файловой системы, но не связку ключей. Аналогичным образом обстоят дела с устройствами под управлением iOS 13.3.1–13.4.1. Наконец, хотя для iOS 13.5 и доступен джейлбрейк, позволяющий извлечь как файловую систему, так и связку ключей, вам придётся самостоятельно устанавливать джейлбрейк; наш агент-экстрактор для этой версии не сработает. Для iOS 13.5.1–13.6 beta 2 можно использовать checkra1n (только для совместимых моделей).

С tvOS ситуация значительно хуже. Эксплойты существуют и для Apple TV (точнее, для tvOS), но джейлбрейки доступны только для очень ограниченного числа версий в диапазоне tvOS 9-12. Только tvOS 13 полностью поддерживается джейлбрейком checkra1n, включая (в теории) и последнюю бета-версию 13.4.8, которую мы однако ещё не проверяли. Мы в состоянии добавить поддержку агента для более старых версий tvOS, но конкретных планов пока нет. Обратите внимание, что Apple по умолчанию обновляет tvOS автоматически, поэтому на приставке Apple TV, как правило, будет установлена ​​последняя версия tvOS.

Что касается watchOS, то об извлечении файловой системы можно забыть независимо от версии watchOS. Несмотря на то, что watchOS уязвима для эксплойта checkm8, общедоступных джейлбрейков для watchOS 5.2 и более поздних версий просто не существует; текущей же версией является watchOS 6.2.8 beta 2. С другой стороны, бОльшая часть информации, собранной Apple Watch, доступна либо с iPhone, с которым он связан, либо из облака. Если у вас есть адаптер IBUS, вы сможете извлечь медиа-файлы и метаданные (для часов серии S1-S3).

Заключение

Как мы уже многократно писали, в случае с извлечением данных с устройств Apple не существует «решения одной кнопки» (не верьте производителям, которые заявляют о подобном), хотя мы стараемся сделать рабочий процесс максимально простым. Важно понимать, какие варианты извлечения данных доступны для каждой комбинации аппаратного и программного обеспечения, и принимать обдуманное и взвешенное решение при выборе метода для анализа (точнее, комбинации методов).

Одной из основных задач расследований, связанных с мобильными устройствами, является извлечение максимально полного набора данных. В случае, если мобильное устройство — iPhone, для низкоуровневого доступа к файлам и для расшифровки Связки ключей, в которой хранятся все пароли пользователя, может потребоваться установка джейлбрейка.  Несмотря на то, что существуют надёжные методы сбора данных, которые работают без джейлбрейка, эти методы могут быть недоступны в зависимости от ряда факторов, что возвращает нас к вопросу о джейлбрейках. Сегодня мы рассмотрим два самых популярных и самых надёжных в работе джейлбрейка — checkra1n и unc0ver. Чем они отличаются и в каких ситуациях какой из них стоит использовать? Попробуем разобраться.

Джейлбрейк checkra1n

Джейлбрейк chechra1n основан на уязвимости загрузчика, реализованной в эксплойте checkm8. Аппаратная природа проблемы не позволяет Apple закрыть уязвимость; соответственно, данный эксплойт и основанный на нём джейлбрейк останутся актуальными до тех пор, пока в циркуляции остаются устройства соответствующих поколений.

  • Подверженные уязвимости модели: iPhone 5s, 6, 6 Plus, 7, 7 Plus, 8, 8 Plus, iPhone X
  • Подверженные уязвимости версии iOS: iOS 12.3 до iOS 13.5.5 beta
  • За: совместимость с будущими версиями iOS; работает на заблокированных устройствах с неизвестным кодом блокировки
  • Против: поддерживается ограниченное число моделей; не работает для iOS 12.2 и более старых

Джейлбрейк unc0ver

Джейлбрейк unc0ver кардинально отличается от ранее описанного checkra1n. Данные джейлбрейк основан на уязвимостях в операционной системе iOS, а точнее — в конкретных версиях iOS вплоть до iOS 13.5. В новых версиях системы найденные уязвимости исправлены, и джейлбрейк перестал работать.

  • Подверженные уязвимости модели: iPhone 5s до iPhone 11 Pro Max и iPhone SE 2 (2020)
  • Подверженные уязвимости версии iOS: iOS 11.0 до iOS 13.5
  • За: стабильная установка и работа; совместим со всеми версиями iOS 11 и iOS 12; поддерживает последние поколения устройств Apple (iPhone 11, iPhone SE 2020)
  • Против: не работает с iOS 13.5.1 и 13.5.5 beta; используемые уязвимости закрыты Apple в свежих версиях системы

Агент-экстрактор

Рассказав о джейлбрейках и их особенностях, было бы неправильно не упомянуть альтернативный способ извлечения данных — агент-экстрактор нашей собственной разработки. Агент-экстрактор обеспечивает криминалистически чистый способ получить эскалацию привилегий и извлечь данные из устройства. К сожалению, агент-экстрактор работает не на всех версиях iOS, что естественным образом ограничивает область его применимости. В то же время, если конкретная комбинация аппаратного и программного обеспечения совместимы с агентом-экстрактором, использует следует именно его как наиболее безопасный и чистый способ, практически не оставляющий (за исключением записей в системном журнале) следов работы.

  • Поддерживаемые модели: iPhone 5s до iPhone 11 Pro Max и iPhone SE 2 (2020)
  • Поддерживаемые версии iOS: iOS 11.0 до iOS 13.3 (с некоторыми исключениями для iPhone 5s и iPhone 6)
  • За: 100% безопасность и криминалистическая прозрачность
  • Против: требуется учётная запись Apple для разработчиков; ограниченная совместимость

Прочие джейлбрейки

Для iOS 11 iOS 12 существуют и другие джейлбрейки, в частности — ElectrarootlessJB и Chimera. Мы поддерживаем Electra и Chimera, но поддержку rootlessJB в последней версии EIFT удалили. Связано это с тем, что обязанности этого джейлбрейка для всех поддерживаемых моделей устройств и версий iOS принял на себя агент-экстрактор нашей собственной разработки, который гораздо лучше приспособлен для работы в криминалистической лаборатории. В любом случае, мы рекомендуем остановиться на checkra1n и unc0ver для всех поддерживаемых ими устройств.

Для старых версий iOS доступны следующие джейлбрейки:

  • iOS 10.0 to iOS 10.3.3: Meridian
  • iOS 9.2 to iOS 9.3.3: Pangu
  • iOS 9.0 to 9.1: Pangu (другая версия)
  • iOS 8.0 to iOS 8.4: TaiG

Мы протестировали все, и не обнаружили проблем с извлечением как файловой системы, так и Связки ключей. Обратите внимание, что в некоторых джейлбрейках по умолчанию не включен ssh, поэтому вам придется установить OpenSSH из Cydia. Имейте в виду, что подключение устройства к сети несёт соответствующие риски. Поддержку iOS 10 в агент-экстрактор мы планируем добавить в ближайшее время.

Последовательность шагов

Прежде, чем вы предпримете какие-либо действия, необходимо узнать максимально полную информацию об устройстве:

  • Точный идентификатор модели
  • Установленная версия iOS
  • Заблокирован ли экран устройства и известен ли вам код блокировки

Для отключенных и заблокированных устройств с неизвестным паролем у вас не будет других вариантов, кроме использования checkra1n. Даже в этом случае вы будете ограничены извлечением данных из режима BFU (до первой разблокировки), в котором получится извлечь ограниченный набор данных. Это лучше чем ничего, но имейте в виду, что данный джейлбрейк совместим только с устройствами под управлением iOS 12.3 и более новых. Кроме того, checkra1n версии 0.9.6+ принудительно активирует режим ограничений USB, поэтому рекомендуем использовать более старую версию этого джейлбрейка, либо воспользоваться режимом диагностики для решения этой проблемы.

Если экран устройства разблокирован, но на устройстве установлена последняя версия iOS (бета-версия 13.5.1 или 13.5.5), checkra1n также будет единственным доступным вариантом.

Для большинства прочих моделей и версий iOS предпочтительным методом будет использование агента-экстрактора. Как отмечалось выше, это быстро и безопасно. При извлечении на основе агента не используется SSH; вместо этого используется прямое подключение. В текущей версии Elcomsoft iOS Forensic Toolkit есть полная поддержка iOS 11.0 — 13.3; для iOS 13.3.1 — 13.4.1 поддерживается только извлечение файловой системы (но не Связки ключей).

Для чего, в таком случае, нужен unc0ver? Этот джейлбрейк стоит использовать исключительно для современных поколений устройств на процессорах A12/A13 (модели iPhone Xs, Xr, 11, 11 Pro, SE2) для расшифровки Связки ключей в iOS 13.3.1-13.4.1 или iOS 13.5. Мы работаем над поддержкой расшифровки Связки ключей в iOS 13.5; эта возможность войдёт в ближайшую версию Elcomsoft iOS Forensic Toolkit, выход которой запланирован на следующей неделе.

Наконец, что можно сделать, если ни один из джейлбрейков к устройству не подошёл, а агент-экстрактор не поддерживает модель устройства или версию iOS? Ответ — логический анализ, включающий как резервную копию, так и другие данные. Обратите внимание:

  • Не позволяйте iPhone синхронизироваться с компьютером
  • Создавайте резервные копии с заданным (известным) паролем (в них содержится больше данных)
  • Не забывайте извлечь медиа-файлы, системные журналы и файлы приложений

Самый сложный вариант? Заблокированный iPhone на основе A12/A13 (checkm8 не поддерживается), с активированным режимом ограничений USB (нет возможности даже логического анализа, даже с действительной записью сопряжения lockdown/pairing). Все, что можно сделать, это переключить устройство в режим диагностики и извлечь информацию об устройстве, после чего запросить у Apple данные пользователя из облака, указав серийный номер устройства. Также можно попытаться найти учетные данные пользователя и выполнить извлечение из iCloud с помощью Elcomsoft Phone Breaker.

Другие устройства

Apple Watch S1-S3 точно так же уязвимы для эксплойта checkm8, как и модели iPhone, работающие на процессорах тех же поколений. Теоретически возможно полное извлечение файловой системы и из часов. Однако для Apple Watch не существует джейлбрейка; извлечение агентом-экстрактором также невозможно.

Для Apple TV 4 и 4K доступны джейлбрейки checkra1n и unc0ver. Мы не тестировали checkra1n (сложности с переводом Apple TV 4K в режим DFU, для чего необходим специальный адаптер), но unc0ver отработал корректно для версий tvOS до 13.4.5. Информация, доступная в Apple TV, может оказаться полезной для расследования — см. статью Apple TV and Apple Watch Forensics 01: Acquisition.

Заключение

«Решение одной кнопки» — несбыточная мечта для наших клиентов и недостижимая цель для нас. К сожалению, не существует ни одного решения, которое смогло бы извлечь информацию из абстрактного iPhone. В игру вступают такие тонкости, как используемый в модели процессор, установленная версия iOS, наличие или отсутствие кода блокировки экрана, активированный режим защиты USB и множество других факторов. Мы делаем все возможное, чтобы предложить экспертам на выбор несколько разных методов. Каким из них воспользоваться — вопрос как доступности и применимости для конкретного устройства, так и нужд эксперта в каждой конкретной ситуации.

Только что вышла свежая сборка iOS Forensic Toolkit. Для пользователя — эксперта-криминалиста, — изменения почти незаметны; внутри продукта, однако, изменилось многое. В этой статье мы расскажем о том, как работает один из самых интересных продуктов нашей компании, что изменилось в последней сборке и как это повлияет на процесс извлечения данных.

Для чего понадобился новый движок в iOS Forensic Toolkit

Необходимость в новом движке для утилиты низкоуровневого извлечения данных из устройств под управлением iOS (а также watchOS, tvOS и iPadOS) назрела давно. Для того, чтобы извлечь информацию из iPhone или iPad, нужно подключить его к компьютеру через USB порт. В отдельных случаях срабатывает и беспроводное подключение, но проводное — быстрее и гораздо надёжнее.

Для того, чтобы извлечь данные из iPhone, мы задействуем целый ряд протоколов и опрашиваем несколько разных служб, работающих на устройстве. Для того, чтобы это стало возможным, нам (и всем остальным поставщикам криминалистического ПО для iPhone) необходимы низкоуровневые драйверы Apple. Другого способа связаться с iPhone просто не существует.

Итак, драйвер. Сталкивались ли вы когда-нибудь с проблемой, описанной в статье Если компьютер не распознает iPhone, iPad или iPod? Помимо прочего, в состав автономной версии iTunes для Windows входит компонент под названием “Apple Mobile Device Driver” (фактически, это два разных драйвера — в 32- и 64-разрядном исполнении). А вот в редакции iTunes для встроенного в Windows 10 магазина приложений Microsoft Store этот компонент не входит — хоть сам драйвер и поставляется в составе продукта. Соответственно, предыдущие версии iOS Forensic Toolkit, рассчитывая на установленный в системе компонент, выдавали ошибку, если установлена была «магазинная» версия iTunes.

Ещё одной проблемой являются компоненты, которые расположены между драйвером и нашей утилитой. К примеру, в статье CheckRa1n описаны сторонние компоненты, iproxy; есть и множество других вещей, не вошедших в статью (например, itunnel_mux).

Наконец, что не менее важно, тип соединения. Мы всегда рекомендуем не только переводить устройство в режим «В самолёте», но и отключать сетевые подключения (Wi-Fi и даже Ethernet) на компьютере, на котором запущена утилита. Если об этом забыть, результат может получиться… неожиданный. Так, однажды в нашей лаборатории Toolkit случайно подключился к Apple TV, который находился в той же сети Wi-Fi, и даже получил от него какие-то данные. На тот момент мы и представить не могли, что такое возможно.

Что изменилось и как это повлияет на использование iOS Forensic Toolkit

Новый канал взаимодействия удаляет устаревшие зависимости и становится значительно быстрее и надёжнее. Теперь не имеет значения, установлена ли у вас установленная версия iTunes или версия Microsoft Store (тем не менее, рекомендуем ознакомиться со статьёй Apple iTunes: Standalone vs. Microsoft Store Edition, в силу наличия других особенностей данной версии). Благодаря новому каналу удалось избавиться от одного из предварительных шагов – требования отключать беспроводные сети на компьютере эксперта. Отключать беспроводные сети на iPhone мы рекомендуем по-прежнему в силу очевидных причин.

Новый канал взаимодействия работает для логического извлечения и при использовании джейлбрейка; агент-экстрактор собственной разработки Элкомсофт изначально использовал новый способ взаимодействия.

Наконец, последнее. Время от времени у некоторых пользователей возникали проблемы с работой команд (I)nfo, (L)ogs и (S)hared, проявлявшиеся на некоторых комбинациях устройств и версий iOS. Проблемы проявлялись случайным и непредсказуемым образом; сегодня работает, завтра — нет. И эта проблема также решена внедрением нового канала взаимодействия.

Помимо прочего, мы улучшили поддержку iOS 13.4.1 и добавили совместимость с iOS 13.4.5 (beta 4; мы пока не протестировали работоспособность нового механизма Exposure Notification API для отслеживания распространения COVID-19).

Windows или macOS?

Нам прекрасно известно, что популярность компьютеров Apple с macOS в России стремится к нулю, а их распространённость в среде специалистов по мобильной криминалистики не стремится, а строго равняется нулю. Тем не менее, было бы неправильно не рассказать о некоторых преимуществах, которыми обладают компьютеры Apple в контексте связки с другими устройствами компании — например, iPhone. Некоторые виды джейлбрейков, а также множество манипуляций (например, отключение режима защиты USB) возможны только в macOS. Само извлечение данных также работает более уверенно именно в ОС собственной разработки Apple в силу более качественных драйверов USB и некоторых особенностей ядра. Иными словами, для извлечения данных macOS подходит лучше. А вот для анализа собранной информации можно (и даже более удобно) использовать компьютер с Windows.

Если у вас используется macOS 10.15 Catalina, ознакомьтесь со статьёй Installing and using iOS Forensic Toolkit on macOS 10.15 Catalina:

  • Обработайте образ DMG iOS Forensic Toolkit с помощью команды xattr.
  • Установите доверительные отношения с устройством в Finder (немедленного запроса при подключении устройства нет).
  • Если вам нужен доступ к файлам lockdown (pairing), сначала отключите SIP (требуется перезагрузка), а затем предоставьте текущему пользователю доступ к этой папке с помощью команды sudo chmod.

Если вы используете Windows (мы поддерживаем Windows 8 / 8.1, Windows 7 и Windows 10), обязательно прочитайте iOS Acquisition on Windows: Tips&Tricks. Есть только одно важное дополнение: при создании резервной копии с помощью iOS Forensic Tookit проявите терпение. После выбора папки и ввода пароля резервной копии, но ещё до того, как процесс создания резервной копии фактически начнётся, может возникнуть пауза до 2 минут. На экране при этом ничего не происходит; это нормально. При возникновении любых проблем первое, что нужно попробовать, это просто перезагрузить систему и снова запустить процесс. (Мы в курсе того, что «перезагрузить систему» — первая и обычно последняя рекомендация «специалистов по технической поддержке», но в данной ситуации это действительно помогает в 90% случаев).

Информация о совместимости

На текущий момент актуальна следующая информация о совместимости:

  • (Расширенное) логическое извлечение: все устройства, все версии.
  • Полное извлечение файловой системы и связки ключей из взломанных устройств: все комбинации устройств/iOS, для которых доступен джейлбрейк (в настоящее время до iOS 13.4.5 бета для совместимых с checkra1n устройств, до 13,3 для iPhone Xs/Xr/11/11 Pro).
  • Извлечение агентом-экстрактором: большинство устройств под управлением iOS 11.0–13.3 (кроме iPhone 5s и 6 под управлением отдельных версий iOS).

Время жизни файлов lockdown в iOS 11-13 ограничено 30 днями согласно бюллетеню Apple Platform Security (используйте эту ссылку, если прямой линк на файл с PDF не работает). Эти файлы чрезвычайно полезны для расширенного логического извлечения заблокированных устройств, если не активирован режим ограничения USB (см. USB Restricted Mode in iOS 13: Apple vs. GrayKey, Round Two).

В ближайшее время мы планируем добавить извлечение файловой системы агентом-экстрактором для iOS 13.3.1, 13.4 и 13.4.1, а также некоторых устаревших версий iOS (от iOS 7 до iOS 10). Для использования этой функции вам нужна учётная запись разработчика Apple; есть вероятность, что мы сможем сделать подпись агента, используя одноразовый Apple ID.

Не забудьте о Связке ключей! Это — настоящий Клондайк, в котором содержатся все сохранённые пароли пользователя (используйте Elcomsoft Phone Breaker).

Наконец, не забывайте об Elcomsoft Phone Viewer, инструменте для просмотра и анализа собранной другими нашими программами данных. Приложение поддерживает резервные копии iTunes и iCloud, а также образы файловой системы:

Заключение

Извлечение данных из устройств под управлением iOS на первый взгляд выглядит проще, чем работа с Android, однако это иллюзия. Не доверяйте инструментам, которые не дают полного и подробного объяснения того, как работают все их функции, скрывая особенности работы под названиями «метод 1» и «метод 2» с пометкой «если первый метод не работает, попробуйте второй». Вам необходимо чётко представлять, как работает вся система, какие данные вы можете получить и главное — какими будут последствия.

НАШИ НОВОСТИ