С выходом iOS 16 изменилось многое. Пользователи получили дополнительные инструменты контроля за тем, кто и когда может получать доступ к персональной информации, а эксперты-криминалисты – дополнительную головную боль, связанную с усилением безопасности устройств. О том, что изменится в работе экспертов-криминалистов с выходом iOS 16 – в этой статье.
Цикл разработки и тестирования программного обеспечения любой компании достаточно длителен. Шестнадцатая версия iOS находилась в разработке в течение года, а в последние два месяца находилась в стадии публичного бета-тестирования.
Подобным же образом происходит и разработка ПО для экспертов-криминалистов. Уязвимости, эксплойты, доступ и форматы данных проверяются на доступных тестовых сборках iOS. С выходом предрелизной сборки iOS 16 (версия RC, “release candidate”) кардинальных отличий от предыдущих сборок в плане безопасности не произошло. В предыдущие годы сборки RC отличались от финальных релизов iOS незначительно. Привычка к такому ходу вещей сыграла дурную шутку с производителями ПО для криминалистов, и в ряде компаний поспешили анонсировать поддержку новой версии iOS в своих продуктах за несколько дней до выхода финальной версии системы. Это оказалось ошибкой.
В погоне за пальмой первенства некоторые вендоры поспешили заявить о поддержке последней версии ОС от Apple, не особо заботясь о качестве продукта и не проведя тщательное всестороннее тестирование. Мы начали исследовать новую версию мобильной операционной системы с самой первой предварительной сборки iOS 16, протестировав все доступные сборки во всех возможных ситуациях от установки эксплойта до работы в различных условиях и отложив выход нашего собственного продукта до выхода официальной сборки iOS 16 для окончательной проверки. По этой причине наш продукт вышел с задержкой — но именно поэтому мы смогли убедиться в его работоспособности, обнаружить, исследовать и подробно описать ограничения (об этом можно прочесть в статье iOS 16: извлечение файловой системы и связки ключей через эксплойт загрузчика).
Мы стараемся обеспечить максимально возможную прозрачность, всегда предоставляя максимально полную и подробную информацию обо всех ограничениях и совместимости наших продуктов (посмотрите, например, наш список поддерживаемых устройств). Мы стараемся рассказывать о том, как работают наши продукты с максимальным количеством деталей, не стараясь скрыть какие-либо технические ограничения.
Впервые за много лет в окончательный релиз iOS вошло незаметное, но важное изменение, отсутствующее в предварительных сборках. Этим изменением стал патч сопроцессора Secure Enclave (SEP) для устройств на платформе A11 (это – iPhone 8, 8 Plus и iPhone X), который сделал невозможным доступ к разделу данных посредством эксплойта checkm8 или джейлбрейка checkra1n, если на устройстве хотя бы раз с момента начальной настройки устанавливался код блокировки экрана.
Важно понимать, что уязвимость загрузчика как такового не исправлена (исправить уязвимость именно загрузчика невозможно), но смонтировать раздел с пользовательскими данными уже не получится: сопроцессор Secure Enclave Processor (SEP) отвечает за хранение ключей и, собственно, шифрование, и получить доступ к зашифрованным данным не удастся, если на iPhone хоть раз использовался код блокировки экрана. Если же iPhone 8, 8 Plus или iPhone X был настроен и использовался без кода блокировки, то доступ к данным по-прежнему возможен.
Таким образом, «уязвимость загрузчика, которую невозможно исправить» успешно исправлена для подавляющего большинства пользователей iPhone 8, 8 Plus и iPhone X. Добавим, что Apple уже предпринимала попытки усилить защиту SEP в более ранних версиях iOS. В частности, с iOS 14 и 15 для доступа к данным через checkm8 с устройства требовалось предварительно удалять код блокировки экрана (это касалось поколений iPhone 7 и 8/X). Со временем для поколения iPhone 7 (напомню, эти устройства не получили iOS 16) была обнаружена уязвимость SEP, которая позволила обойти это ограничение. Для поколения устройств, к которым принадлежат модели iPhone 8, 8 Plus и iPhone X, подобной уязвимости пока не обнаружено.
В iOS 16 появился специальный режим Lockdown Mode, разработанный для защиты людей, чья общественная или профессиональная деятельность подвергает их риску персонализированных атак. Для активации этого режима пользователь должен включить настройку и перегрузить iPhone. После этого смартфон будет работать в особом безопасном режиме, в котором некоторые функции устройства будут ограничены. В частности:
Ограничения достаточно мягкие для того, чтобы устройство можно было продолжать использовать. Насколько и каким образом включение данного режима повлияет на возможность криминалистического анализа iPhone – тема для отдельного исследования.
Эта возможность – ещё один способ онлайновой аутентификации, который должен заменить логины и пароли. В процессе регистрации на поддерживающем новую технологию ресурсе будет создана пара ключей асимметричного шифрования, один из которых (публичный) сохраняется на сайте, а второй (приватный) – в связке ключей твоего устройства (это может быть iPhone, iPad или компьютер Mac). Приватные ключи синхронизируются через iCloud посредством облачной связки ключей и защищаются сквозным шифрованием.
При входе на сайт, защищённый таким образом, ресурс сгенерирует сообщение, зашифрованное публичным ключом. Расшифровать это сообщение сможет только держатель приватного ключа, который хранится в связке ключей на iPhone. Расшифровав сообщение, iPhone отправит на сайт ответ, подписанный приватным ключом. Удалённый ресурс, в свою очередь, сможет проверить подлинность отклика, верифицировав цифровую подпись всё тем же публичным ключом. Как видим, реализация вписывается в рамки классической схемы асимметричной криптографии.
На что это влияет
С точки зрения криминалистики интерес представляет возможность извлечения приватных ключей из облачной связки ключей, что можно проделать при помощи утилиты Elcomsoft Phone Breaker (потребуется указать логин и пароль пользователя от учётной записи Apple, а также код блокировки экрана или системный пароль от одного из доверенных устройств). Такие ключи можно будет использовать для входа на сайты, использующие новый метод аутентификации. На момент анонса в числе таких сайтов – eBay, PayPal, Microsoft, NVIDIA, Best Buy, Cloudflare и Carnival. Вероятно, список будет со временем расширяться.
Включение новой функции Rapid Security Response в настройках системы позволяет устройству автоматически устанавливать промежуточные обновления системы, аналогом которых являются ежемесячные патчи безопасности Android.
С точки зрения мобильной криминалистики данная возможность теоретически позволяет Apple максимально оперативно и без полного обновления версии операционной системы исправлять критические уязвимости iOS, которые потенциально можно было бы использовать для низкоуровневого доступа к данным. Таким образом, вероятность доступности низкоуровневого извлечения для устройств под управлением iOS 16 снижается.
В iPhone 13 и 14 использовать Face ID можно будет как в портретной, так и в альбомной ориентации. Эта возможность не оказывает влияния на возможность извлечения данных так же, как и добавленная в iOS 15.4 возможность использовать Face ID на iPhone в случаях, когда у пользователя на лице медицинская маска. В то же время появившаяся ранее в iOS 14.5 возможность использовать часы Apple Watch для разблокировки iPhone оставляет полиции потенциальную возможность разблокировать iPhone, если у пользователя на руке часы Apple Watch.
Перечисленные выше нововведения в iOS 16 способны так или иначе повлиять на возможность криминалистического анализа устройств, работающих под управлением новой версии операционной системы. Нововведения, перечисленные ниже, не окажут влияния на процесс извлечения данных, но помогут пользователям более эффективно контролировать использование конфиденциальной информации.
Функция Safety Check («проверка безопасности») позволяет проверить или быстро сбросить ряд настроек конфиденциальности, отвечающих за доступ к некоторым видам данных, который пользователь когда-то предоставлял людям, приложениям или устройствам. Apple позиционирует функцию Safety Check в качестве помощи людям в ситуациях домашнего насилия, но её возможности этим не ограничиваются. При помощи этой функции пользователь может сбросить настройки доступа и системные разрешения на конфиденциальность для приложений (как всех сразу, так и по отдельности). То же самое можно было проделать и раньше, но для этого пришлось бы отзывать разрешения для каждого приложения по отдельности либо сбрасывать все настройки устройства.
При помощи Safety Check можно ограничить приём сообщений (SMS и iMessage) и звонков FaceTime доступным устройством. Эта функция отключает облачный функционал, благодаря которому текстовые сообщения и входящие звонки FaceTime могут поступать не только на конкретный iPhone, но и на другие устройства Apple, привязанные к той же учётной записи. Напомним, что при включении «облачных» сообщений их содержимое можно извлечь из iCloud при помощи Elcomsoft Phone Breaker (данные защищены сквозным шифрованием, поэтому для доступа к ним потребуется указать код блокировки экрана или системный пароль от одного из доверенных устройств).
В iOS 14 пользователи впервые столкнулись со всплывающими сообщениями, уведомляющими о доступе приложения к данным из буфера обмена. Эти сообщения невозможно было отключить; у многих пользователей они вызывали раздражение. В iOS 16 для фонового доступа к буферу обмена приложения должны запрашивать разрешение. Подробнее об этом можно прочитать в статье UIPasteBoard’s privacy change in iOS 16 | Sarunw, здесь же отметим, что, разрешив приложению доступ к буферу обмена, пользователь более не увидит раздражающих уведомлений, но и не сможет отозвать ранее выданное разрешение (оно не отображается в списке разрешений получившего его приложения).
До выхода iOS 16 скрытые фотографии попадали в специальный альбом с «говорящим» названием. Аналогичным образом система поступала и с удалёнными фото и видео, которые попадали в специальный альбом и автоматически удалялись по истечении некоторого времени. Скрытые и удалённые фотографии при этом исчезали из основной ленты в приложении Photo, но просмотреть содержимое этих альбомов было довольно просто: достаточно было открыть папку с соответствующим названием.
В iOS 16 появился механизм, позволяющий защитить приватные фото и видео от случайного просмотра: для доступа к ним по умолчанию потребуется авторизация через Face ID, Touch ID или посредством кода блокировки. При желании пользователь сможет отключить авторизацию в настройках.
Эта возможность никак не влияет на извлечение данных. Протестировав работу новой функции, мы обнаружили, что скрытые и удалённые фотографии по-прежнему доступны как в составе резервных копий, так и через протокол AFC (напомним, по этому протоколу медиа-файлы извлекаются в процессе расширенного логического анализа посредством iOS Forensic Toolkit; данные остаются доступны даже тогда, когда на резервную копию установлен пароль).
«Отчёт о конфиденциальности приложений» появился в iOS 15.2, а ещё раньше, в iOS 14.5, в приложениях заработала функция, которую в Apple назвали App Tracking Transparency. Начиная с этой версии iOS приложения должны запрашивать согласия пользователей к уникальному идентификатору Advertising ID, который позволяет однозначно идентифицировать устройство на различных сайтах и в приложениях. И если в предыдущих версиях системы доступ к рекламному идентификатору у приложений по умолчанию был, то начиная с iOS 14.5 по умолчанию такого доступа нет, и пользователь должен в явном виде согласиться со слежкой. Все эти вещи произошли задолго до выхода iOS 16. Почему мы решили написать об этой возможности сейчас, спустя почти год после её появления?
Вспомнить об этих мерах нас заставила волна публикаций: оказалось, что в течение многих лет полиция США достаточно массово и без соблюдения юридических формальностей использовала данные, предоставляемые сервисом Fog Reveal. Сервис, в свою очередь, принадлежит американской компании Fog Data Science LLC, которая была основана высокопоставленными выходцами Департамента внутренней безопасности. Как показало журналистское расследование, полиция и другие государственные агентства получили доступ к информации об истории местоположения более 250 миллионов устройств.
По действующим правилам, подобные запросы со стороны полиции требуют получения специального судебного постановления (geo-fence warrant). В результате такого запроса полиция получает информацию о том, какие устройства находились в заданном радиусе от определённых координат в определённое время. В то же время получить подобное постановление полиции достаточно сложно: требуется корректным образом оформленная аргументация, существует риск отказа, а данные предоставляются не сразу, а спустя дни или недели. Сервис Fog Reveal выдаст ответ на такой запрос автоматически, моментально и без каких-либо судебных постановлений.
Необходимые для обработки запроса данные Fog Reveal приобретает у рекламных медиаторов, которые, в свою очередь, покупают данные у владельцев рекламных SDK, в число которых (по словам журналистов) входят такие компании, как Waze, Starbucks, владелец крупнейших в мире социальных сетей, а также сотни других компаний.
Разумеется, рекламные идентификаторы полностью анонимны. Представители Fog утверждают: «мы не имеем возможности установить конкретное устройство или его владельца на основе имеющихся данных». Власти с этим не спорят: «Связи между рекламным идентификатором и личной информацией нет». Однако далее следует такое утверждение: «Но, если мы хорошо разбираемся в том, что делаем, мы сможем выяснить владельца». Практика показала, что проблем с выявлением владельцев устройств на основе даже такой анонимной информации у полиции и в самом деле не возникает.
Функция App Tracking Transparency позволяет пользователям ограничить или отозвать доступ к рекламному идентификатору устройства, избежав таким образом самой возможности однозначной идентификации устройства приложениями и встроенными в них «шпионскими» SDK (напомним, «профилирование» устройств с целью однозначной идентификации устройства любыми средствами, за исключением рекламного идентификатора, строго запрещены правилами App Store). В то же время Отчёт о конфиденциальности приложений продемонстрирует, какие приложения, когда и сколько раз запрашивали информацию о местоположении устройства, позволив пользователю определить слежку и отозвать ранее выданные разрешения (что в iOS 16 стало легко проделать благодаря новой функции Safety Check).
В iOS 16 проделана большая работа по защите персональной информации пользователей и безопасности как конфиденциальных данных, так и самих устройств. Большой неожиданностью стал вошедший в финальную версию iOS 16 патч SEP, сделавший невозможным практическое использование эксплойта checkm8 для доступа к данным на устройствах поколения А11 (iPhone 8, 8 Plus и iPhone X).
Elcomsoft iOS Forensic Toolkit – специализированный инструмент для проведения криминалистического анализа устройств, работающих под управлением Apple iOS. Для анализа доступна вся пользовательская и системная информация, а также зашифрованные данные из системного хранилища (связка ключей).
Инструмент для криминалистов, извлекающий и расшифровывающий данные из резервных копий устройств iOS, Windows Phone и BlackBerry и соответствующих облачных сервисов. Доступ в iCloud по паролю либо маркеру аутентификации, извлечённому из компьютера пользователя. Поддержка двухфакторной аутентификации. Расшифровка Keychain и ускорение перебора паролей на видеокартах AMD и NVIDIA. Словарные атаки для ускоренного восстановления паролей.
Elcomsoft Phone Viewer – простой и компактный инструмент для просмотра информации, извлечённой из резервных копий устройств под управлением Apple iOS, облачных сервисов iCloud и Microsoft. При работе с данными iOS поддерживается восстановление и просмотр удалённых сообщений SMS и iMessage. Продукт позволяет просматривать контакты, сообщения, список звонков, данные заметок и календаря.