В новой версии iOS Forensic Toolkit нам удалось обойти функцию «Защита украденного устройства»: теперь агент-экстрактор можно установить на устройства с активированной защитой, не устанавливая доверенных отношений между iPhone и рабочей станцией эксперта. Фактически, новый метод преодолевает блокировку «Защиты украденного устройства» (SDP, Stolen Device Protection), которая требует биометрии на шаге установки доверия с компьютером. Обход этого шага означает обход и самой защиты. Вам понадобятся: код блокировки устройства, платная учётная запись разработчика Apple и само устройство.
Подробности с пошаговыми инструкциями мы опубликовали в отдельной статье. Здесь же мы поговорим о том, что даёт новый метод и когда к нему стоит прибегать.
Существует несколько способов получить доступ к данным. Самый продвинутый на сегодняшний день способ — низкоуровневое извлечение файловой системы и связки ключей. На устройствах, для которых неприменим эксплойт загрузчика, этот способ подразумевает использование агента-экстрактора — небольшого приложения, которое устанавливается на телефон. А для установки на телефон нужно подключить устройство к компьютеру и установить доверенные отношения между компьютером и устройством. Именно этот момент — установку привязки — и блокирует «Защита украденного устройства».
Есть и более простой способ — расширенное логическое извлечение. Работает везде, на выходе — резервная копия в стиле iTunes/Finder, зашифрованная или нет, а вместе с ней медиа из Camera Roll, общие файлы приложений, журналы сбоев и Apple Unified Logs. Для его работы тоже нужна доверенная привязка к компьютеру — а значит, «Защита украденного устройства» препятствует ему точно так же, как и агенту.
Итог: для извлечения данных из iPhone нужно установить доверие между телефоном и компьютером.
Итак, чтобы установить агент-экстрактор на устройство, телефон сначала связывают с компьютером — запрос «Доверять этому компьютеру», код блокировки, обмен ключами, после которого iPhone может обмениваться данными с компьютером. Этот процесс называют по-разному: установка доверия (доверенных отношений) или привязка; суть от этого не меняется. Именно на этом этапе вступает в действие «Защита украденного устройства». За пределами знакомых мест (дом, работа) запрос на привязку (установление доверенных отношений с компьютером) требует биометрию, и обойти этот запрос, использовав код блокировки, нельзя. (Уточним: если владелец устройства включил «Защиту украденного устройства» в режим «Всегда», то и в доверенных местах произойдёт то же самое.)
Таким образом, если по той или иной причине биометрия исключена, одного кода блокировки более не достаточно для создания новой привязки. Нет привязки — нельзя и установить агент-экстрактор; процедура завершается, даже не начавшись.
То же самое и с логическим извлечением. Оно тоже опирается на установленное телефоном доверие к компьютеру эксперта, и «Защита украденного устройства» блокирует его на том же шаге установления привязки — даже если код блокировки устройства известен.
Обходные пути существуют, но их применимость ограниченна.
Когда ни один из вариантов не подходит, эксперт оказывается в тупике. Точнее — оказывался до того, как мы представили своё решение.
Мысль очевидна: если «Защита украденного устройства» блокирует соединение с iPhone через USB порт (кстати, есть интересное исключение — о нём мы напишем в технической части), то агент-экстрактор должен попасть на телефон, минуя механизм привязки. Изначально мы думали о доставке агента на телефон «по воздуху», и этот способ мы реализовали, но мы также реализовали и два альтернативных способа, в которых используется проводное подключение телефона.
При этом ни на одном шаге, от чтения UDID устройства до финального извлечения, доверенная привязка не требуется, а следовательно — механизм «Защиты украденного устройства» обходится.
Альтернативный способ установки агента пригодится и в случае, когда порт для передачи данных изношен или неисправен.
Мы считаем, что — нет, не снижает, и вот почему.
«Защита украденного устройства» создавали против вполне конкретного сценария: злоумышленник подсмотрел код блокировки и выхватил телефон, затем сбросил пароль Apple Account, выключил «Локатор» и скопировал сохранённые пароли прежде, чем пользователь успел среагировать.
Наш метод не трогает учётную запись Apple и не помогает отвязать телефон от облака. Требуется платная учётная запись разработчика и наш инструментарий — маловероятно, что в руках у злоумышленника окажется и то, и другое.
К слову, мы не вполне понимаем, почему «Защиты украденного устройства» нет на iPad, хотя iPad с известным кодом блокировки уязвим к ровно тому же сценарию. Apple не даёт комментариев по этому поводу, так что наша теория — «Защита украденного устройства» это история про iPhone, выхваченный из рук в баре или на улице. iPad реже достают на людях, реже набирают на нём код блокировки.
Позволим себе одну редакторскую ремарку напоследок. Для компании, чей маркетинг так напирает на защиту пользователей от преступников, Apple тратит удивительно много сил, чтобы осложнить жизнь криминалистическим инструментам вроде нашего — нагляднее всего это видно на стороне iCloud. А мы тем временем не спим ночами, читаем профили устройств и подписываем агентов, придумывая, как обойти очередную стену. И тешим себя надеждой, что играем за правильную сторону: за всё хорошее против всего плохого.
Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).