GrapheneOS рассказала о защите заблокированных устройств от извлечения данных

В публикации на форуме GrapheneOS разработчики объяснили, как их ОС защищает данные на заблокированном устройстве. Основа защиты, дисковое шифрование Android: по утверждению проекта, напрямую взламывать его не рассчитывают даже сложные атакующие, поэтому им остаётся либо использовать уязвимость ОС после первого разблокирования, либо подбирать PIN-код или пароль. GrapheneOS опирается на возможности Android 17 и на аппаратную защиту; сейчас всем требованиям проекта соответствуют только Pixel. Команда ожидает, что в 2027 году ситуация изменится благодаря партнёрству с Motorola Mobility и прогрессу Qualcomm.

Для противодействия подбору кода поддерживаемые устройства должны иметь защищённый элемент последнего поколения. В Android 16 QPR2 он после 10 неверных попыток увеличивает задержки, а после 15 попыток задержка достигает 41 дня; всего разрешено 20 попыток. Пять последних уникальных неверных вариантов система заранее отклоняет, чтобы не тратить попытки на повторные ошибки. Обновление прошивки защищённого элемента также требует успешной аутентификации владельца устройства: одной подписи и более нового номера версии недостаточно. По замыслу GrapheneOS, это препятствует замене прошивки на вариант без ограничения попыток.

GrapheneOS увеличивает максимальную длину пароля с 16 до 128 символов, чтобы можно было использовать длинную парольную фразу Diceware. Для более удобного повседневного разблокирования предусмотрен необязательный второй фактор: отпечаток пальца и короткий PIN. Для него оставлено пять попыток вместо 20; неверный второй PIN тоже расходует попытку. Отпечаток лишь вызывает запрос второго PIN, а разблокировка экрана и аппаратного хранилища ключей завершается только после его правильного ввода.

Проект также заявляет об усиленных защитах ОС от эксплуатации уязвимостей, в том числе об укреплённых распределителях памяти и аппаратной маркировке памяти MTE. При блокировке по умолчанию запрещаются новые USB-соединения, и программно, и аппаратно; передача данных по USB выключается, когда активных соединений не остаётся. Таймер автоперезагрузки заблокированного устройства можно выставить от 10 минут до 72 часов; сейчас GrapheneOS включает 18 часов по умолчанию. После перезагрузки устройство возвращается в состояние до первого разблокирования, а память очищается.

Отдельно описаны раздельные ключи шифрования для дополнительных пользователей и Private Space, возможность завершить их сеанс и функция PIN-кода или пароля принуждения. Последняя стирает устройство, если её ввести в любом системном запросе PIN или пароля текущего профиля, включая запросы на изменение чувствительных настроек; она действует и для дополнительных пользователей, и для Private Space. Разработчики подчёркивают, что эта функция не является основой защиты от извлечения данных: её стоит применять с учётом возможных физических и юридических последствий, а основные механизмы защиты работают и без неё.

Ключевые факты

  • GrapheneOS считает основой защиты дисковое шифрование, а главными путями атаки, эксплуатацию ОС после первого разблокирования или подбор PIN-кода и пароля.
  • Защищённый элемент Android 16 QPR2 после 10 ошибок увеличивает задержки; после 15 попыток она составляет 41 день, а всего доступно 20 попыток.
  • Пароль может содержать до 128 символов; необязательная схема отпечаток пальца плюс второй PIN оставляет пять попыток для отпечатка.
  • При блокировке GrapheneOS по умолчанию блокирует новые USB-соединения и через 18 часов автоматически перезагружает устройство в состояние до первого разблокирования.
  • PIN-код или пароль принуждения стирает данные, но проект называет его дополнительным средством, а не необходимым условием защиты.

Почему это важно

Материал описывает защиту от физического доступа к телефону: шифрование, замедление подбора кода, препятствия для обновления прошивки защищённого элемента и возврат устройства в состояние до первого разблокирования. Это дополняется защитой от эксплуатации уязвимостей и блокировкой USB-данных.

Кому это важно

В первую очередь тем, кому важно, чтобы данные не извлекались с потерянного, изъятого или иным образом физически доступного заблокированного телефона. Сейчас GrapheneOS поддерживает только Pixel с требуемыми аппаратными возможностями; проект ожидает расширения выбора устройств в 2027 году.

Как это применить

Для максимальной стойкости GrapheneOS предлагает длинную парольную фразу, например из 6, 8 случайных слов Diceware, а для удобства, второй фактор из отпечатка и короткого PIN. Можно настроить таймер автоперезагрузки от 10 минут до 72 часов; по умолчанию используется 18 часов. Функцию PIN-кода или пароля принуждения следует включать только после оценки последствий её применения.

Можно ли доверять

Это заявление самой команды GrapheneOS, которое описывает реализованные ею механизмы и опирается на возможности Android и совместимого оборудования. В публикации приведены ссылки на документацию Android о ограничении попыток и на страницы GrapheneOS с описанием защит и журналом изменений.

Риски и подводные камни

Защита не отменяет риски: после первого разблокирования атакующий может пытаться использовать уязвимости ОС, а слабый PIN или пароль остаётся целью для подбора. Автоперезагрузка лучше возвращает основной профиль в состояние до первого разблокирования, но дополнительные пользователи и Private Space можно перевести в это состояние и без перезагрузки. Стирание по PIN-коду или паролю принуждения может иметь физические и юридические последствия.

«GrapheneOS не зависит от PIN-кода или пароля принуждения для защиты пользовательских данных.»

— GrapheneOS