iOS Forensic Toolkit 8.0: извлечение через эксплойт загрузчика для 76 устройств Apple

22 сентября, 2022, Oleg Afonin
Рубрика: «Новость Элкомсофт»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Бета-тестирование iOS Forensic Toolkit 8.0 завершено: восьмая версия инструментария представлена официально! В новом релизе появилась поддержка криминалистически чистого извлечения данных из нескольких десятков моделей Apple с использованием эксплойта загрузчика checkm8 и добавлена поддержка командной строки.

checkm8 и криминалистически чистое извлечение

checkm8 — эксплойт уязвимости, три года назад обнаруженной в ряде моделей iPhone и других устройств Apple. Эксплойт позволяет получить полный доступ к содержимому устройства и исполнять произвольный код почти независимо от того, какая версия iOS установлена на устройстве. Уязвимость присутствует в нескольких десятках устройств; ей подвержены как смартфоны iPhone, так и многие поколения планшетов iPad, приставки Apple TV, часы Apple Watch и устройства iPod Touch. Сегодня checkm8 пользуется заслуженной популярностью у мобильных криминалистов. Существует множество решений, основанных на этом эксплойте, но ни одно из них не является совершенным, что сподвигло нас к разработке собственной реализации.

Как это работает?

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

Совместимость и ограничения метода

Сейчас восьмая версия инструментария доступна только для компьютеров с macOS, но версии для Linux и Windows уже на подходе. Поддерживаются компьютеры с macOS, собранные как на чипах Intel x86, так и на Apple Silicon (процессоры поколений M1 и M2).

В нашей реализации эксплойта поддерживается 76 моделей iPhone, iPod Touch, iPad, Apple Watch и Apple TV, работающих под управлением ряда версий iOS вплоть до iOS 15.7 с ограниченной поддержкой iOS 16. Поддерживаются следующие поколения процессоров:

S5L8930, S5L8940, S5L8942, S5L8945, S5L8947, S5L8950, S5L8955, S5L8960, S5L8965, T7000, T7001, S8000, S8001, S8003, T8004, T8010, T8011, T8015

Вот полный список поддерживаемых устройств:

  • 4 приставки AppleTV: AppleTV3,1 AppleTV3,2 AppleTV5,3 AppleTV6,2
  • 40 планшетов iPad: iPad2,1 iPad2,2 iPad2,3 iPad2,4 iPad2,5 iPad2,6 iPad2,7, iPad3,1 iPad3,2 iPad3,3 iPad3,4 iPad3,5 iPad3,6 iPad4,1 iPad4,2 iPad4,3 iPad4,4, iPad4,5 iPad4,6 iPad4,7 iPad4,8 iPad4,9 iPad5,1 iPad5,2 iPad5,3 iPad5,4 iPad6,11, iPad6,12 iPad6,3 iPad6,4 iPad6,7 iPad6,8 iPad7,1 iPad7,11 iPad7,12 iPad7,2 iPad7,3, iPad7,4 iPad7,5 iPad7,6
  • 25 смартфонов iPhone: iPhone10,1 iPhone10,2 iPhone10,3 iPhone10,4 iPhone10,5 iPhone10,6, iPhone3,1 iPhone3,2 iPhone3,3 iPhone4,1 iPhone5,1 iPhone5,2, iPhone5,3 iPhone5,4 iPhone6,1 iPhone6,2 iPhone7,1 iPhone7,2 iPhone8,1 iPhone8,2 iPhone8,4 iPhone9,1, iPhone9,2 iPhone9,3 iPhone9,4
  • 3 устройства iPod: iPod5,1 iPod7,1 iPod9,1
  • 4 модели часов Apple Watch: Watch3,1, Watch3,2, Watch3,3, Watch3,4

После выхода эксплойта checkm8 разработчики Apple попытались хотя бы частично поправить ситуацию, усилив защиту SEP в линейках iPhone 7, 7 Plus, 8, 8 Plus и iPhone X в iOS 15. Дополнительная защита заставляет экспертов удалять код блокировки экрана на iPhone 8, 8 Plus и iPhone X, работающих под управлением iOS 14-15.7; в то же время для моделей iPhone 7 и 7 Plus мы нашли возможность этого не делать.

В то же время поддержка iOS 16 ограничена в силу изменений в защите SEP, внедрённых Apple в официальной версии iOS 16. Реализация SEP на устройствах с процессорами А11 (а это — iPhone 8, 8 Plus и iPhone X) не позволяет эксплойту загрузчика получить доступ к разделу данных, если на устройстве хотя бы единожды с момента настройки был установлен код блокировки экрана, даже если он был впоследствии удалён.

Актуальная матрица совместимости выглядит следующим образом:

Разблокировка старых устройств

checkm8 не распространяется на защиту Secure Enclave. Соответственно, на новых устройствах, оборудованных сопроцессором безопасности Secure Enclave, использовать checkm8 для взлома кода блокировки экрана не удастся (получится провести ограниченное извлечение в «холодном» режиме BFU, «до первой разблокировки»).

В то же время на старые устройства это правило не распространяется, и мы смогли реализовать полноценное решение для разблокировки устройств iPhone 4, 4s, 5 и 5c. Для этих моделей доступны функции подбора кода блокировки и полноценного низкоуровневого извлечения. Для модели iPhone 4s потребуется дополнительный микроконтроллер со специализированной прошивкой (checkm8: Разблокировка и извлечение данных из iPhone 4s).

Неизвестный код блокировки экрана: «холодное» извлечение

Как уже говорилось, для 64-разрядных устройств с неизвестным кодом блокировки экрана доступно извлечение в ограниченном «холодном» режиме, так называемом режиме BFU («до первой разблокировки»). В этом режиме можно получить доступ к той и только той информации, которая не зашифрована ключом, основанным на коде блокировки экрана. Сюда входят такие данные, как журнал звонков, список учётных записей, черновики сообщений (SMS/iMessage) и вложения к ним (только к черновикам!), а также некоторые данные геолокации и данные некоторых приложений. Кроме того, в открытом виде хранятся журналы WAL от многих баз данных.

checkm8 или логическое извлечение?

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

Что насчёт checkra1n?

Первые решения для мобильной криминалистики, использующие уязвимость загрузчика, были созданы на основе помощью checkra1n. checkra1n — это публичный джейлбрейк с закрытым исходным кодом, в основе которого лежит checkm8. Посредством checkra1n извлекается дает такой же объем данных, как и при помощи любого другого джейлбрейка. Так же, как и при использовании других джейлбрейков, использование checkra1n неизбежно модифицирует содержимое устройства, что с точки зрения мобильной криминалистики совсем не приветствуется.

В сравнении с checkra1n наше решение обладает следующими отличиями:

  • Гарантированная безопасность, верифицируемость и повторяемость процесса
  • Не остаётся следов работы
  • Содержимое всех разделов устройства остаётся неизменным
  • Поддержка 76 моделей устройств, трёх поколений архитектуры и ряда поколений iOS
  • Поддержка как самых старых, так и самых свежих версий системы вплоть до iOS 15.7 (с ограниченной поддержкой iOS 16)
  • Поддержка не только iPhone, но и устройств iPod Touch, iPad, Apple Watch и Apple TV
  • Извлекаются все данные без исключения
  • Поддерживаются заблокированные устройства (ограниченное извлечение в режиме BFU)

Командная строка

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

Заключение

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


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

REFERENCES:

Elcomsoft iOS Forensic Toolkit

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

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

НАШИ НОВОСТИ