Возможно ли защитить личные данные от приложений, изолировав/заключив их в тюрьму?

Я хочу, чтобы мой список контактов, журнал вызовов, фотографии и т. д. оставались конфиденциальными. Xprivacy/Xposed казался жизнеспособным путем, но на сегодняшний день (июнь 2017 г.) он кажется тупиковым, и в ближайшее время нет никаких признаков выпуска Nougat. Таким образом, подделка результатов вызова API невозможна для Android Nougat.

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

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

  1. Какую изоляцию приносит создание дополнительных пользователей?
  2. Существуют ли альтернативные способы изолирования приложений в песочнице?
@mattm Я не очень разбираюсь в этом. Я знаю, что, по крайней мере, в прошлом отзыв разрешений приводил к сбоям в работе приложения. 1. Что изменилось? 2. Уважает ли Android, если я также ограничиваю GApps? 3. Является ли новая модель обязательной для существующих приложений или они могут полагаться на устаревший уровень?

Ответы (1)

Начиная с Marshmallow (Android 6), ОС Android может ограничивать отдельные разрешения (которые могут быть или не быть достаточными для вас) для приложения. В предыдущих версиях Android не было возможности ограничить одно разрешение; если вам не нравилось, что приложение что-то использовало, вам просто нужно было удалить приложение.

Вы можете проверить и изменить разрешения в разделе «Настройки» -> «Приложения» -> [Конкретное имя приложения] -> «Разрешения». Вы можете увидеть таблицу опасных разрешений , которые, вероятно, вас беспокоят. Эти категории разрешений охватывают перечисленные вами примеры (список контактов -> контакты, журнал вызовов -> телефон, фотографии -> хранилище). Иззи указал, что не существует отдельного элемента управления для чтения и записи, что может быть проблемой, если вашему приложению требуется запись в хранилище, но оно не должно иметь возможность просматривать фотографии.

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

Работает ли приложение с отключенным разрешением, зависит от того, как оно было написано. Хорошо написанные приложения будут продолжать функционировать каким-то образом. Приложения, ориентированные на версии Android до Marshmallow, или просто плохо написанные, могут просто вылететь.

Вы можете установить разрешения для Google Apps. Например, вы можете:

  1. запретите приложению «Фотографии» чтение хранилища, что означает, что оно не сможет отображать ваши фотографии.
  2. запретить Gmail читать ваши контакты

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

Спасибо, я думал, что отзыв разрешений вообще не является жизнеспособным подходом. Тем не менее, некоторым приложениям требуется доступ к списку контактов. Я хотел бы представить некоторые приложения с пустыми списками контактов. Какие варианты у меня есть? Полезны ли несколько профилей/пользователей/аккаунтов?
Это не адекватная защита. Во-первых, он далеко не достаточно детализирован (например, он не может выбрать между «чтением календаря» и «записью календаря»), а во-вторых, он далеко не охватывает все разрешения (попробуйте, например, ограничить доступ в Интернет или доступ к идентификаторам устройств). . Для меня встроенная обработка разрешений — не более чем попытка «белой стирки». К сожалению, в настоящее время не существует реального решения для Nougat и выше.
@Izzy Вы указали на важные недостатки, но мне не ясно, нуждается ли этот вопрос в такой детализации.
@mattm кажется, что да, если OP хочет полностью защитить личные данные от приложений, особенно от системных приложений, таких как GApps, на что было особо указано в одном комментарии. Насколько я знаю, это невозможно со встроенными в Android AppOps.
@Izzy Правильно ли я понимаю, что создание нескольких пользователей на устройстве не поможет? Например. сможет ли WhatsApp (установленный пользователем 1) прочитать контакты пользователя 2? Если да, то действительно ли нет решения для этого ада конфиденциальности? Я имею в виду, кто думает, что модель Android со 100%-ной неразборчивостью (делитесь со всеми всем о владельце) подойдет для всех? Мне трудно поверить, что это никого не касается.
@Exceptione, это не должно беспокоить Google, которому просто нужны ваши данные :) Но нет: WA на user1 не должен иметь доступа к контактам на user2. Но приложения на u1 и u2 по-прежнему будут видеть одни и те же идентификаторы устройств, поэтому WA/Facebook легко играли, комбинируя оба списка контактов. То же самое для других приложений.