Практический GrapheneOS для параноиков

от автора

Практический GrapheneOS для параноиков

GrapheneOS — это операционная система с открытым исходным кодом (FOSS), основанная на проекте Android Open Source Project (AOSP), которая в первую очередь сосредоточена на улучшении конфиденциальности и безопасности. Хотя мы все хотели бы иметь наилучшую безопасность и конфиденциальность, к сожалению, такие улучшения редко приходят без потерь в удобстве и простоте использования. В этой статье мы рассмотрим, как максимально использовать улучшения Graphene и как эти меры влияют на пользовательский опыт, предлагая практические решения.

Эта статья является попыткой объединить информацию и знания о мобильной безопасности и конфиденциальности в рамках проекта GrapheneOS

Выбор устройства

Вероятно, самый распространенный вопрос среди тех, кто впервые интересуется проектом GrapheneOS, звучит так: почему официально поддерживается так мало устройств, и почему все они — дорогие телефоны Pixel, произведенные злым Google?

Почему только Pixel?

С технической точки зрения в настоящее время просто нет другого разумного выбора. Чтобы прояснить ситуацию, GrapheneOS не имеет контрактной эксклюзивности для устройств Google, и устройства Pixel не являются невероятно безопасными; скорее, все альтернативы просто ужасны. Проект GrapheneOS ведет список (не исчерпывающий) требований, которые они предъявляют к текущим и будущим официально поддерживаемым устройствам, и, к сожалению, в настоящее время только устройства Pixel могут им соответствовать.

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

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

В прошлом GrapheneOS пытался заключить партнерство с производителями оборудования, но оказалось, что создать устройство с сопоставимым уровнем безопасности с Pixel невероятно сложно. Хотя эти партнерства в конечном итоге не состоялись, проект GrapheneOS все еще надеется найти компанию-производителя, способную выпускать устройства, соответствующие требованиям безопасности Graphene в будущем.

Единственным производителем Android, который хотя бы близок к устройствам Pixel по уровню аппаратной безопасности, является Samsung. Они даже заключили партнерство с Google для улучшения безопасности устройств, с некоторым успехом, но в конечном итоге Samsung все же, как правило, отстает на 2-3 года в внедрении новых функций безопасности, представленных в Pixel. Хотя теоретически Samsung не хватает всего лишь нескольких требований, у них все еще отсутствует серьезная поддержка альтернативных операционных систем, что мешает GrapheneOS использовать даже те функции, которые у него есть.

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

Есть ли альтернативы?

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

Самая основная критика, которую команда GrapheneOS выдвигает против почти всех этих систем, заключается в значительных задержках и, в некоторых случаях, даже в полном отсутствии важных обновлений безопасности, которые пользователи чисто открытой версии Android (AOSP) могли бы получать.

LineageOS – один из таких «нарушителей», хотя следует признать, что акцент этого проекта сделан на долговечность устройств и широкую совместимость, а не на безопасность. В нем критически не хватает функции проверенной загрузки, что делает его уязвимым для несанкционированного доступа при физическом контакте. Проект /e/OS позиционирует себя как полностью «deGoogle»-экосистему для мобильных устройств, сосредоточенную на конфиденциальности, однако он строится на ненадежном основании Lineage. /e/OS поставляется с приложениями и сервисами, которые создают у пользователей сомнительное чувство конфиденциальности, в то время как сами эти сервисы, по сути, могут быть инвазивными.

Вероятно, самым серьезным «конкурентом» Graphene является CalyxOS, который, похоже, не только регулярно отстает в обновлениях, но и вводит пользователей в заблуждение относительно этого, указывая неточные уровни обновлений безопасности Android. Кроме того, они реализовали функции безопасности с серьезными недостатками, такие как функция экстренного стирания, которая не всегда надежно удаляла компрометирующие данные, как предполагалось.

Затем есть CopperheadOS, под названием которого ранее было известно GrapheneOS. Я не буду углубляться в детали драмы, связанной с враждебным поглощением и последующим отделением от компании, которая должна была финансово поддерживать проект. Однако стоит отметить, что эта компания теперь продает CopperheadOS как закрытую версию с изменениями.

Наконец, Purism со своим собственным аппаратным обеспечением, которое по желанию может быть произведено в США и обещает контроль над вашей конфиденциальностью с такими функциями, как (сомнительные?) аппаратные переключатели. Команда GrapheneOS резко не согласна с выбором компонентов аппаратной безопасности, сделанным для их устройств, а также с запутанным процессом, необходимым для обновлений прошивки и микрокода. Их устройство Librem 5 почти полностью основано на закрытом исходном коде аппаратного обеспечения и прошивки, хотя многие люди были введены в заблуждение, полагая, что это не так.

GrapheneOS обвиняет эти проекты в пустом маркетинге с использованием модных слов, которые вводят пользователей в заблуждение, заставляя доверять устаревшему и уязвимому программному и аппаратному обеспечению. Они даже доходят до того, что утверждают, что пользователи будут в лучшем положении, если будут использовать iPhone (в режиме Lockdown), вместо любого из упомянутых проектов, как лучший вариант для конфиденциальности и безопасности после GrapheneOS.

Не поймите неправильно, проект GrapheneOS никоим образом не утверждает, что его операционная система непроницаема, но он сосредоточен на сути, а не на брендинге и маркетинге. Это становится вполне очевидным при сравнении сайта Graphene с сайтами других проектов: GrapheneOS — это безусловно технический проект, что я лично очень ценю, поскольку это избавляет меня от необходимости рыться в маркетинговых материалах, чтобы найти технические факты. С другой стороны, я вполне понимаю, как это может быть довольно пугающе для среднего пользователя.

Можно ли доверять устройствам Google?

Мы уже упоминали, что GrapheneOS в настоящее время поддерживает только устройства Pixel, так как именно они имеют достаточно надежные меры аппаратной безопасности. Все это хорошо, но разве это не было бы бессмысленным, если бы эти устройства имели встроенные задние двери?

Как уже говорилось, устройства Google Pixel служат в качестве эталонных устройств для разработки Android, что приводит к тому, что многие эксперты работают с ними. Более того, Google проявляет большую открытость к внешним исследованиям в области безопасности, благодаря чему устройства Pixel получают значительное внимание со стороны исследователей безопасности. В таких условиях было бы, безусловно, сложно скрыть задние двери в этих устройствах.

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

Тем не менее, некоторые выступают против использования чего-либо, произведенного Google, исходя из принципа. Для достижения наилучшего результата им пришлось бы воспользоваться продуктами Apple, поскольку Google играет огромную роль в разработке многих проектов с открытым исходным кодом, включая сам ядро Linux. Миссия GrapheneOS не полностью сосредоточена на идее избегания одной конкретной компании любыми доступными средствами, а скорее заключается в получении наилучшей возможной конфиденциальности с помощью лучших доступных инструментов.

Какой Pixel выбрать?

Для наилучшей безопасности настоятельно рекомендуется использовать Pixel 8-го или 9-го поколения. Они считаются значительно более безопасными благодаря аппаратным особенностям, которые может использовать GrapheneOS, таким как тегирование памяти. 9-е поколение оснащено дополнительно защищенным и более эффективным сотовым радио, поэтому если вы планируете использовать его с SIM-картой, вы можете ожидать улучшенной безопасности и времени работы от аккумулятора. Модели Pixel 9 Pro поставляются с 16 ГБ оперативной памяти, что будет особенно полезно, если вы планируете использовать GrapheneOS с несколькими профилями пользователей (преимущества этого будут объяснены позже).

На данный момент 9-е поколение также опережает по использованию защищенного ядра Linux, но 8-е поколение, вероятно, скоро будет обновлено, что сделает оба поколения очень похожими с точки зрения безопасности. Учитывая это, телефон Pixel 8a будет идеальным бюджетным устройством с некоторыми компромиссами в производительности. В любом случае оба поколения будут получать 7 лет полной поддержки.

Вы можете найти таблицу с информацией о том, как долго каждое из устройств будет поддерживаться, по адресу https://grapheneos.org/faq#device-lifetime.

Устройства Pixel 6-го и 7-го поколения все еще имеют несколько лет поддержки, что делает их неплохим выбором, если вы уже владеете одним из них и хотите продолжать его использовать еще некоторое время. Однако это не является рекомендацией к покупке нового устройства из этих поколений. Также имейте в виду, что существуют различные функции безопасности, которые GrapheneOS может использовать только с аппаратным обеспечением более новых поколений.

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

Pixel Tab

Pixel Tab

Самостоятельная установка или предустановленная версия?

Существуют компании, продающие устройства Pixel с предустановленной операционной системой GrapheneOS, но также есть и те, которые утверждают или неверно намекают на то, что установленная операционная система является GrapheneOS или использует её части. Кроме того, существует вероятность, что такие предустановленные или использованные устройства были модифицированы.

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

Самый простой способ установить GrapheneOS — использовать совместимый веб-браузер на совместимом втором устройстве — это может быть браузер Chromium на ноутбуке или даже на втором телефоне Android! Вам просто нужен кабель для подключения обоих устройств. На вторичном устройстве вам нужно открыть страницу веб-установщика и следовать инструкциям. Не волнуйтесь: ваше устройство не потеряет свою гарантию, оно не станет «кирпичом», и если вам не понравится GrapheneOS, вы всегда сможете вернуться к стандартному Android.

Защита от подделки

Хэш ключа проверенной загрузки

Предположим, что вы теперь гордый обладатель устройства Pixel с новой установкой GrapheneOS. Вы можете быть удивлены предупреждением, которое появится при запуске устройства. Оно исчезнет и продолжит загрузку GrapheneOS через несколько секунд, если вы не нажмете кнопку питания, чтобы приостановить экран. Строка символов, отображаемая после «ID:», называется отпечатком ключа проверенной загрузки, который является криптографическим хэш-значением, позволяющим вам проверить, что установленная версия GrapheneOS является подлинной — и она никогда не должна меняться!

Отпечатки пальцев различаются в зависимости от модели устройства, и вышеуказанный список был скопирован со страницы веб-установщика. Хотя это маловероятно, существует возможность, что серверная инфраструктура проекта GrapheneOS была скомпрометирована, и злоумышленники заменили как файлы операционной системы, используемые во время установки, так и список ключевых хешей. Вы можете сравнить отпечаток, отображаемый на вашем устройстве, с таблицей выше, чтобы убедиться, что вы установили легитимную версию GrapheneOS.

Auditor APP

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

Скриншот: Меню приложения Auditor. Выберите 'Auditee' на устройстве с GrapheneOS, которое вы хотите проверить, и 'Auditor' на вторичном устройстве, с помощью которого вы проводите проверку. Просто следуйте указанным инструкциям, чтобы выполнить аудит устройства и операционной системы

Скриншот: Меню приложения Auditor. Выберите ‘Auditee’ на устройстве с GrapheneOS, которое вы хотите проверить, и ‘Auditor’ на вторичном устройстве, с помощью которого вы проводите проверку. Просто следуйте указанным инструкциям, чтобы выполнить аудит устройства и операционной системы
Скриншот: Результаты аудита отображаются на втором устройстве. Фон красный из-за того, что проверка аудитируемого проводится впервые. На следующем аудите фон будет зеленым, что подтвердит, что наше устройство не было заменено. Результаты также показывают, что устройство аудитируемого работает на неизмененной, официальной версии GrapheneOS.

Скриншот: Результаты аудита отображаются на втором устройстве. Фон красный из-за того, что проверка аудитируемого проводится впервые. На следующем аудите фон будет зеленым, что подтвердит, что наше устройство не было заменено. Результаты также показывают, что устройство аудитируемого работает на неизмененной, официальной версии GrapheneOS.

Эту проверку можно автоматизировать с помощью веб-сайта attestation.app, который является частью проекта GrapheneOS. После регистрации на сайте и соединения вашего устройства вы получите уведомление по электронной почте, если устройство не сможет предоставить действительные подтверждения вовремя.

Скриншот: После настройки желаемой конфигурации выберите «Включить удаленную проверку» на устройстве GrapheneOS, которое вы хотите проверить, и отсканируйте QR-код, отображаемый на сайте аттестации.

Скриншот: После настройки желаемой конфигурации выберите «Включить удаленную проверку» на устройстве GrapheneOS, которое вы хотите проверить, и отсканируйте QR-код, отображаемый на сайте аттестации.
Скриншот: Если устройство, подлежащее аудиту, имеет подключение к Интернету, результаты аудита будут отображены на сайте аттестации после перезагрузки.

Скриншот: Если устройство, подлежащее аудиту, имеет подключение к Интернету, результаты аудита будут отображены на сайте аттестации после перезагрузки.

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

Усиление через настройки

Существует три основных аспекта того, как GrapheneOS защищает себя от уязвимостей безопасности: он уменьшает количество «поверхности» (то есть активной функциональности/кода), которая подвергается риску со стороны потенциальных злоумышленников; делает эксплуатацию уязвимостей максимально сложной; и изолирует компоненты друг от друга, чтобы уменьшить последствия эксплуатации уязвимости. Поскольку такие меры влияют на удобство использования и производительность устройства, GrapheneOS позволяет пользователям выбирать свои предпочтения с помощью различных переключателей в настройках.

Экран блокировки

Данные пользователей хранятся в зашифрованном виде с использованием ключа, который, среди прочего, выводится из выбранного вами метода блокировки экрана. То, что эти меры не могут быть просто обойдены с помощью перебора, обеспечивается задержками, устанавливаемыми аппаратным обеспечением «защищенного элемента». Благодаря этой мере даже случайный 6-значный PIN-код обеспечивает высокий уровень безопасности. Если вы не хотите полагаться на безопасность защищенного элемента, вы можете использовать длинные пароли длиной до 128 символов.

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

Разблокировка с помощью отпечатка пальца может быть настроена, хотя для лучшей безопасности стоит рассмотреть возможность ограничения ее использования только для аутентификации в приложениях (то есть отключить функцию «Использовать для разблокировки экрана»). Недавно была выпущена функция двухфакторной разблокировки отпечатком пальца в Graphene, которая позволяет использовать сочетание отпечатка пальца и PIN-кода в качестве второго метода разблокировки. С ее помощью вы сможете иметь как надежный пароль для шифрования, так и удобство быстрого разблокирования телефона — после успешного первого разблокирования с помощью пароля.

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

Скриншот: Страница настроек для настройки разблокировки устройства. Находится в разделе Настройки » Безопасность и конфиденциальность » Разблокировка устройства.

Скриншот: Страница настроек для настройки разблокировки устройства. Находится в разделе Настройки » Безопасность и конфиденциальность » Разблокировка устройства.
Скриншот настроек блокировки экрана. Возможно, вам стоит рассмотреть возможность запрета доступа к камере, пока устройство заблокировано (т. е. отключить функцию «открыть камеру при двойном нажатии кнопки питания»), чтобы еще больше сократить поверхность атаки.

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

Наконец, GrapheneOS предлагает возможность установки пароля или PIN-кода для экстренных ситуаций. После его установки использование этого пароля или PIN-кода в любом месте, где можно ввести разблокировочный пароль или PIN-код, даже в профилях вторичных пользователей, приведет к безвозвратному удалению данных устройства (а также установленных eSIM-карт). Когда функция будет активирована, информация, необходимая для расшифровки, будет удалена, и устройство выключится. При следующей загрузке будет обнаружена недействительная файловая система, и устройство можно будет настроить заново, как если бы оно прошло сброс к заводским настройкам. Обратите внимание, что это не удаляет зашифрованные данные, так как это заняло бы много времени и дало бы злоумышленникам возможность прервать процесс.

Авто-перезагрузка

Устройство, которое только что было включено и еще не было разблокировано, имеет свои пользовательские данные полностью зашифрованными или «в покое». Продолжение использования после первой разблокировки часто приводит к накоплению незашифрованных данных в эфемерной памяти устройства, что является уязвимостью, которую используют судебные эксперты. Функция Авто-перезагрузка была введена как защита от извлечения незашифрованных данных.

Хотя приложения могут помещать конфиденциальные данные обратно в состояние покоя, когда устройство блокируется, именно на разработчиков лежит ответственность за то, чтобы реализовать это корректно — что случается довольно редко. Даже разработчики мессенджера Signal, ориентированного на конфиденциальность, проявили мало интереса к реализации этой функции, оставив это на откуп таким ответвлениям, как Molly, чтобы справляться с этой задачей более эффективно. Автоматическая перезагрузка устройства через некоторое время возвращает его в состояние «до первой разблокировки» (BFU).

Таймер перезагрузки запускается каждый раз, когда устройство блокируется, и успешная разблокировка сбрасывает таймер. По умолчанию таймер установлен на 18 часов, а самая низкая и безопасная опция составляет 10 минут. Обратите внимание, что таймер будет запущен только в том случае, если устройство было разблокировано хотя бы один раз с момента последней перезагрузки.

С установленным значением по умолчанию в 18 часов таймер будет отменен при постоянном использовании, чтобы избежать негативного влияния на пользовательский опыт. Благодаря очень частым обновлениям GrapheneOS, требующим регулярных перезагрузок, эта функция выполняет второстепенную полезную задачу. Если это все еще приводит к слишком частым перезагрузкам устройства, таймер можно увеличить до 78 часов или даже полностью отключить — хотя GrapheneOS настоятельно не рекомендует этого делать.

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

USB Ограничения

Когда судебные компании пытаются получить доступ к смартфонам, они обычно предпочитают делать это через USB-интерфейс, который имеет огромную поверхность атаки из-за множества функций, которые он предлагает. Устройства Pixel обеспечивают аппаратный контроль над портом USB-C, функция, которая в настоящее время даже не используется стандартной версией Android, но является очень важным аспектом проекта GrapheneOS.

Скриншот: Многие из этих параметров сокращения поверхности атак можно найти в разделе «Настройки» » «Безопасность и конфиденциальность» » «Защита от эксплойтов».

Скриншот: Многие из этих параметров сокращения поверхности атак можно найти в разделе «Настройки» » «Безопасность и конфиденциальность» » «Защита от эксплойтов».
Скриншот: Различные доступные параметры управления портом USB-C будут реализованы как на программном, так и на аппаратном уровне.

Скриншот: Различные доступные параметры управления портом USB-C будут реализованы как на программном, так и на аппаратном уровне.

По умолчанию GrapheneOS отключает новые подключения USB-C, как только устройство заблокировано. Иными словами, вы можете подключить и использовать данные USB-C, пока устройство разблокировано, но как только оно заблокировано и вы отключили кабель, новые подключения будут отклонены. Эта мера включает в себя отключение альтернативных режимов USB-C, таких как DisplayPort.

Наиболее безопасный, хотя и, по всей вероятности, самый неудобный вариант — это полностью отключить порт USB-C, пока операционная система работает. Это даже предотвратит любые уязвимости, присутствующие в логике подачи питания устройства, но также потребует, чтобы устройство было выключено для зарядки.

Беспроводная поверхность атаки

С отключением USB остаются беспроводные векторы атаки, такие как Wi-Fi, Bluetooth и сотовая связь. Однако получить доступ к устройству через один из этих векторов будет значительно сложнее и трудоемче. Изоляция аппаратных компонентов стала де-факто нормой для мобильных устройств. Например, в устройствах Pixel имеются отдельные чипы для каждого из этих радиомодулей, и если вы захотите, вы сможете по отдельности удалить эти чипы, и устройство продолжит функционировать.

Хотя эта функция еще не включена по умолчанию, вы можете установить таймер для автоматического отключения Wi-Fi и Bluetooth. Таймер начнет отсчет, как только активное соединение будет потеряно. Проект GrapheneOS планирует в будущем расширить эту возможность на NFC.

Проблема сотовой связи гораздо более сложна. Во-первых, 5G, SMS, MMS и звонки обычно работают так же хорошо на GrapheneOS, как и на стандартном Android. GrapheneOS добавляет различные переключатели, которые снова пытаются уменьшить поверхность атаки, хотя в зависимости от вашего оператора и страны, в которой вы находитесь, вам, возможно, придется поэкспериментировать с ними, чтобы понять, что работает.

Вы можете использовать eSIM с GrapheneOS, но поскольку это требует проприетарной функциональности от Google, она полностью отключена по умолчанию. Ранее для включения поддержки eSIM требовался Google Play, но теперь это не так, и использование eSIM больше не будет передавать данные Google. Обратите внимание, что хотя сброс через пин-код/пароль также удаляет eSIM, это не относится к обычному заводскому сбросу.

Проект GrapheneOS рекомендует использовать переключатель только для LTE, когда это возможно. LTE, который иногда называют 4G или 5Ge, намного современнее устаревших протоколов 2G и 3G, но также намного менее сложен и более стабилен, чем новый протокол 5G. Обратите внимание, что, хотя это может усложнить некоторые формы перехвата, единственная цель режима только для LTE — отключение огромного количества кода, связанного как с устаревшими, так и с новейшими протоколами.

Сотовая конфиденциальность

Системы LTE и 5G действительно используют определенную форму шифрования, но это в основном предназначено для защиты самой сети, а не для защиты вашей конфиденциальности. Независимо от того, какой режим вы используете, вам следует избегать традиционных телефонных звонков и сообщений, используя сотовую сеть, и вместо этого использовать мессенджеры с шифрованием end-to-end, такие как Signal и SimpleX. На самом деле, если есть возможность, всегда предпочтительнее использовать Wi-Fi вместо сотовой связи.

Традиционная телефонная система исторически является небезопасной и не была разработана с целью защиты конфиденциальности пользователей. Это можно представить как закрытый сад, где, как только вы становитесь доверенной стороной с доступом к нему, вы получаете значительное количество информации и контроля над сетью. Этот доступ можно купить за несколько тысяч долларов США в месяц, и он позволяет перехватывать телефонные звонки, SMS-сообщения, а в некоторых случаях даже примерно отслеживать местоположение человека. Для этого злоумышленнику нужен уникальный идентификатор IMSI вашей SIM-карты, но часто его можно узнать просто, зная ваш номер телефона. Используя это, злоумышленник сможет перехватить SMS для двухфакторной аутентификации, при этом обеспечив, что ваш телефон не даст никаких признаков того, что такое SMS когда-либо отправлялось на ваш номер.

Когда ваш телефон аутентифицируется в сотовой сети, он делает это, предоставляя информацию как о вашей SIM-карте, так и о аппаратном обеспечении сотового радио устройства. Если вы купили как телефон, так и SIM-карту анонимно, вы, по сути, используете постоянный псевдоним. Поскольку информация об аппаратном обеспечении передается, замена только SIM-карты не является достаточной для получения новой идентичности.

На этом этапе вы, возможно, рассматриваете возможность использования внешнего устройства, такого как специальная мобильная точка доступа, которую будет гораздо дешевле регулярно менять вместе с новой SIM-картой. Хотя это увеличит вашу конфиденциальность, это негативно скажется на вашей безопасности, так как такие устройства обычно имеют гораздо худшую аппаратную изоляцию и отстают в обновлениях безопасности. В сравнении с использованием изолированного внутреннего радио вашего устройства Pixel, это значительно упростит злоумышленнику получение контроля над специальным устройством, и если оно подключено к вашему Pixel через USB, это открывает огромную поверхность для атак на ваш телефон.

Некоторые из этих специализированных сотовых устройств позволяют подменять IMEI, то есть изменять аппаратный идентификатор на произвольное значение. Это позволит вам повторно использовать то же самое специализированное устройство и просто изменять значение IMEI вместе с новой SIM-картой для получения новой идентичности в сети. Однако стоит знать, что IMEI не является единственным аппаратно-специфическим идентификатором, который утечет из сотовых радиоприемников, и, более того, существуют способы создания «отпечатков» этих устройств, которые могут позволить повторно идентифицировать их даже с измененными идентификаторами. В худшем случае вы можете привлечь к себе много внимания, если подмена будет слишком очевидной.

Проект GrapheneOS не рекомендует использовать вторичное устройство для сотовой связи, но если вы действительно хотите это сделать, то лучше использовать другое устройство Pixel с установленным GrapheneOS. Обратите внимание, что если вы делитесь сотовым интернетом через Wi-Fi, возможно, кто-то поблизости отслеживает ваши перемещения, отслеживая сигналы вашей точки доступа Wi-Fi.

Что насчет режима самолета?

Режим самолета — это единственный способ полностью отключить возможности передачи, приема и отслеживания мобильной сети вашего устройства, и он работает должным образом на всех устройствах Pixel. Когда вы переводите устройство в режим самолета, Wi-Fi можно снова включить и использовать без повторной активации мобильной сети. Если вы планируете использовать свой Pixel только как устройство с Wi-Fi, вам следует подумать о том, чтобы убрать плитку быстрого доступа (переключатель режима самолета, который виден при проведении вниз по верхней панели состояния), чтобы случайно не включить его снова.

Вы должны помнить, что мобильная связь — это не единственный способ использования услуг оператора. Помните, что существуют звонки и сообщения через Wi-Fi. Чтобы предотвратить аутентификацию SIM-карты у оператора и использование его сетевых услуг через другие интернет-соединения, вам необходимо отключить саму SIM-карту.

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

Что насчет использования SIM-карты только для данных?

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

Что насчет использования VPN?

Использование VPN не влияет на звонки или текстовые сообщения, осуществляемые через оператора. Эти функции не будут проходить через VPN, даже если вы используете Wi-Fi-соединение вместо сотовой связи.

Что насчет режима экономии данных?

Включение переключателя режима экономии данных глобально (то есть во всех пользовательских профилях) остановит приложения от использования сотовых данных в фоновом режиме. Приложения, которые используют фоновые сервисы, то есть те приложения, которые поддерживают свою работу в foreground через постоянное уведомление, исключаются из этого ограничения. Использование мобильных данных также может быть ограничено для каждого приложения.

Что насчет отсутствия SIM-карты?

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

Что насчет экстренных уведомлений?

Экстренные уведомления отправляются через сотовую сеть на все подключенные телефоны, даже если в них нет SIM-карты. Обычно только режим полета предотвращает их получение. Поскольку GrapheneOS не подчиняется типичным нормативным требованиям, он предоставляет переключатели для отключения даже уведомлений «президентского» приоритета.

Защита от уязвимостей приложений

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

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

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

Скриншот «Защиты от эксплойтов приложений» в разделе «Настройки» » «Безопасность и конфиденциальность» » «Защита от эксплойтов». Здесь все настройки по умолчанию установлены на самые строгие значения.

Скриншот «Защиты от эксплойтов приложений» в разделе «Настройки» » «Безопасность и конфиденциальность» » «Защита от эксплойтов». Здесь все настройки по умолчанию установлены на самые строгие значения.
Скриншот Настройки » Безопасность и конфиденциальность » Больше безопасности и конфиденциальности. С отключенными «Показывать медиа на экране блокировки» и «Разрешить разрешение датчикам для приложений по умолчанию».

Скриншот Настройки » Безопасность и конфиденциальность » Больше безопасности и конфиденциальности. С отключенными «Показывать медиа на экране блокировки» и «Разрешить разрешение датчикам для приложений по умолчанию».

Разрешения

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

Еще одно разрешение, которое стандартный Android неявно предоставляет всем приложениям, – это доступ к сетевым функциям. Это включает в себя локальную сетевую связь устройства (localhost), которая в настоящее время является известным способом обхода изоляции пользовательских профилей и позволяет приложениям разных профилей взаимодействовать друг с другом. В GrapheneOS вам будет предложено решить, хотите ли вы предоставить это разрешение во время установки приложения. Когда разрешение на сеть не предоставлено приложению, GrapheneOS делает вид, что сеть недоступна, что обычно обрабатывается приложениями корректным образом.

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

Ограниченный доступ

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

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

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

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

Переключатели микрофона и камеры

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

Хотя может возникнуть искушение отключить доступ к этим функциям глобально и включать их только по мере необходимости, это может оказаться очень неудобным, когда вы быстро хотите сделать фотографию (например, с помощью двойного нажатия кнопки питания) или когда хотите ответить на звонок, пока телефон все еще заблокирован. В таких случаях вам сначала придется разблокировать телефон и включить соответствующий доступ, что может занять так много времени, что звонящий решит повесить трубку. Вместо этого вы могли бы оставить доступ к микрофону и камере включенным на уровне системы и ограничить эти разрешения для отдельных приложений: оставляя их включенными для приложения телефона и камеры, а для всех остальных устанавливая опцию «Спрашивать каждый раз».

Если вы уверены, что никогда не будете нуждаться в этих датчиках, вы даже можете приобрести один из модифицированных телефонов Pixel от Nitrokey, в которых аппаратные компоненты были физически удалены.

Системные обновления

Загрузка и установка обновлений системы GrapheneOS происходят автоматически и без заметных помех в фоновом режиме. Перезагрузка все же необходима для того, чтобы они вступили в силу, но этот процесс не несет риска благодаря автоматическому откату, если первая загрузка обновленной операционной системы завершается неудачно.

Автоматические перезагрузки после обновления возможны, но по умолчанию отключены, так как они могут произойти в середине телефонного разговора. Если вы хотите избежать загрузки обновлений через мобильные данные, вам следует изменить настройку «Разрешенные сети» на «Безлимитные» только. Некоторые пользователи сообщали, что обновления сильно разряжают батарею и вызывают нагрев устройства, что может быть особенно неудобно, когда вы не находитесь дома. Вы можете включить переключатель «Требуется зарядка устройства», чтобы избежать таких случаев.

Скриншот Настройки » Система » Обновления системы.

Скриншот Настройки » Система » Обновления системы.
Скриншот: Если вы действительно хотите, вы можете полностью отключить автоматические обновления системы в разделе «Настройки» » «Приложения» » «Все приложения», нажмите на 3 точки, чтобы «Показать системные» приложения, и, наконец, используйте функцию поиска, чтобы найти «updater». Выберите приложение System Updater и отключите его, чтобы ваше устройство не проверяло наличие новых обновлений системы.

Скриншот: Если вы действительно хотите, вы можете полностью отключить автоматические обновления системы в разделе «Настройки» » «Приложения» » «Все приложения», нажмите на 3 точки, чтобы «Показать системные» приложения, и, наконец, используйте функцию поиска, чтобы найти «updater». Выберите приложение System Updater и отключите его, чтобы ваше устройство не проверяло наличие новых обновлений системы.

Есть возможность полностью отключить автоматические обновления, отключив приложение «Системный обновлятор». Проект GrapheneOS настоятельно не рекомендует этого делать, так как вы не будете получать обновления для повышения конфиденциальности и безопасности, которые исправляют уязвимости или добавляют улучшения.

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

Проект GrapheneOS также утверждает, что действующее законодательство может нацеливаться только на отдельных пользователей и не может заставить внедрять злонамеренные обновления на все устройства GrapheneOS. Поскольку обновляющий механизм не предоставляет никакой уникально идентифицируемой информации о устройстве при запросе системных обновлений, GrapheneOS не сможет выполнить требование правительства отправить обновление с «задней дверью» конкретному пользователю. Тем не менее, сервер обновлений сможет видеть IP-адрес запрашивающего, который можно скрыть с помощью VPN или Tor.

Резервные копии

GrapheneOS поставляется с интегрированным Seedvault в разделе Настройки » Система » Резервное копирование в качестве решения для создания резервных копий или переноса данных с одного устройства на другое. Имейте в виду, что если вы используете вторичные профили пользователей, вам нужно будет настроить это в каждом профиле отдельно. Некоторые приложения, такие как Signal или Molly, используют тип шифрования своей базы данных, который можно резервировать и восстанавливать только через эти приложения. Если вы планируете использовать USB-накопитель для хранения резервных копий, распространенной практикой является первоначальное создание резервной копии во внутреннем хранилище устройства, а затем переноса ее на накопитель только после завершения процесса.

Существует также известная проблема, при которой резервное копирование пользовательских файлов из хранилища может не включать все ваши файлы, поэтому не стоит полагаться на Seedvault как на средство, которое включит все ваши важные файлы. Возможно, вам следует отдельно создать резервные копии ваших важных файлов, например, на ваш ноутбук с помощью USB-соединения (используйте USB для «Передачи файлов»). Но и в этом случае вам придется устанавливать соединение для каждого профиля отдельно. GrapheneOS надеется в будущем заменить Seedvault на более лучшее и надежное решение, хотя в настоящее время есть задачи, имеющие более высокий приоритет.

Вторичные профили пользователей

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

На свежем установленном GrapheneOS несколько пользователей по умолчанию отключены. Тем не менее, когда вы разблокируете свой телефон после загрузки, вы войдете в профиль «Владелец», то есть «Пользователь, который является владельцем устройства». Профиль Владелец не следует путать с чем-то вроде привилегированного «root»-пользователя в Linux. Хотя Владелец имеет больше административного контроля над устройством, чем другие пользователи, обычные приложения имеют такой же доступ, когда работают в профиле Владелец, как и в любом другом профиле пользователя.

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

Скриншот Настройки » Система » Пользователи.

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

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

Кросс-Профильные Уведомления

Как видно на скриншоте выше, стоит отметить, что вы действительно можете получать уведомления из другого профиля, который работает в фоновом режиме. Несмотря на то, что уведомление будет сообщать только о том, в каком профиле это произошло и какое приложение его вызвало, это все же добавление от GrapheneOS, которое значительно улучшает пользовательский опыт с вторичными пользовательскими профилями.

Примеры использования

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

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

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

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

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

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

Количество Пользовательских Профилей

GrapheneOS увеличивает лимит на количество вторичных пользовательских профилей с стандартных 4 до 32, при этом один из них всегда резервируется для гостевого пользователя. Однако возможность создавать так много пользовательских профилей не означает, что все они могут работать одновременно, так как это негативно скажется на производительности устройства. GrapheneOS масштабирует количество максимальных одновременно работающих пользователей в зависимости от объема оперативной памяти, установленной в устройстве.

Если у вас есть пользовательские профили для сценариев использования, где никогда не требуется, чтобы этот пользователь продолжал работать в фоновом режиме, вы можете отключить опцию «Разрешить работу в фоновом режиме» при редактировании этого пользователя через профиль владельца. Таким образом, вам не нужно будет явно завершать сессию пользователя, поскольку простое переключение на другого пользователя приведет к тому, что профиль будет приостановлен.

Скриншот: Нажмите на пользователя в разделе «Настройки» » «Система» » «Пользователи», чтобы изменить его данные.

Скриншот: Нажмите на пользователя в разделе «Настройки» » «Система» » «Пользователи», чтобы изменить его данные.
Скриншот: Пользователь-владелец может устанавливать свои приложения в профили других пользователей.

Скриншот: Пользователь-владелец может устанавливать свои приложения в профили других пользователей.

Установка приложений между профилями

Вас может удивить тот факт, что пользователи в разных профилях могут обновлять приложения друг друга, а также что пользователь-владелец может установить своё приложение в другой профиль. Разве мы не говорили, что файловые системы каждого профиля полностью изолированы? Да, это так, но не стоит думать, что каждый профиль работает на совершенно независимой операционной системе. На самом деле код приложений хранится не в каждом отдельном пользователе, а в основной системе, которая общая для всех них.

То, что владелец может устанавливать приложения в другие профили, при условии что они уже установлены у владельца, означает, что нам не нужно устанавливать магазины приложений в каждом профиле для получения необходимых приложений. Вместо этого мы можем использовать профиль владельца в качестве «Центра управления приложениями»: мы устанавливаем магазины приложений только в профиль владельца. Когда мы устанавливаем новые приложения, мы снимаем отметку с разрешения на доступ к сети и сразу помечаем их как отключенные. Затем мы открываем управление пользователями и устанавливаем только что установленные приложения в профиль, в котором мы действительно будем их использовать.

Недостатки

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

Как уже упоминалось, файловые системы профилей полностью изолированы, что означает, что нет нативного способа, например, поделиться мемом, который вы увидели в социальных сетях в одном профиле, через мессенджер, работающий в другом профиле. Типичные обходные пути включают использование облачной синхронизации файлов или мессенджера, установленного в обоих профилях, но это потребует подключения к Интернету и потенциально потратит ваш мобильный трафик. Вы можете настроить локальную синхронизацию файлов с помощью приложений, таких как Syncthing, или с использованием FTP-сервера и клиентского приложения, но это обычно неудобно в настройке. Если вы уже используете Linux с рабочим столом KDE, вы можете использовать KDE Connect для обмена файлами между всеми вашими устройствами и профилями. Если нет, то приложение Inter Profile Sharing, которое я разработал из-за разочарования по этому поводу, надеюсь, станет вашим лучшим другом. Если вы действительно хотите избежать установки каких-либо приложений для этого, лучшим вариантом будет получение USB-накопителя с адаптером USB-C.

Если вы устанавливаете приложения в вторичных профилях, которые требуют SMS-подтверждения, вам может потребоваться временно включить функцию «Включить телефонные звонки и SMS» для этого пользователя.

Частное пространство

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

Преимущество использования частного пространства по сравнению со вторичным профилем пользователя заключается в том, что пользовательский интерфейс, например, в уведомлениях и настройках, будет «объединен», пока пространство разблокировано. Это означает, что если есть уведомление из частного пространства, оно будет полностью отображаться в профиле владельца (в отличие от обычных вторичных пользователей, где будет показано только имя пользователя и имя приложения). Хотя это делает его немного менее изолированным, чем выделенный пользователь, частные пространства могут быть гораздо более удобными.

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

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

Рабочий профиль

Рабочие профили похожи на частные пространства с точки зрения пользовательского опыта. Они изначально были разработаны для развертывания BYOD (Bring Your Own Device) в корпорациях, поэтому вам нужно отдельное «приложение для управления устройствами» для их создания. Это приложение, и через него корпорация, к которой оно принадлежит, имеет контроль и право собственности на данные в рабочем профиле. Однако существуют локальные приложения для управления, такие как Shelter, которые позволяют создавать и управлять рабочим профилем без внешнего владельца. В любом случае вам всегда придется доверять стороннему приложению для использования рабочих профилей, если вы не программируете свое собственное.

GrapheneOS называет рабочие профили, созданные такими приложениями, как Shelter, «бедным вариантом частного пространства» и настоятельно рекомендует использовать настоящие частные пространства вместо этого. Как и частные пространства, вы можете иметь только один рабочий профиль, и он должен находиться в профиле владельца. Тем не менее, абсолютно возможно использовать как рабочий профиль, так и частное пространство одновременно.

Частные пространства обеспечивают лучшую изоляцию, правильное шифрование и лучшую интеграцию пользовательского интерфейса с профилем владельца. Приложения для управления рабочими профилями могут обеспечивать значительное взаимодействие между пользователем владельцем и вложенным рабочим профилем. Например, рабочие профили не блокируют взаимодействие приложений между профилями, что может повысить удобство, но отрицательно сказывается на конфиденциальности и безопасности.

VPN

Для использования VPN общая лучшая практика заключается в том, что каждое из ваших устройств должно иметь отдельное VPN-соединение, которое будет получать отдельный выходной IP-адрес. Из-за этого все профили (включая рабочие профили и частные пространства) имеют свою собственную конфигурацию VPN по умолчанию. Это предотвращает связывание их вместе третьими сторонами на основе одного выходного IP-адреса.

Вы можете предотвратить прямой доступ профиля к интернет-соединению, включив параметры «Всегда включенный VPN» и «Блокировать соединения без VPN» по умолчанию. GrapheneOS внес множество улучшений в Android, чтобы предотвратить утечки соединений, то есть обход VPN-соединения. Хотя все еще существуют некоторые известные случаи утечек VPN, исправление этих проблем является одним из главных приоритетов проекта GrapheneOS. Эти параметры даже можно использовать для создания вторичного профиля пользователя, который вообще не имеет доступа к интернету, если у вас есть такая необходимость.

На настоящий момент проект GrapheneOS рекомендует использовать только официальное приложение WireGuard и официальное приложение Mullvad. Однако Mullvad обычно предпочтителен, так как оно хорошо работает с включенными функциями защиты от эксплойтов Graphene. Чтобы избежать отпечатков и отслеживания, GrapheneOS рекомендует использовать стандартные DNS-серверы, предоставленные сетью, чтобы сливаться с другими пользователями.

Помните, что хотя у каждого профиля есть своя собственная конфигурация VPN, основная сеть является общей. Из-за этого в настоящее время возможно, чтобы приложения с разрешением на сеть общались между профилями через localhost, что я использую для работы приложения Inter Profile Sharing. Но это, вероятно, изменится в будущем, так как проект GrapheneOS планирует ввести отдельные сетевые пространства имен для каждого профиля.

Приложения

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

Вы можете заметить, что среди этих нескольких приложений GrapheneOS действительно включает в себя собственный «Магазин приложений». Обратите внимание, что этот репозиторий приложений в основном предназначен для распространения собственных приложений первой стороны от Graphene и защищенных версий внешне разработанных приложений с открытым исходным кодом. Список доступных приложений будет целенаправленно поддерживаться минимальным, в то время как сторонние приложения должны стремиться быть включенными в Accrescent — официально одобренный магазин приложений GrapheneOS, который можно установить через минимальный магазин Graphene.

Упакованные приложения

Из немногих приложений, которые поставляются с GrapheneOS, около половины унаследованы от проекта Android Open Source Project с незначительными изменениями и очень примитивны с точки зрения функциональности и пользовательского опыта. Многие приложения AOSP были отличным выбором более 10 лет назад, когда пользовательский интерфейс Android был более примитивным, а ожидания были значительно ниже. Со временем Google заменил их на более современные версии для своей стандартной ОС, но оставил без внимания версии с открытым исходным кодом. GrapheneOS планирует переработать или заменить их, хотя часто возникают проблемы с лицензированием возможных альтернатив.

Если вы предпочитаете версии приложений Google, такие как Камера, Галерея и Клавиатура, вы можете без проблем вернуться к ним, не включая их инвазивную статистику использования и не загружая свои фотографии на их сервис. Некоторые из стандартных приложений Android от Google, такие как редактор скриншотов (Markup) и термометр (для устройств Pixel с соответствующим сенсором), дублируются в Магазине приложений Graphene, так как они недоступны в Play Store.

Камера

Приложение Камера, которое поставляется с GrapheneOS, уже было модернизировано, оно ориентировано на конфиденциальность и безопасность и, безусловно, лучше, чем любые из альтернатив с открытым исходным кодом и даже большинство платных приложений. Оно включает в себя режимы для захвата изображений, видео и сканирования QR-кодов/штрих-кодов. В нем есть базовые функции HDR+, ночной режим, мульти-камера зум, электронная стабилизация изображения и т.д. Качество фотографий не теряется при использовании GrapheneOS вместо стандартного Android.

Тем не менее, оно не имеет полного набора функций, предлагаемых стандартным приложением «Pixel Camera». Камера Pixel, ранее известная как Google Camera, может в полной мере использовать все доступные камеры и аппаратное обеспечение для обработки изображений на GrapheneOS. Однако для уменьшения поверхности атаки прямой доступ к низкоуровневому оборудованию приложениями Google контролируется дополнительным переключателем. Переключатель «Специальный доступ к аппаратным ускорителям для приложений Google» включен по умолчанию, но не предоставляет этим приложениям дополнительных прав доступа к данным.

Галерея

GrapheneOS планирует полностью заменить текущее приложение Галерея AOSP, но, к сожалению, в настоящее время нет доступных вариантов с приемлемым лицензированием и подходящими инструментами для редактирования изображений. Если вы ищете хорошую альтернативу с открытым исходным кодом, Graphene упоминает IacobIonut01/Gallery и Aves.

Вы также можете установить приложение «Google Photos», которое вы получили бы с стандартным Android, через Google Play Store. Оно сможет использовать большинство функций ИИ, а также аппаратное ускорение.

Клавиатура

Клавиатура по умолчанию в Graphene по сути является Gboard от Google 2014 года. Ранее это был проект с открытым исходным кодом с несколькими компонентами с закрытым исходным кодом, но он в конечном итоге стал полностью закрытым и был переименован в Gboard. В ней отсутствуют некоторые функции, такие как перемещение курсора с помощью сдвига на пробеле, режим одной руки, лучшее обращение с эмодзи и, особенно, ввод с помощью свайпов.

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

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

Браузер Vanadium

GrapheneOS включает в себя свой подсектор Vanadium, который основан на Chromium с улучшениями в области конфиденциальности и безопасности. Он используется как браузер по умолчанию для операционной системы, так и другими приложениями, которые нуждаются в отображении веб-контента. Проект GrapheneOS рекомендует использовать этот браузер в его исходном виде; дополнительные расширения браузера или изменения, скорее всего, сделают вас более заметным, что упростит отслеживание. Чтобы предотвратить доступ веб-сайтов к стандартным сенсорам, вы можете отключить разрешение «Сенсоры» для приложения браузера в целом.

Совместимость приложений 

В настоящее время существует лишь небольшая часть приложений для Android, которые несовместимы с GrapheneOS. Это в основном приложения, использующие API Play Integrity, который требует, чтобы операционная система была официально сертифицирована Google. Это в основном затрагивает приложения финансового характера, конкурентные игры с геолокацией, такие как Ingress, а также некоторые странные исключения, такие как приложение McDonald’s, Authy и приложение Uber для водителей. Внедряя это, эти приложения решили запретить использование альтернативных и модифицированных операционных систем. Хотя это имеет смысл для игр как базовая система защиты от читов, она далеко не так эффективна, как это утверждает Google.

Это также препятствует NFC-платежам, проводимым через Google Pay. Простым способом обойти это ограничение является использование умных часов Pixel или Galaxy, сопряженных с GrapheneOS. К счастью, существуют и другие сервисы, такие как те, которые предоставляют европейские банки, у которых есть собственная система бесконтактной оплаты, работающая на GrapheneOS. Для США есть надежда, что Curve Pay будет доступен в ближайшее время.

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

Зависимость от служб Play

Еще одним недостатком совместимости приложений с GrapheneOS является то, что некоторые приложения зависят от служб Google Play, что чаще всего касается мессенджеров и социальных сетей. Причина этого заключается в том, что они полагаются на получение событий для уведомлений через серверы Google с помощью Firebase Cloud Messaging (FCM). Некоторые из этих приложений могут вернуться к своей собственной реализации пуш-уведомлений или частого опроса, но это обычно требует, чтобы приложение работало с фоновым сервисом. Приложение также может требовать предоставления разрешения на «Неограниченное» фоновое использование, в противном случае оно будет прерываться автоматической оптимизацией батареи, что приведет к задержке уведомлений.

Примером этого является Signal, который вернется к своей собственной механике пуш-уведомлений, когда FCM недоступен. Однако были сообщения о том, что это работает плохо и неэффективно (разряжая батарею). Вместо этого часто рекомендуется использовать альтернативный клиент Molly без служб Play.

Для приложений, которые имеют жесткую зависимость от служб Play, у вас есть возможность установить и использовать официальные службы Google Play, ограниченные стандартным песочницей приложений. Благодаря слою совместимости Google Play не получит абсолютно никаких специальных прав или привилегий на GrapheneOS. Он обеспечивает почти полную совместимость, за исключением небольшой части функциональности, которая еще не была портирована или не может быть предоставлена из-за того, что она по своей сути привилегирована. Магазин Play и его услуги полностью доступны, включая покупки внутри приложений и проверки лицензий на приложения/контент. Он может устанавливать, обновлять и удалять приложения, как обычно, при условии, что ему предоставлены разрешения как источнику приложения и согласие на каждое действие.

Чтобы воспользоваться слоем совместимости, установите «Службы Google Play» из магазина приложений GrapheneOS. Это также установит магазин Play, который является зависимостью служб Play (не отключайте приложение магазина, иначе службы тоже перестанут работать). Хотя использование магазина Play требует входа в систему с учетной записью Google, входить в систему не обязательно, если вы устанавливаете службы Play только по причинам совместимости приложений. Также обратите внимание, что некоторые приложения, включая Signal, необходимо установить после установки песочницы Google Play, чтобы правильно использовать их.

После установки служб Play вы получите уведомление «Отсутствует необязательное разрешение» от слоя совместимости. Нажатие на него предложит вам разрешить службам Google Play всегда работать в фоновом режиме, что поддержит соединение с сервером FCM Google для надежных уведомлений, но также снизит время работы от батареи. Согласие на это установит фоновое использование на «Неограниченное». Оставление на «Оптимизировано» сильно ограничит фоновое использование в зависимости от того, насколько оно используется, а запретит его предотвратит фоновое использование почти полностью. Сделайте свой выбор в зависимости от того, насколько важна для вас своевременность пуш-уведомлений через FCM.

С точки зрения безопасности нет большой разницы в том, в каком профиле вы устанавливаете службы Play. Если вы надеетесь избежать Google как можно больше, лучше установить их в профиле, который вы не планируете использовать в качестве основного. Например, если вы планируете использовать устройство только с одним профилем, лучше установить службы Play в частное пространство профиля владельца.

Я рекомендую установить службы Play в профиле владельца с отключенными фоновыми службами, но аутентифицированными с помощью учетной записи Google (возможно создать анонимно). Профиль владельца будет служить только для загрузки и установки приложений (без разрешения на сеть, и приложения сразу отключаются после загрузки), которые затем могут быть установлены в другие профили через интерфейс управления пользователями. Таким образом, вы можете создать вторичный пользовательский профиль, в котором установлены службы Play с «Неограниченным» фоновым использованием, но без аутентификации к конкретной учетной записи Google. В этот профиль вы можете установить мессенджеры и приложения социальных сетей, которые требуют FCM для надежных уведомлений.

Android Auto

Если вы ранее подключали свой Android телефон к автомобилю, вам, вероятно, знаком Android Auto. Изначально для его работы требовался привилегированный доступ, но совместимый с песочницей слой Google Play от Graphene позволяет ему функционировать с уменьшенным уровнем привилегий. Вы можете установить и использовать официальные версии Android Auto, но их необходимо устанавливать через магазин приложений GrapheneOS. С другой стороны, для того чтобы такие приложения, как Waze, были доступны через Android Auto, их нужно устанавливать из официального магазина Google Play.

После установки вам необходимо открыть Настройки » Приложения » Песочница Google Play » Android Auto и как минимум включить «Разрешить разрешения для проводного Android Auto». Если это не помогает, вам может понадобиться предоставить ему разрешения для беспроводной связи. Дополнительные разрешения для перенаправления аудио, телефонных звонков и уведомлений на Android Auto могут быть предоставлены по вашему усмотрению. Обратите внимание, что в настоящее время Android Auto не функционирует в рамках приватного пространства или рабочего профиля.

Obtainium и App Verifier

В Android файлы пакетов, загружаемые для установки или обновления приложения, криптографически подписаны. После установки приложения подписывающая сторона пакета установки «закрепляется» таким образом, что все будущие пакеты, пытающиеся его обновить, должны иметь подпись того же подписанта. Этот принцип называется Доверие при первом использовании (TOFU) и он обеспечивает то, что будущие обновления приложения не могут поступать из злонамеренных источников.

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

Obtainium позволяет вам получать Android приложения и поддерживать их в актуальном состоянии прямо из источника — то есть, прямо с их страницы релизов на GitHub. Сочетая его с AppVerifier, вы все равно можете убедиться, что файл пакета, который вы собираетесь установить, действительно поступает от настоящего разработчика приложения. Это делает управление вашими приложениями более децентрализованным, не жертвуя важной функцией безопасности, которую предлагают магазины приложений. Хотя проект GrapheneOS утверждает, что самым децентрализованным решением будет замена Obtainium на самообновляющиеся приложения.

Скриншот: В Obtainium мы можем искать пакеты приложений из различных источников, таких как GitHub и GitLab. После их загрузки Obtainium предложит нам поделиться пакетом с AppVerifier, прежде чем продолжить фактическую установку. Обратите внимание, что перед установкой самого Obtainium вы можете сначала загрузить его пакет и проверить его с помощью AppVerifier, который вы можете получить от Accrescent.

Скриншот: В Obtainium мы можем искать пакеты приложений из различных источников, таких как GitHub и GitLab. После их загрузки Obtainium предложит нам поделиться пакетом с AppVerifier, прежде чем продолжить фактическую установку. Обратите внимание, что перед установкой самого Obtainium вы можете сначала загрузить его пакет и проверить его с помощью AppVerifier, который вы можете получить от Accrescent.
Скриншот: Возможно, ключ подписи еще не добавлен во внутреннюю базу данных AppVerifier. В этом случае вам следует поискать его на странице проекта и скопировать в буфер обмена. Получив его, вернитесь в AppVerifier, чтобы проверить, совпадает ли подписант/сертификат со страницы с тем, с помощью чего был подписан проект.

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

Accrescent

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

Хотя надежда заключается в том, что Accrescent станет одним из лучших способов получения приложений на GrapheneOS в будущем, он все еще испытывает нехватку финансирования и участников, чтобы значительно расшириться. Проект GrapheneOS активно поддерживает это в стремлении заменить F-Droid, который они многократно критиковали за проблемную позицию в области безопасности.

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

F-Droid

F-Droid хорошо известен как эксклюзивный репозиторий для открытых приложений Android. Проект GrapheneOS выразил очень жесткую критику в адрес F-Droid и не рекомендует его как безопасный источник для сторонних приложений. Основная причина заключается в том, что F-Droid собирает большинство приложений непосредственно из исходного кода на «сомненной, устаревшей инфраструктуре», а полученные пакеты затем криптографически подписываются ими, что вызывает опасения по поводу возможного массового компрометации пользователей F-Droid в будущем.

Преимуществом подписанных разработчиком пакетов приложений является то, что для создания вредоносного пакета с действительной подписью злоумышленнику необходимо скомпрометировать ключ подписи. Это, вероятно, труднее осуществить, чем внести вредоносные изменения в исходный код на таких платформах, как GitHub, которые затем использует F-Droid для слепой сборки подписанного пакета. Проект GrapheneOS утверждает, что это значительно увеличивает риск атак на цепочку поставок.

Еще одна проблема возникает из-за того, что F-Droid самостоятельно подписывает сборки приложений, не обеспечивая уникальный идентификатор приложения для их варианта сборки, отличного от подписанного разработчиками. Поскольку принцип доверия при первом использовании требует, чтобы подписанты приложений с одинаковым идентификатором совпадали, это часто вызывает путаницу у пользователей, которые пытаются переустановить приложение в другом профиле или из другого источника. Только несколько приложений, использующих функцию воспроизводимой сборки F-Droid, исключены из этой проблемы. Для приложений, настроенных на использование воспроизводимых сборок, F-Droid отбрасывает их самособранный пакет после проверки того, что он соответствует версии, подписанной разработчиком. Но в данный момент даже невозможно легко определить, какие приложения на самом деле используют эту функцию.

Хотя F-Droid попытался обеспечить безопасность первоначальных установок через подпись метаданных, их подход оказался довольно несовершенным. Существуют и другие проблемы, на которые указывает проект GrapheneOS в дискуссиях по поводу F-Droid, хотя не все из них являются техническими и поэтому здесь опущены.

Play Store и Aurora Store

На данный момент официальное приложение Google Play Store все еще является самым безопасным способом установки закрытых приложений, особенно по сравнению с использованием зеркальных сайтов, таких как APKPure, которые в основном содержат копии всех пакетов приложений из Play Store и часто используются для обхода региональных ограничений. Повторим, что приложения Google Play Store и Services рассматриваются как обычные приложения без каких-либо специальных привилегий на GrapheneOS, и решать, хотите ли вы отделить их в отдельный профиль пользователя, зависит от вас.

Aurora Store является альтернативным клиентом для репозитория приложений Google Store. Он позволяет вам избежать установки официального приложения Play Store и предлагает использовать анонимную учетную запись Google, которую вы делите с другими пользователями Aurora. Проект GrapheneOS не рекомендует использовать Aurora из-за его более слабой безопасности и некоторых приложений, которые могут быть затронуты в качестве источника приложения Aurora. Обратите внимание, что вы всегда можете создать неидентифицируемую учетную запись с помощью временного номера телефона в официальном Play Store, вместо того чтобы использовать довольно ненадежную функцию анонимной учетной записи Aurora.

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

Проблемы и их решение

Проблемы с геолокацией

Определение вашего местоположения — это еще одна услуга, изначально предоставляемая в рамках сервисов Google Play. Вместо этого GrapheneOS по умолчанию перенаправляет запросы на определение местоположения в операционную систему, которая использует только спутниковую геолокацию (GNSS) и, следовательно, требует наличия приема спутникового сигнала. Из-за того, что это может быть недоступно или ненадежно в ситуациях, когда небо закрыто, например, бетонным потолком, было много жалоб на то, что приложения, использующие геолокацию, не работают должным образом на GrapheneOS.

Если у вас есть мобильный оператор и подключение к Интернету, устройство должно быть в состоянии использовать вспомогательную спутниковую геолокацию (A-GNSS), запрашивая информацию о ближайших вышках сотовой связи (SUPL) и о текущих орбитах и состоянии спутников (PSDS). Это значительно ускоряет процесс определения вашего местоположения. По умолчанию GrapheneOS использует собственные прокси-серверы проекта, чтобы предотвратить связывание ваших запросов SUPL/PSDS с вашим IP-адресом.

Вы можете дополнительно включить сканирование Wi-Fi и Bluetooth в разделе Настройки » Местоположение » Службы геолокации. Это позволит приложениям и службам с разрешением «Близлежащие устройства» сканировать ближайшие сети Wi-Fi и устройства Bluetooth, даже если Wi-Fi и Bluetooth отключены, что потенциально улучшит функции, основанные на геолокации. Эта информация обычно отправляется на серверы Google через сервисы Play для более точного определения местоположения, даже внутри зданий. Проект GrapheneOS находится в процессе создания собственной реализации этой функции, вероятно, сначала в качестве прокси-сервера для серверов Apple, а затем в виде собственной базы данных.

Если у вас установлены песочница сервисов Play и вы хотите использовать сетевую службу определения местоположения Google для улучшения оценки местоположения, сначала вам нужно отключить переключатель «Перенаправить запросы на определение местоположения в ОС» в разделе Настройки » Приложения » Песочница Google Play. Затем вам необходимо изменить разрешение на местоположение для сервисов Play, установив его на «Разрешить всегда», а также «Использовать точное местоположение». Чтобы он мог использовать сетевое сканирование, вам также нужно предоставить ему разрешение на «Близлежащие устройства» (вышеупомянутые переключатели для сканирования Wi-Fi и Bluetooth должны быть уже включены). Наконец, вам снова нужно перейти в Настройки » Приложения » Песочница Google Play и нажать на «Точность определения местоположения Google» и включить переключатель «Улучшить точность определения местоположения».

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

Сбои/неработающие приложения

Мы уже упоминали, что не удивительно, что приложения на GrapheneOS могут вызывать сбои или отказываться работать должным образом, но это почти всегда можно исправить. Прежде всего, вы должны попытаться выполнить стандартные действия, такие как очистка кэша приложения, принудительная остановка и перезапуск приложения, перезагрузка телефона или переустановка приложения. Типичные решения, специфичные для GrapheneOS, включают отключение некоторых мер защиты от эксплуатации, переустановку приложения вне защищенной зоны (владелец или другой вторичный профиль), переустановку приложения в профиле, который предоставляет песочницу для сервисов Google Play и т. д. Иногда приложения начинают сбой из-за того, что приложение (например, магазин приложений), из которого они были установлены, больше не включено или не установлено, или они отказываются работать должным образом, потому что были установлены не из ожидаемого источника.

Приложение отказывается устанавливаться

Типичные причины этого также были объяснены выше: вы пытаетесь установить приложение, которое уже доступно с более высокой версией или из другого источника в другом пользовательском профиле.

Получение поддержки

У GrapheneOS очень активное сообщество, и оно отзывчиво в социальных сетях. Наиболее удобными местами для поиска существующих решений вашей проблемы, вероятно, являются форум на discuss.grapheneos.org и их сервер Discord. У GrapheneOS также есть сообщества в Twitter/X, Telegram и Matrix.


ссылка на оригинал статьи https://habr.com/ru/articles/895396/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *