Доступ к файловой системе и Связке ключей на iPhone невозможен без эскалации привилегий. В ранних версиях iOS Forensic Toolkit для этого использовался джейлбрейк – способ, с которым связан ряд рисков. Использование агента-экстрактора собственной разработки предлагает возможность извлекать данные из iPhone без джейлбрейка. В сравнении с другими методами агент-экстрактор демонстрирует высокую скорость, надёжность и совместимость.
При использовании агента устанавливать джейлбрейк не потребуется: агент-экстрактор использует уязвимости на уровне ядра iOS, позволяющие организовать прямой доступ к файловой системе, извлечь и расшифровать записи из связки ключей. По объёму и детализации полученных данных этот способ не отличается от других низкоуровневых методов анализа, но, в отличие от них, не модифицирует системный раздел устройства и не имеет сопутствующих рисков, которые могли бы привести к отказу устройства. На пользовательском разделе привносимые изменения минимальны и не затрагивают реальные пользовательские данные. После работы агента-экстрактора добавятся только записи в некоторых системных журналах, отражающие события установки, запуска и удаления агента.
Ниже приводится только список команд, которые нужно выполнить при извлечении посредством агента-экстрактора. Детальное описание команд приводится далее по тексту.
На компьютере: запустите iOS Forensic Toolkit. Как правило, на компьютере автоматически отобразится запрос на привязку устройства. Его нужно подтвердить, а на устройстве – разблокировать, подтвердить запрос и ввести код блокировки экрана.
Если по какой-то причине привязка не установится, воспользуйтесь командой:
./EIFT_cmd normal pair
Далее:
./EIFT_cmd agent install
На iPhone: если был использован обычный Apple ID, верифицируйте сертификат цифровой подписи на iPhone.
На iPhone: запустите приложение-агент, коснувшись его иконки. Если в результате команды с компьютера возникнет проблема (например, сообщение «all exploits failed»), перезапустите телефон.
На компьютере:
./EIFT_cmd agent keychain -o keychain.xml ./EIFT_cmd agent tar -o data.tar
Только при подозрении на наличие шпионского или зловредного ПО:
./EIFT_cmd agent tar —system -o system.tar
На компьютере (удаление агента):
./EIFT_cmd agent uninstall
Вместо последней команды вы можете удалить приложение агента-экстрактора с экрана устройства штатным образом.
Если уже установлен агент предыдущей версии, перед началом работа его необходимо удалить. Это можно сделать непосредственно с домашнего экрана iPhone.
Во время установки агента аппарат должен быть разблокирован, а доверенные отношения с компьютером должны быть установлены (для этого потребуется подтвердить на устройстве код блокировки экрана). В процессе извлечения рекомендуется использовать порт USB 3.0, особенно для новых устройств.
При установке агента будет запрошен Apple ID и пароль. Если используется компьютер с Windows*, то необходимо использовать Apple ID, зарегистрированный в программе Apple для разработчиков. В случае с macOS можно использовать как Apple ID разработчика, так и обычный или одноразовый.
Внимание: перед установкой агента необходимо установить привязку (отношение доверия между устройством и компьютером). Обычно запрос на привязку отображается автоматически при первом подключении устройства к компьютеру, после чего на устройстве потребуется подтвердить запрос на привязку и ввести код блокировки экрана. Если по какой-то причине привязка не установится, воспользуйтесь командой:
./EIFT_cmd normal pair
Далее на устройстве потребуется подтвердить запрос на привязку и ввести код блокировки экрана.
Для установки агента вызовите следующую команду:
./EIFT_cmd agent install
Вам потребуется ввести e-mail и пароль от Apple ID (обычный, не пароль приложения). Если ваш аккаунт привязан к организации, то EIFT попросит уточнить, какой именно аккаунт использовать: индивидуальный или корпоративный. Если у вас есть доступ к платному аккаунту разработчика, то для установки агента предпочтительнее использовать его, так как при этом не потребуется интернет-соединения.
В случае с бесплатным аккаунтом разработчика для проверки сертификата потребуется интернет-соединение, что является нежелательным при извлечении данных с устройства.
Если для учётной записи включена двухфакторная аутентификация (она активна для большинства учётных записей), то вам потребуется ввести одноразовый код, полученный либо через SMS, либо через доверенное устройство.
Пароль от учётной записи будет отличаться в зависимости от того, какая операционная система установлена на вашем компьютере. В macOS всегда указывается обычный пароль от Apple ID, после чего необходимо пройти двухфакторную авторизацию через доверенное устройство или .
Использование агента-экстрактора в EIFT позволяет извлечь образ файловой системы устройства. Для большинства устройств поддерживается возможность копирования и расшифровки связки ключей (см. таблицу совместимости в примечаниях).
Запустите установленное приложение агента на iPhone (коснитесь соответствующей иконки на экране устройства) и не сворачивайте его в течение всей работы. Не переключайтесь на другие приложения.
Сохранение связки ключей
При выполнении последующих команд будет запущен процесс эскалации привилегий. В редких случаях процедура может приводить к спонтанной перезагрузке устройства. Если это случилось, просто попробуйте ещё раз (EIFT при этом рекомендуется перезапустить); переустанавливать приложение агента-экстрактора не нужно.
Следующая команда сохранит связку ключей под именем keychain.xml:
./EIFT_cmd agent keychain -o keychain.xml
Создание образа файловой системы
Образ файловой системы, извлекаемый из устройства, сохраняется в архив в формате tar. Перед созданием tar-архива убедитесь, что приложение агента открыто и работает. Держите приложение открытым в течение всего процесса извлечения, в том числе и между различными операциями (копированием связки ключей, созданием tar-архива или образа диска).
Следующая команда создаст tar-архив “data.tar”, содержащий все файлы пользовательского раздела.
./EIFT_cmd agent tar -o data.tar
В случаях, когда есть подозрение на наличие в устройстве зловредного или шпионского программного обеспечения, вы можете извлечь копию системного раздела для его последующего анализа. Для архивирования системного раздела воспользуйтесь немного другой командой:
./EIFT_cmd agent tar --system -o system.tar
Обратите внимание: в обычных ситуациях в архивировании системного раздела необходимости нет.
Последний шаг – удаление агента-экстрактора. Для этого либо введите команду ./EIFT_cmd agent uninstall, либо удалите значок приложения с экрана стандартным способом.
В этом разделе кратко описана вся последовательность шагов при использовании агента, совпадающая с последовательностью из «шпаргалки», но более детализованная. Обратите внимание: при анализе iPhone с использованием обычного Apple ID настройте ограничения на доступ в сеть согласно инструкции Извлечение данных из iPhone: ограничение сетевых подключений. При использовании Apple ID разработчика iPhone может быть изолирован от беспроводных сетей.
Настоятельно рекомендуем извлечь как связку ключей, так и файловую систему, так как содержимое связки ключей может использоваться для расшифровки данных некоторых приложений (например, облачных резервных копий WhatsApp, данных Signal и т.д.). Образ файловой системы можно проанализировать в программе Elcomsoft Phone Viewer или аналогичном продукте.
Мы активно работаем над развитием и расширением совместимости агента-экстрактора. В настоящее время ведётся работа над полноценной поддержкой агентом-экстрактором iOS до 15.5 включительно (включая связку ключей). Новая версия агента будет доступна в ближайшем обновлении iOS Forensic Toolkit.
Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).