Возможность шифрования пользовательских данных в Android-устройствах поддерживается еще с 2011 го. Однако лишь в качестве дополнительной опции. Начиная с версии 5.0 (Lollipop) компания Google добавила в систему поддержку (по умолчанию) полного шифрования диска (Full Disk Encryption, FDE). Во втором квартале 2015 г. пользователь блога Bits под ником «laginimaineb» написал о наличии уязвимости (в программной среде доверенного исполнения) в процессорах производства Qualcomm (TrustZone). Согласно устройству системы, запуск ПО происходит отдельно от исходного кода. Laginimaineb создал специальное приложение (Qualcomm KeyMaster), которое позволяет использовать доступные уязвимости для повышения привилегий и открывает возможность извлечения доступных ключей прямиком из TrustZone (Android TrustZone – специальная секция Android ядра, используемая для обработки наиболее важных операций, в том числе при шифровании данных).

Немного позже Гал Беньямини, исследователь в области информационной безопасности, опубликовал в своем блоге статью, где также обратил внимание на еще одну уязвимость Android-устройств, базирующихся на процессорах производства Qualcomm. Он утверждает, что брутфорс в паре с железной выдержкой позволяет обойти защиту системы и завладеть криптографическим ключом.

Для шифрования пользовательских данных, приложений и настроек Android использует cryptfs.c. Чтобы обеспечить надлежащую работоспособность шифрования, он должен быть активирован на раннем этапе загрузки ОС. Это связано с необходимость предварительного исполнения высокоуровневых компонентов, чтобы в последующем с их помощью привести систему в должное состояние. Сделать это в автоматическом режиме не представляется возможным. Дело в том, что для реализации этого варианта системе нужно активировать функцию запроса пароля, однако для этого требуется запуск графической среды. А для запуска графической среды требуется подключение каталога /data, который нельзя подключить без пароля. Для устранения этой проблемы разработчики пошли на хитрость, используя двойную загрузку ОС.

Система полного шифрования в Android (в iOS, Windows и других выглядит иначе) реализована с помощью использования DEK (Device Encryption Key), платформы Trusted Execution и дополнительных алгоритмов. Рандомно сгенерированный 128-bit ключ в свою очередь защищен с помощью пользовательской блокировки (пароль, фейсконтроль, графический ключ, дактилоскопия и так далее). После DEK перемещается в специальное хранилище. Прежде чем его расшифровать, нужно обойти все возможные уровни шифрования.

Разработчики предусмотрели возможные варианты взлома, ограничив попытки дешифрирования. В том числе и метод брутфорса, путем использования специального модуля (KeyMaster), использующегося для обработки ключей шифрования и их привязки к аппаратному обеспечению (чтобы исключить брутфорс методом параллельных потоков в виртуальной среде). Кстати, в процессе шифрования и дешифрования используется один и тот же алгоритм, если речь идет о DES. KeyMaster является очень важным звеном при взаимодействии с незащищенной средой, перемещая и расшифровывая key blob туда и обратно (в буфер).

Более детально об устройстве системы шифрования в Android устройствах вы можете почитать здесь.

Несмотря на старание разработчиков и производителей, Беньямини сумел отыскать уязвимое место (использовав уязвимости CVE-2015-6639 и CVE-2016-2431) в системе, после загрузив фальшивую версию QSEE (Android Qualcomm Secure Execution Environment), используемую для генерации ключей при шифровании. Это позволило получить преимущество в виде обхода количественных ограничений (повторных попыток), тем самым задействовав возможность брутфорса.

Гал уже уведомил компании Google и Qualcomm о наличии вышеописанной проблемы. На что те ответили, что уже выпустили обновления, устраняющие эти уязвимости. Впрочем, учитывая возможность отката системы и привязку к аппаратной составляющей, этого, к сожалению, не достаточно.

Схема работы эксплойта

Принимая во внимание информацию о том, что многие производители практически или вообще не занимаются обновлением системы (в том числе и выпуском специализированных патчей, устраняющих проблемы с уязвимостью системы), специалисты в области мобильной безопасности рекомендуют использовать пользователям, беспокоящийся о безопасности персональных данных, флагманы компании Samsung или смартфоны линейки Nexus.

Please wait...
Комменты

2 комментария

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

Забыли сказать о Blackberry.

Новый комментарий

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.