iOS Forensic Toolkit: полезные советы

14 июля, 2023, Vladimir Katalov
Рубрика: «Полезные советы»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

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

Установка продукта

iOS Forensic Toolkit доступен в редакциях для Windows и macOS в двух разновидностях: седьмой (v7) и восьмой (v8) версии. Обратим внимание, что версия 8 доступна только для компьютеров с macOS (версия для Linux в разработке), а седьмая — для macOS и Windows (версии для Linux нет и не планируется). Скачать продукт можно с нашего официального сайта по ссылке, которая доступна в электронном письме с лицензией. Для скачивания продукта (свежая версия всегда доступна здесь) вам потребуется ввести ваш регистрационный ключ (он начинается с «IOFT-«). Доступны следующие варианты:

Elcomsoft iOS Forensic Toolkit v.7

  • Редакция для Windows
  • Редакция для macOS X

Elcomsoft iOS Forensic Toolkit v.8

  • Редакция для macOS Big Sur, Monterey и Ventura (чипы Intel и Apple Silicon)
  • Редакция для macOS High Sierra, Mojave, Catalina (только Intel)

Сравнение версий

Между седьмой и восьмой версиями продукта есть существенные различия как в использовании, так и в плане доступных возможностей. Версия 7 обладает упрощённым пользовательским интерфейсом в виде консольного меню; пользоваться ей проще, чем версией 8. С другой стороны, восьмая версия продукта использует интерфейс командной строки не от хорошей жизни: её функционал настолько расширен в сравнении с возможностями предыдущей версии, что никакое меню не способно отразить все нюансы использования.

Таким образом, версия 7 проще в использовании, но более ограничена в возможностях, а версия 8 — намного мощнее, но сложнее в использовании.

Отличается и список поддерживаемых сред исполнения. Если седьмую версию продукта можно запустить как на компьютерах с Windows, так и с macOS, то для восьмой версии доступна исключительно редакция для macOS. С другой стороны, редакции EIFT8 для Windows и Linux в активной разработке; как только они будут выпущены, версия 7 уйдёт со сцены.

Совместимость со старыми версиями iOS

Важный момент: по техническим причинам мы вынуждены были убрать поддержку старых версий iOS агентом-экстрактором. Чтобы воспользоваться низкоуровневым извлечением при помощи агента-экстрактора для устройств под управлением iOS 9 до iOS 11, воспользуйтесь iOS Forensic Toolkit 8.23 или 7.81, ссылку на которые можно запросить в нашей службе поддержки.

Установка версии 7

Здесь всё просто: достаточно запустить программу установки. На компьютерах Mac при первом запуске программы может возникнуть окно с предупреждением; его достаточно просто подтвердить.

Установка версии 8

Для установки восьмой версии продукта смонтируйте образ .dmg (выбрав правильную платформу) и введите пароль. Далее скопируйте папку EIFTx.y (x.y здесь — номер версии) в удобную для вас папку на вашем компьютере (например, в папку на рабочем столе). На следующем шаге потребуется открыть окно терминала и снять флажок карантина со всей папки программы следующей командой:

xattr -r -d com.apple.quarantine <path to folder>

Например, так:

xattr -r -d com.apple.quarantine /Users/ElcomSoft/Desktop/EIFT8.31

Использование Elcomsoft iOS Forensic Toolkit v8

После установки программы, в окне терминала зайдите в папку, в которую она была установлена. Например, так:

cd /Users/ElcomSoft/Desktop/EIFT8.31

Elcomsoft iOS Forensic Toolkit v8 использует интерфейс командной строки в следующем формате:

./EIFT_cmd {command}

Например, чтобы извлечь информацию о подключённом к компьютеру iPhone, выполните такую команду:

./EIFT_cmd info

Увидеть список всех поддерживаемых программой команд и модификаторов можно, просто запустив её без каких-либо параметров. Их подробное описание доступно в руководстве пользователя.

Важно: необходимо, чтобы USB-ключ с лицензией был и оставался подключён к компьютеру в течение всего времени использования продукта. Не вынимайте USB-ключ в процессе извлечения данных!

Дополнительное оборудование

Помимо, собственно, программного продукта и комплектного USB-ключа с лицензией вам понадобятся дополнительные провода, адаптеры и другое оборудование. В ближайшее время мы планируем опубликовать статью с подробным описанием обязательного и опционального дополнительного оборудования.

Важный момент: даже если у компьютера Mac, использующегося в вашей лаборатории, есть физический разъем USB Type A, не используйте его для подключения к компьютеру исследуемых устройств. Вместо этого необходимо использовать доступные порты USB Type C/Thunderbolt, подключив устройство посредством кабеля USB Type A — Lightning через USB-хаб или переходник USB Type C — Type A. Это особенно важно для последней версии EIFT для обеспечения правильной работы.

Подготовка помещения

Мы рекомендуем по возможности работать в помещении, изолированном от беспроводных сетей — как сотовых, так и сетей Wi-Fi (обратив особое внимание на отсутствие открытых точек доступа). В идеале желательно оборудовать так называемую «палатку Фарадея» — недорогое и компактное в сложенном виде сооружение, которое не пропускает электромагнитные волны, тем самым защищая устройство от возможного подключения к беспроводным сетям. Использовать обычную клетку Фарадея может быть недостаточным, т.к. вам придётся взаимодействовать с устройством в процессе работы.

Подготовка устройства

До начала работы нужно убедиться, что исследуемое устройство заряжена хотя бы до уровня 20% (а лучше — минимум до 50%). Разумеется, это не относится к устройствам, работающим от сети — Apple TV или Apple HomePod.

Очень важно, чтобы дата и время на устройстве совпадали с реальными. Если это не так, вы не сможете установить и использовать агент-экстрактор.

При использовании методов, основанных на эксплойте загрузчика, нужно иметь чёткое представление и практический опыт в переводе устройства в режимы Recovery и DFU (Device Firmware Update). Для этого используются кнопки питания и громкости; на некоторых устройствах — и кнопка «домой». Эти кнопки должны быть работоспособны. Также должен быть работоспособен экран устройства — как минимум, в степени, необходимой для ввода код блокировки.

Безотносительно к выбранному методу извлечения устройство должно быть изолировано от беспроводных сетей. Не забудьте включить полётный режим, а в дополнение к этому вручную проверить (и, при необходимости, отключить) состояние переключателей сетей Wi-Fi и Bluetooth, которые далеко не всегда автоматически отключаются в полётном режиме. Это необходимо для двух целей:

  1. Предотвращение нежелательной синхронизации
  2. Предотвращение удалённой блокировки или сброса устройства через сервис FindMy

Обратите внимание, что в некоторых специфических сценариях (например, при использовании эксплойта checkm8 на устройствах iPhone 8, iPhone 8 Plus или  iPhone X под управлением iOS 14 или 15) может потребоваться сброс настроек устройства. После этого устройство перезагрузится, а «полётный» режим будет автоматически отключён, что может привести к проблемам, если в устройстве присутствует физическая или электронная SIM-карта (или в помещении есть открытая точка доступа Wi-Fi), а само устройство не изолировано в клетке или палатке Фарадея.

Выбор метода извлечения данных

При использовании Elcomsoft iOS Forensic Toolkit очень важен правильный выбор метода извлечения данных. Об этом мы подробно поговорили в статье Есть iPhone. Как лучше извлечь из него данные?

Критически важно до начала работы собрать как можно больше информации об устройстве: его точной модели и версии операционной системы. Для ряда комбинаций могут быть доступны несколько разных способов доступа к данным. Очень важно использовать их в правильном порядке; в противном случае доступ к некоторым данным может быть утрачен, а криминалистическая чистота анализа — нарушена.

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

Расширенное логическое извлечение

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

  1. Полная информация об устройстве
  2. Резервная копия в формате iTunes *
  3. Медиа-файлы, включая метаданные
  4. Файлы приложений
  5. Журналы диагностики и некоторые системные журналы

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

Если на резервную копию установлен неизвестный пароль, восстановить или взломать который не удалось, воспользуйтесь оставшимися данными, доступными в рамках логического анализа. Вы сможете в любом случае получить медиа-файлы и метаданные к ним, журналы (они помогут понять сценарий использования устройства с привязкой к временной шкале) и некоторые другие данные. Помните: журналы — один из самых недооценённых артефактов в мобильной криминалистике! Не забывайте о том, что такие журналы может потребоваться предварительно сгенерировать; информация о том, как это сделать, доступна в документации к соответствующим устройствам. Мы же собрали полезную дополнительную информацию о доступных журналах.

  1. GitHub — cheeky4n6monkey/iOS_sysdiagnose_forensic_scripts
  2. Checkra1n Era — Ep 6 — Quick triaging
  3. Sysdiagnose in iOS 16: a first look from a Digital Forensics perspective
  4. iOS Crash Dump Analysis, Second Edition
  5. Sysdiag -who? | WithSecure™ Labs
  6. More useful information gleaned from sysdiagnose – The Eclectic Light Company

И ещё один момент. Полноценные резервные копии доступны только для устройств iPhone, iPad и iPod Touch. Из Apple TV, Apple Watch и Apple HomePod можно извлечь медиа-файлы, журналы и некоторые другие данные; иногда возможно получить доступ к файловой системы.

Образ файловой системы и связка ключей: эксплойт загрузчика

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

Режим DFU

Ввод устройства в режим DFU (Device Firmware Update) может быть сложнее, чем кажется, особенно если у эксперта нет соответствующего опыта. Для разных моделей устройств требуются разные комбинации клавиш, а точное соблюдение таймингов имеет критическое значение. Стоимость ошибки — загрузка устройства в ОС, что может нести негативные для криминалистической чистоты исследования последствия.

Минимизировать вероятность негативного сценария можно, если перед вводом в DFU устройство предварительно ввести в режим Recovery, а уже из него перейти в DFU. Смысл в такой последовательности прост: перейти в режим Recovery гораздо проще, вероятность ошибки невелика. А уже из режима Recovery можно настроить устройство таким образом, чтобы оно могло загружаться исключительно в режим DFU, обеспечив таким образом криминалистическую чистоту процесса.

Обратите внимание: смартфоны iPhone 8, iPhone 8 Plus и iPhone X (а также более новые модели) можно ввести в режим DFU в автоматическом режиме с использованием микроконтроллера Raspberry Pi Pico: Автоматический ввод в DFU с микроконтроллером Raspberry Pi Pico. Если на устройстве отказали кнопки, возможно, вам придётся разобрать его и ввести в DFU замыканием тестовых контактов. Мы писали об этом в статье «Аппаратный способ перевода iPhone в режим DFU: когда не работают кнопки«.

Дополнительная информация о режимах Recovery и DFU в нашем блоге:

Загрузка устройства

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

В некоторых случаях невозможно определить точный номер сборки iOS по версии загрузчика. В таких случаях выводится список из всех подходящих версий системы; мы рекомендуем использовать первую ссылку из списка. Если это не сработает, то устройство просто перезагрузится, после чего можно попробовать следующую по списку.

Возвращаем устройство в оригинальное состояние

При исследовании устройства iOS Forensic Toolkit в режиме checkm8 первое, что автоматически делает продукт — это устанавливает в загрузчике специальный флаг, благодаря которому при случайной перезагрузке устройство не станет загружать iOS, а запустится в режиме восстановления. Это помогает сохранить криминалистическую чистоту исследования в случае ошибок при вводе в режим DFU, но с точки зрения обычного пользователя такое устройство «не работает». Соответственно, после того, как эксперт закончит работу с устройством и его вернут владельцу, соответствующий флаг необходимо установить в оригинальное значение. Для этого достаточно запустить запустить в терминале iOS Forensic Toolkit со следующим параметром:

./EIFT_cmd tools autobootTrue

Обратите внимание: после этой команды устройство сразу перезагрузится в обычную ОС.

Устаревшие устройства

В старые времена, когда в устройствах Apple ещё не было сопроцессора Secure Enclave, существовала возможность полноценного физического анализа с гарантией точности и неизменности данных. Этот процесс подробно описан в статье «Perfect HFS Acquisition«. Для некоторых старых моделей у нас есть инструмент для перебора паролей, а для некоторых других извлечение возможно и без него.

Ограничения

Теоретически эксплойт checkm8 поддерживает устройства на чипах Apple A11 (iPhone 8, iPhone 8 Plus, iPhone X). На практике же для доступа к данным с таких устройств, работающих под управлением iOS 14 и 15, необходимо сначала удалить код блокировки, что приводит к некоторым неприятным последствиям:

  1. Код блокировки не всегда получается удалить.
  2. В случае успешного удаления кода блокировки с устройства пропадает ряд данных, что нарушает криминалистическую чистоту исследования.

В случае с iOS 16 ситуация ещё сложнее: извлечение для перечисленных моделей iPhone не сработает, если на устройстве хотя бы раз после начальной настройки устанавливался код блокировки экрана. К планшетам iPad на тех же чипах это не относится; для них может потребоваться, а может и не потребоваться удаление кода блокировки экрана.

Доступ к файловой системе и связке ключей: агент-экстрактор

Агент-экстрактор — практически единственный инструмент, позволяющий получить низкоуровневый доступ к данным на устройствах Apple, собранных на чипах A12 и более новых. Теоретически этот инструмент чрезвычайно прост в использовании: на устройстве достаточно установить приложение и запустить его, а на компьютере — выполнить одну команду. На практике же проблемы начинаются уже на этапе установки.

Apple старается сделать так, чтобы приложения можно было устанавливать только из официального магазина App Store, последовательно и целенаправленно усложняя процесс установки приложений из сторонних источников. Так, чтобы установить приложение на устройство iOS с компьютера Windows, вам понадобится зарегистрировать учётную запись Apple в программе для разработчиков, участие в которой платное, причём процент отказов очень высок, особенно для новых учётных записей. С компьютера Mac можно воспользоваться и обычной учётной записью, но здесь возникает другая проблема: установленное при помощи обычной учётной записи приложение при первом запуске потребует верифицировать цифровую подпись, для чего устройство нужно выпустить в интернет — со всеми потенциальными рисками и негативными последствиями. С недавних пор этот сценарий стал распространяться и на некоторые учётные записи, зарегистрированные в программе для разработчиков.

Уменьшить риск можно при помощи программного или аппаратного файрволла, однако этот процесс потребует дополнительных усилий, а в случае с аппаратным решением — и дополнительного оборудования. Однако проблемы на этом не заканчиваются: даже с учётными записями разработчика моментально добавляются лишь первые 10 устройств (всего можно добавлять до 100 устройств в год), а для последующих требуется ждать до 3 дней. Наконец, iOS 16 требует включать специальный «режим разработчика» на самом устройстве.

Совместимость агента-экстрактора зависит от установленной на устройстве версии ОС. Как правило, поддержка новых версий ОС в агенте-экстракторе появляется с заметной задержкой; за это время Apple успевает выпустить не одно, а несколько обновлений. Это связано с трудностями в обнаружении и использовании новых уязвимостей, которые исправляются разработчиками Apple с минимальной задержкой. В настоящий момент наш агент-экстрактор совместим с iOS 12…16.4. Поддержка iOS 9…11 осталась доступной в предыдущих версиях инструментария; из последних сборок продукта её пришлось убрать по техническим причинам.

Чип A11 Bionic

Чип A11 отличается от последующих (A12 Bionic и более новых) относительно меньшей степенью уязвимости; для него доступно меньше эксплойтов, чем для более новых чипов. Соответственно, в некоторых случаях на таких устройствах агент-экстрактор может извлечь лишь части файловой системы без связки ключей.

Решение проблем

Ошибки встречаются во всех сложных продуктах. Протестировать все возможные комбинации из десятков моделей устройств и сотен версий iOS невозможно практически; всегда существует вероятность, что какая-то комбинация из тех, которые мы не протестировали в лаборатории, не сработает так, как ожидалось. Для таких случаев существуют журналы ошибок. В EIFT8 журнал хранится в следующей папке:

~/Elcomsoft/EIFT/logs

Если что-то идёт не так, доступ к системным журналам kernel panic может помочь обнаружить проблему. Эти журналы (panic-full-{timestamp}.ips) хранятся на устройстве и доступны в настройках:

Settings | Privacy & Security | Analytics & Improvements | Analytics Data

Для их копирования на Mac или другой iPhone можно использовать AirDrop или другой удобный метод. Впрочем, простая перезагрузка компьютера и/или исследуемого устройства помогает намного чаще, чем можно себе представить.

Отладочные журналы через адаптер DCSD

В некоторых случаях при использовании методов, связанных с эксплойтом загрузчика, упомянутые выше журналы недостаточны для того, чтобы определить источник проблемы. Для таких ситуаций мы рекомендуем приобрести адаптер последовательной отладки DCSD. Эти адаптеры перехватывают обмен данными между компьютером и устройством и ведут свой собственный журнал, помогая точно определить момент, в который что-то пошло не так.

Использование таких адаптеров — это крайний случай, и мы надеемся, что до него никогда не дойдёт. Тем не менее, иметь такой адаптер полезно, чтобы он был под рукой в случае возникновения неожиданных проблем. О том, как именно работает и как использовать адаптер DCSD можно прочитать в документации.

Заключение

Elcomsoft iOS Forensic Toolkit – мощный и универсальный инструмент для извлечения данных из устройств экосистемы Apple. Эффективная следственная работа невозможна без точного следования инструкциям, учёта дополнительных аппаратных требований, правильной подготовки устройства и выбора подходящего метода извлечения. Каждый метод извлечения (логический, с использованием эксплойта загрузчика или с помощью агента) имеет свои особенности и ограничения, которые были описаны в этой статье. Только с полным пониманием всех особенностей и нюансов использования каждого метода эксперты смогут успешно справляться со сложностями мобильной криминалистики.


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

REFERENCES:

Elcomsoft iOS Forensic Toolkit

Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).

Официальная страница Elcomsoft iOS Forensic Toolkit »

НАШИ НОВОСТИ