29 сентября

Зона доступа: 30 способов, которые позволят разблокировать любой смартфон. Часть 2

Блог компании Group-IBИнформационная безопасностьIT-инфраструктураИсследования и прогнозы в ITIT-компании


По правде говоря, технические методы разблокировки мобильных устройств не являются самоцелью для компьютерного криминалиста. Его основная задача — получить доступ к данным, хранящимся в памяти. Поэтому, если исследователю удается извлечь информацию из устройства в обход установленного PIN-кода или графического пароля — необходимость в разблокировке обычно отпадает. С другой стороны, если эксперт все-таки извлекает данные на физическом или логическом уровнях, то он может получить информацию, которая поможет ему в дальнейшем разблокировать девайс. В этой статье Игорь Михайлов, специалист Лаборатории компьютерной криминалистики Group-IB, продолжает рассказывать о способах, которые позволяют экспертам-криминалистам обойти блокировку мобильного устройства. Первую часть можно посмотреть здесь.

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

Технические методы разблокировки экрана мобильного устройства


Разумеется, технические возможности по разблокировке тесно связаны с характеристиками конкретного устройства: его производителем, моделью, версией операционной системы, установленных обновлений безопасности и т.д. Криминалист должен учитывать эти моменты при попытках разблокировки мобильного устройства. Начнем с Apple.

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


Способ 21: использование программно-аппаратных комплексов GrayKey и UFED Premium


Сейчас на рынке существуют два программно-аппаратных комплекса, предназначенных для подбора PIN-кодов и извлечения данных из заблокированных мобильных устройств компании Apple.

Первое устройство — это GrayKey компании Grayshift [23]. Как заявляет разработчик устройства, с его помощью можно восстановить PIN-код практически любого iPhone с любой версией iOS.

Так выглядит одно из известных изображений GrayKey, представленных публике:


Всего двух выводов для подключения исследуемых устройств недостаточно. Ниже объясню почему.

Второе устройство для подбора паролей — UFED Premium компании Cellebrite, анонсированный 14 июня 2019 года [24].


Вероятно, UFED Premium может существовать в виде набора программ (по аналогии с UFED 4PC) или специализированного аппаратного устройства (по аналогии с UFED Touch).

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

Доподлинно известно, что компаниям GreyShift и Cellebrite требуется некоторое время (от нескольких недель до нескольких месяцев) для того, чтобы обойти новые наработки Apple, препятствующие доступу к памяти заблокированных мобильных устройств.

PIN-код мобильных устройств Apple можно взломать методом последовательного перебора («Brute force attack»). В случае удачи, такой подбор пароля занимает менее суток, но может занять и полгода, и более. Соответственно, подключение к GrayKey всего двух мобильных устройств серьезно ограничивает возможности исследователя, учитывая, что восстановление PIN-кодов требует много времени.

Рекомендация по защите: относительно приемлемыми по срокам перебора являются цифровые пароли длиной в 4-6 знаков. Даже 7-8 цифр уже сильно усложняют задачу перебора пароля, а использование цифро-буквенного стойкого пароля делает эту задачу неразрешимой за приемлемое время.

Способ 22: использование аппаратного комплекса IP Box


Для восстановления PIN-кода заблокированных мобильных устройств Apple, работающих под управлением iOS 7-8.1, можно использовать семейство аппаратных устройств в названиях которых, как правило, используется сочетание IP Box. Существует много аппаратных реализаций подобного устройства стоимостью от сотни до тысяч долларов. Например, вариантом такой реализации является IP Box iPhone Password Unlock Tool [25]. Так выглядит результат восстановления PIN-кода с помощью этого устройства:


Ряд компаний, занимающихся разработкой программ для мобильной криминалистики, внедрили этот функционал в свои разработки. Компания Susteen пошла дальше и реализовала подобное устройство в виде робототехнического комплекса Burner Breaker (PIN-код заблокированного мобильного устройства подбирает робот) [26]:

Суть работы устройства заключается в следующем: ввиду наличия программной ошибки в операционной системе (iOS 7.x.x), после израсходования неудачных попыток ввода PIN-кода на устройство подается команда, которая обнуляет счетчик количества неудачных попыток. Это позволяет аппаратному комплексу вновь применить определенное количество новых сочетаний кода для разблокировки устройства.

Как заявлено производителем IP Box iPhone Password Unlock Tool, подбор 4-значного PIN-кода заблокированного мобильного устройства Apple займет не более 17 часов.

Рекомендация по защите: устройство с iOS 7 необходимо было сменить несколько лет назад.

Способ 23: восстановление PIN-кода


Для младших моделей iPhone (до iPhone 5c включительно) существует возможность подобрать PIN-код методом последовательного перебора («Brute force attack»). Например, это можно сделать с помощью UFED Physical Analyzer компании Cellebrite или iOS Forensic Toolkit компании Elcomsoft.

Когда устройство находится в режиме DFU, в него загружается серия эксплойтов, которые позволяют перехватить управление устройством до запуска его собственной операционной системы.

Внешний вид окна iOS Physical с опциями извлечения данных и восстановления PIN-кода для подключенного iPhone 4:


При выборе опции «Восстановление кода-пароля» произойдет подбор PIN-кода заблокированного устройства. Результат восстановления PIN-кода выглядит так:


Перспективы извлечения данных из заблокированных мобильных устройств Apple

27 сентября 2019 года пользователь Twitter под псевдонимом axi0mX анонсировал эксплойт сheckm8. Он использовал уязвимость, которая ставила под удар информацию на миллионах устройств Apple (от iPhone 4s до iPhone X) [27].

В силу того что на iPhone 4S, iPhone 5, iPhone 5C нет возможности аппаратной возможности ограничить число попыток подбора PIN-кода заблокированного устройства, эти устройства уязвимы к программному обеспечению, которое можно использовать для последовательного перебора значений PIN-кода с целью его восстановления.

Августовский релиз Elcomsoft IOS Forensics Toolkit содержит реализацию такой атаки для устройств: iPhone 5 и iPhone 5c.

Кроме того, исследователи безопасности из группы PANGU сообщили об уязвимости в SEPROM [28] в чипах A8-A10 (iPhone 6, 6s, 7), которая в теории тоже позволит отключить проверку подбора пароля PIN-кода.

Рекомендация по защите: безопасными устройствами на данный момент можно считать только устройства на процессорах A12 и A13 (iPhone XR, XS, 11, 11Pro). Не забывайте, что если старое уязвимое устройство подключено к одному iCloud с новым безопасным, то через старое устройство можно получить данные iCloud и от нового.

Перебор пароля Elcomsoft IOS Forensics Toolkit:


Способ 24: использование lockdown-файлов


Если мобильное устройство Apple хотя бы один раз подключалось к компьютеру под управлением Windows или MacOS, то программа iTunes автоматически создала на нем файлы, которые помогут исследователю извлечь данные из заблокированного устройства.

Эти файлы расположены по следующим путям:

  • Mac OS X: \private\var\db\lockdown
  • Windows 2000 и XP: C:\Documents and Settings\All Users\Application Data\Apple\Lockdown
  • Windows Vista, 7, 8 и 10: C:\ProgramData\Apple\Lockdown

Для успешного извлечения данных исследователь должен переместить эти файлы с компьютера владельца мобильного устройства на свою рабочую станцию ​​(в ту же папку). После этого данные можно извлечь с помощью любого криминалистического инструмента или iTunes.

Важно отметить, что если мобильное устройство Apple работает под управлением iOS версии 9 или новее и было перезагружено после блокировки — исследователь не сможет использовать этот подход.

Рекомендация по защите: не подключать iOS-устройства к компьютерам, где не установлено полнодисковое шифрование со стойким паролем.

Разблокировка мобильных устройств под управлением операционной системы Android


Для мобильных устройств под управлением операционной системы Android существует ряд методов, которые позволяют получить доступ к данным, не зная PIN-код или графический ключ. Мы опишем и эти методы, и пути восстановления PIN-кода или графического ключа.

Способ 25: разблокировка устройства с помощью AT-команд модема


На ряде мобильных устройств, по умолчанию, может быть активирован AT-модем. Как правило, это мобильные устройства, произведенные LG Electronics Inc. в 2016-2017 годах, но могут быть и устройства, выпущенные иными производителями.

Это позволяет исследователю управлять работой мобильного устройства с помощью AT-команд. Например, с помощью таких команд можно извлечь дамп памяти из устройства, находящегося в режиме Firmware Update. Или разблокировать устройство, отдав одну-единственную команду. Использование AT-команд является самым криминалистически правильным путем, так как не изменяет данные в памяти устройства.

Для разблокировки мобильного устройства, оно должно отобразиться в списке устройств Windows на компьютере исследователя как LGE Mobile USB Modem.

Заблокированный смартфон LG, подключенный к компьютеру исследователя в режиме LGE Mobile USB:


Далее можно отдать AT-команду с помощью терминала или воспользоваться специализированным программным обеспечением (например, «Мобильный Криминалист Эксперт»).

Отображение заблокированного смартфона LG в программе «Мобильный Криминалист Эксперт»:


Если кликнуть в интерфейсе программы кнопку «Разблокировать» — произойдет разблокировка устройства:


Более подробно использование AT-команд в мобильной криминалистике описано в работе «Unlocking The Screen of an LG Android Smartphone with AT Modem Commands» [29].

Рекомендация по защите: сменить устройство на актуальное.

Способ 26: доступ к данным рутированного устройства


Иногда на исследование может поступить рутированное устройство, то есть устройство, на котором исследователь уже имеет права суперпользователя. На таком устройстве исследователю доступны все данные: файлы и логические разделы. Таким образом, исследователь может извлечь файлы, содержащие PIN-код или графический пароль, и попытаться восстановить их значения или удалить их и таким образом разблокировать устройство.

Кроме описанного метода, физический дамп мобильного устройства, в котором исследователь может найти файлы, содержащие PIN-код или графический код, можно создать следующими способами:

  • методом Chip-off (экстракция чипа памяти и считывание информации из него напрямую)
  • методом JTAG (с использованием интерфейса Joint Test Action Group, который применяют для отладки программ)
  • методом In-System Programming (ISP) (в основе этого метода лежит вычитывание данных из чипа памяти мобильного устройства без его выпаивания с материнской платы)
  • аварийная загрузка устройства методом Emergency Download Mode (для мобильных устройств с процессорами Qualcomm)
  • с использованием модифицированного образа восстановления
  • с использованием модифицированного загрузчика
  • с помощью AT-команд

Используя эксплойты, исследователь может извлечь часть файловой системы исследуемого устройства. Если в этом фрагменте файловой системы будут файлы, содержащие PIN-код блокировки или графический ключ, — исследователь может попробовать их восстановить.

Файлы gesture.key, settings.db, locksettings.db, gatekeeper.password.key

Информация о PIN-коде или графическом коде сохраняется в следующих файлах, расположенных по пути /data/system/:

  • gesture.key (gatekeeper.pattern.key в новых прошивках)
  • password.key (либо gatekeeper.password.key)
  • locksettings.db
  • locksettings.db-wal
  • locksettings.db-shm
  • settings.db
  • settings.db-wal
  • settings.db-shm

Удаление этих файлов или изменение в них значений хэшированного пароля может привести к разблокировке мобильного устройства.

Рекомендация по защите: этот метод (gesture.key) применим к старым устройствам, где еще не было отдельной области для хранения криптографических данных и они хранились просто в файловой системе. В новых устройствах такой способ не пройдет.

Способ 27: удаление файла, содержащего код блокировки


Самым простым вариантом разблокировки мобильного устройства является удаление файла, содержащего код блокировки. Для этого на устройстве должна быть включена отладка по USB, что, к сожалению, случается далеко не всегда.

Если исследователю повезло и отладка по USB активирована — он может удалить файл, содержащий пароль, данной последовательностью команд [30]:

adb devices
adb shell
cd /data/system
su
rm *.key
rm *.key
adb reboot

Альтернативный вариант — ввести команду, которая приведет к удалению файла gesture.key:

adb shell rm /data/system/gesture.key

После перезагрузки устройство или сразу будет разблокировано, или появится экран блокировки, который можно просто «смахнуть» вверх или в сторону.

Другим методом удаления блокировки является изменение значений ячеек баз данных, содержащих пароли. Для этого нужно выполнить следующую последовательность команд [30]:

adb shell
cd /data/data/com.android.providers.settings/databases
sqlite3 settings.db
update system set value=0 where name=’lock_pattern_autolock’;
update system set value=0 where name=’lockscreen.lockedoutpermanently’;
.quit

Альтернативный вариант приведен пользователем nstorm1 на форуме 4PDA. Он предлагает ввести такую последовательность команд [31]:

adb shell
 cd /data/data/com.android.providers.settings/databases
 sqlite3 settings.db
 update secure set value=0 where name='lockscreen.password_salt';
 update secure set value=0 where name='lockscreen.password_type';
 update secure set value=0 where name='lockscreen.lockoutattemptdeadline';
 update secure set value=0 where name='lock_pattern_visible_pattern';
 update system set value=0 where name='lockscreen.lockexchange.enable';
 .quit

Рекомендация по защите: аналогично предыдущему.

Способ 28: установка кастомных прошивок


Если исследователю не повезло и у мобильного устройства не активирована отладка по USB, то он может попробовать установить кастомную прошивку, чтобы получить доступ к файлам, содержащим коды (пароли) блокировки, или удалить их.

Наиболее популярными являются кастомные прошивки:

  • CWM Recovery (ClockworkMod Recovery) — модифицированная неофициальная прошивка, которая выпускается для большинства устройств, работающих под управлением Android. Обладает гораздо более широкими возможностями, чем родная прошивка. На некоторых устройствах устанавливается вместо родной прошивки, на других устройствах устанавливается параллельно.
  • Team Win Recovery Project (TWRP) также является модифицированной неофициальной прошивкой, которая выпускается для большинства устройств, работающих под управлением Android. Обладает гораздо более широкими возможностями, чем родная прошивка. На некоторых устройствах устанавливается вместо родной прошивки, на других устройствах устанавливается параллельно.

Часть кастомных прошивок может быть установлена с microSD-карты. Инструкции по их прошивке в мобильные устройства можно найти на соответствующих интернет-площадках.

Прошив в мобильное устройство CWM Recovery, нужно смонтировать раздел DATA с помощью команды:

mount /dev/nandd /data

После получения доступа к файлам устройства нужно выполнить последовательность команд, описанную в способе 27 [32].

Если на мобильное устройство удалось прошить TWRP, то в нем нужно пройти в раздел TWRP под названием Advanced и выбрать File Manager. Далее с помощью File Manager нужно перейти на диск data в каталог system, затем удалить файлы, которые могут содержать PIN-код или графический пароль (файлы gesture.key, settings.db, locksettings.db, gatekeeper.password.key и т.д.).

Файлы gatekeeper.password.key, gatekeeper.pattern.key, locksettings.db, locksettings.db-wal, locksettings.db-shm, отображаемые в интерфейсе File Manager TWRP:


В мобильные устройства Samsung кастомная прошивка может быть прошита с помощью программы Odin. Для разных версий программы существуют свои инструкции по прошивке мобильных устройств.

Загрузка кастомной прошивки в мобильное устройство Samsung SM-J710 с помощью программы Odin3:


В мобильные устройства, оснащенные чипом MTK (например, Meizu, Xiaomi, Lenovo, Fly, Elephone, Blackview, ZTE, Bluboo, Doogee, Oukitel, UMI и других китайских производителей), кастомную прошивку можно прошить с помощью программы SP Flash Tool [33].

Рекомендация по защите: использовать устройства с полнодисковым или пофайловым шифрованием, с Android версии 9.0 и выше, с патчами безопасности от июля 2020 года и новее.

Способ 29: восстановление PIN-кода из файла


Если исследователь не может извлечь из заблокированного устройства файл, содержащий PIN-код или графический код, — он может попытаться восстановить код, хранящийся в файле.

Например, с помощью программы Andriller можно восстановить PIN-код, хранящийся в файле gesture.key.

Фрагмент основного окна программы Andriller:


Из файла, содержащего графический пароль (gesture.key), можно извлечь хэш, который можно декодировать с помощью радужных таблиц в последовательность цифр, являющихся значениями графического кода. Пример такого извлечения приведен в работе «Android Forensics: Cracking the Pattern Lock Protection» [34].

Восстановление графического паттерна из файла gatekeeper.pattern.key в настоящее время затруднено, так как отсутствуют общедоступные инструменты и исследовательские работы, в которых бы освещались подходы к анализу данных этого файла.

Способ 30: использование специализированных программ


С помощью специализированных программ (или аппаратно-программных комплексов — например, UFED Premium, который был описан выше), можно извлечь файловую систему исследуемого устройства, физический дамп, а также снять (а после исследования — восстановить) код блокировки экрана. На иллюстрации ниже приведено окно программы UFED 4PC с опциями извлечения для Samsung SM-J710F. Там отображена вся полнота методов извлечения, доступных исследователю. Программу UFED 4PC можно считать гражданской версией UFED Premium.


Таким образом, исследователь может отключить/восстановить блокировку экрана на смартфоне, а также извлечь файловую систему устройства или сделать полную копию памяти устройства в обход блокировки.

Рекомендация по защите: как правило, такие программно-аппаратные комплексы эксплуатируют уязвимости в загрузчике или процессоре устройства и не доступны гражданскому пользователю. На данный момент уязвимы практически все процессоры Kirin, Exynos и старые версии процессоров Qualcomm.

Выводы


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

Многие из описанных способов актуальны только для старых версий iOS и Android. Например, начиная с версии 6.0 в Android используется шифрование файловой системы, а с iOS 11.4.1 — механизм USB Restricted Mode (защитный механизм, отключающий любой обмен данными через встроенный в устройство порт Lightning).

Соревнование производителей мобильных устройств и исследователей, стремящихся получить доступ к данным, сродни соревнованию специалистов по разработке брони и снаряда. Повышение безопасности хранимых данных требует от исследователей более глубокого изучения защитных механизмов мобильных устройств, что приводит к курьезам. В качестве примера можно привести разработку экплойта Сheckm8 для устройств Apple. Apple постоянно наращивала безопасность своих мобильных устройств, что препятствовало деятельности исследователей. Глубокий анализ защитных механизмов этого производителя привел к обнаружению уязвимости в BootROM, то есть в коде устройства, который отвечает за первоначальную загрузку. Сheckm8 позволяет получить права суперпользователя на всех устройствах Apple, выпущенных в период с 2011 по 2017 год (включая все модели с iPhone 4s по iPhone X), и для всех существующих версий операционной системы iOS. Данная уязвимость неустранима: для её исправления Apple нужно отозвать миллионы устройств по всему миру и заменить в них код BootROM.

Социальные методы разблокировки мобильных устройств и дальше будут оставаться актуальными, пока производители не разработают иные способы идентификации владельцев устройств, препятствующие использованию социальной инженерии.

Если же говорить о безопасности устройств, то на момент публикации статьи относительно безопасными устройствами можно считать:

  • Устройства на процессорах Apple A12 и A13 с iOS 13.6.1 и паролем больше 6 символов.
  • Устройства на процессорах Qualcomm 865 и 865+ с версией Android 9.0 и выше с патчами безопасности от июля 2020 года. При этом должен использоваться пароль и не использоваться разблокировка по «фото» и датчик отпечатка пальца на основе фотокамеры.


Остросюжетный Telegram-канал Group-IB t.me/Group_IB об информационной безопасности, хакерах, APT, кибератаках, мошенниках и пиратах. Расследования по шагам, практические кейсы с применением технологий Group-IB и рекомендации, как не стать жертвой. Подключайтесь!
Теги:компьютерная криминалистикаcybercriminalisticsразблокировка смартфонаразблокировкаподбор паролейunblock iossoftwareпрограммное обеспечениесофтAndroidiOSandroid os
Хабы: Блог компании Group-IB Информационная безопасность IT-инфраструктура Исследования и прогнозы в IT IT-компании
+16
7,7k 104
Комментарии 4
Лучшие публикации за сутки