23 января разработчики Apple выпустили серию обновлений. Для актуальных устройств вышла iOS 16.3, а для старых моделей — iOS 12.5.7 и iOS 15.7.3. Мы сразу же проверили работу iOS Forensic Toolkit с этими версиями системы, а сегодня выпустили обновление, в котором поддержка новых сборок iOS добавлена официально. Что это меняет для экспертов-криминалистов?
Обновление iOS, iPadOS и tvOS до версии 16.3 доступно для большого числа устройств Apple, но лишь немногие из них имеют ту уязвимость в загрузчике, которая используется для процесса извлечения эксплойтом checkm8. Однако несмотря на то, что iOS 16 доступна лишь для моделей iPhone, принадлежащих к поколению iPhone 8, 8 Plus и iPhone X, эту версию системы получили и другие устройства, собранные на гораздо более старых чипах. Отличный пример — приставка Apple TV HD (Apple TV 4), собранная на чипе Apple A8, который устанавливался в iPhone 6, который, в свою очередь, не получил не только iOS 16, но даже и iOS 13.
Что касается iPhone 6 и других устаревших устройств, Apple выпустила обновление и для них. Патч безопасности в виде iOS 12.5.7 предназначен для устройств, для которых двенадцатая версия системы стала последней. Сюда входят устройства на чипах Apple A7, A8 и A8X, включая iPhone 5s, iPhone 6, iPhone 6 Plus, iPad Air, iPad mini 2, iPad mini 3 и iPod touch (6 поколения). Версии iOS 15.7.3 и iPadOS 15.7.3 предназначены для более свежих устройств на чипах A9/A9X и A10/A10X, для которых пятнадцатая версия системы стала последней. Сюда вошли такие модели, как iPhone 6s и iPhone 6s Plus, iPhone 7 и iPhone 7 Plus, iPhone SE (1 поколения), iPad Air 2, iPad mini (4 поколения), а также iPod touch (7 поколения).
В статье Вышли iOS 12.5.7 и iOS 15.7.3. Что изменилось в низкоуровневом извлечении? мы уже рассказали о новых сборках системы, как рассказали и о том, что наш инструментарий iOS Forensic Toolkit стабильно работает с обновлёнными версиями системы. Разработанный нами метод извлечения checkm8 зарекомендовал себя как исключительно надёжный и устойчивый к обновлениям версий iOS, в том числе в виде предварительных сборок iOS/iPadOS. Наш подход универсален и во многом уникален, что позволяет нам рассчитывать на поддержку будущих версий iOS/iPadOS, но есть нюанс.
Похвалив наш процесс извлечения посредством checkm8, отметим и тот важный факт, что мы не поставляем в составе продукта никакого проприетарного кода Apple, а для загрузки устройств используем образы прошивок, которые сам пользователь должен скачать с официального сайта Apple. Чтобы упростить процесс поиска нужного образа, наш продукт выводит список ссылок, ведущих на прошивки, максимально подходящие устройству по версии iBoot. В некоторых случаях определить точный номер сборки установленной версии системы только по версии iBoot невозможно (отсутствует уникальное совпадение), поэтому в таких случаях выводится не единственная ссылка, а целый список.
Если такое произошло, у эксперта есть несколько вариантов. Можно попробовать воспользоваться ссылкой на прошивку, максимально близкую по номеру к установленной на устройстве версии системы. В ряде случаев это сработает, но иногда устройство может уйти в перезагрузку (что делать в этом случае?). Если такое произошло, достаточно открыть лог-файл, в котором будет запись об установленной на устройстве версии системы, после чего воспользоваться ссылкой на правильную версию прошивки.
Другой вариант — самостоятельно узнать версию iOS, установленную на устройстве, и вставить ссылку на образ прошивки в окно запроса (либо скачать файл с прошивкой и передать в окно запроса путь к этому файлу).
Возвращаясь к «нюансу»: с одной стороны, iOS Forensic Toolkit корректно произведёт извлечение данных при помощи эксплойта checkm8, даже если используемая версия инструментария ещё не включает поддержку вышедшей позднее сборки iOS. С другой — эксперту придётся самостоятельно искать ссылку на файл с прошивкой, а самостоятельный поиск прошивки для конкретного устройства — работа не из самых простых и очевидных. Всё это создавало лишнее неудобство, побудив нас выпустить обновлённую версию инструментария с поддержкой всех перечисленных в заголовке статьи версий iOS. Теперь нужные ссылки на скачивание файлов прошивок выводятся в окне iOS Forensic Toolkit.
Эксплойт checkm8 использует уязвимость, которая присутствует в загрузчиках ряда устройств Apple — вплоть до поколения A11 (это iPhone 8, 8 Plus и iPhone X, а также другие устройства, собранные на подобных чипах). iOS 16 по большей части справилась с уязвимостью, сделав извлечение из iPhone 8, 8 Plus и iPhone X в большинстве случаев невозможным.
Для более новых устройств мы разработали новый метод извлечения, основанный на небольшом приложении — агенте-экстракторе. Приложение устанавливается на устройство, получает повышенный уровень привилегий, используя известные уязвимости в системе, после чего получает доступ к файловой системе и связке ключей. По извлекаемому набору данных этот метод не отличается от checkm8; с криминалистической чистотой дела обстоят хуже, чем в случае с checkm8, но лучше, чем в любых других способах извлечения. На настоящий момент агентом-экстрактором поддерживаются версии iOS до 15.5 включительно.
Устройства Apple Watch и Apple TV входят в список устройств, для которых поддерживается checkm8. iOS Forensic Toolkit — единственный инструмент на рынке, который поддерживает извлечение методом checkm8 из этих устройств. Несмотря на то, что Apple TV и Apple Watch создаются на чипах, идентичных или очень похожих на те, которые используются в смартфонах и планшетах, есть важные отличия. Так, приставка Apple TV HD (ранее известная под названием Apple TV 4) получила iOS 16, а основанный на том же чипе A8 телефон iPhone 6 — не получил (для него последним крупным обновлением стала iOS 12). Соответственно, нам пришлось дорабатывать алгоритм специально для данного чипа и данной версии iOS.
Кроме того, мы исправили извлечение посредством checkm8 из часов Apple Watch S3, которые стали самыми долгоживущими часами Apple, пробыв на полках фирменных магазинов компании почти пять лет.
Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).