Возможность шифрования пользовательских данных в Android-устройствах поддерживается еще с 2011 го. Но только в качестве дополнительной опции. Начиная с версии 5.0 (Lollipop) компания Гугл добавила в совокупность помощь (по умолчанию) полного шифрования диска (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), применяемую для генерации ключей при шифровании. Это разрешило взять преимущество в виде обхода количественных ограничений (повторных попыток), тем самым задействовав возможность брутфорса.
Гал уже уведомил компании Гугл и Qualcomm о наличии вышеописанной неприятности. На что те ответили, что уже выпустили обновления, ликвидирующие эти уязвимости. Но, учитывая возможность отката совокупности и привязку к аппаратной составляющей, этого, к сожалению, не достаточно.
Схема работы эксплойта
Принимая к сведенью данные о том, что многие производители фактически либо по большому счету не занимаются обновлением совокупности (среди них и выпуском специальных патчей, ликвидирующих неприятности с уязвимостью совокупности), эксперты в области мобильной безопасности советуют применять пользователям, волнующийся о безопасности персональных данных, флагманы компании Samsung либо смартфоны линейки Nexus.
Если вы нашли неточность, прошу вас, выделите фрагмент текста и надавите Ctrl+Enter.