Получение почти полного контроля над своими данными на устройстве Android без Root-прав

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

Конфиденциальность на Android.

В связи с тем что умные устройства в виде телефонов, компьютеров и планшетов используются практически ежедневно, стало очень удобно использовать этот инструмент для сбора данных и в конечном итоге получения с них прибыли. Если ещё 10 — 20 лет назад об этом мало кто задумывался, то сейчас с развитием технологий это встречается повсеместно. Если говорить конкретно про Android, то ранее немало пользователей получали Root-права, что позволяло получить полный контроль над устройством. Сейчас по многим причинам таких людей становится меньше, поэтому вопрос управления устройством без прав корневого доступа становится актуальным особенно с точки зрения конфиденциальности.

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

Немного о конфиденциальности: раньше и сейчас

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

В 2013 году информация, что корпорация Google занялась для Android 4.3 разработкой встроенного приложения для управления разрешениями установленных программ, которое позволяло ограничить и увидеть использование любого разрешения. Тем не менее, это приложение было удалено в последующей версии Android 4.4.2. Ниже можно посмотреть снимки экрана App ops:


Приложение App Ops, доступное на Android 4.3.
Приложение App Ops, доступное на Android 4.3.

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

Сравнение настроек управления разрешениями на Android 7.1.1 (слева) и Android 10 (справа). Сравнение настроек управления разрешениями на Android 7.1.1 (слева) и Android 10 (справа).

Сравнение настроек управления разрешениями на Android 7.1.1 (слева) и Android 10 (справа).

Думаю, что комментировать это не нужно. И напоследок стоит привести опубликованную на Forbes схему сравнения данных средств обмена сообщениями, которые привязаны к пользователю и, соответственно, обрабатываются компаниями.

Сравнение четырёх популярных «мессенджеров» — Signal, iMessage, WhatsApp и Facebook Messenger.

Сравнение четырёх популярных «мессенджеров» — Signal, iMessage, WhatsApp и Facebook Messenger.

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

1. «Удаление» лишних приложений

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


Удалённые с помощью ADB приложения на Android.

Для того чтобы «удалить» ненужное вам системное приложение на Android, нам понадобится компьютер, смартфон или планшет, USB-провод и скачанный и распакованный пакет ADB (скачать Android Debug Bridge можно с официального ). На устройстве включите режим разработчика в настройках (если этого меню нет, семь раз нажмите на пункт «Номер сборки» в меню «Сведения о ПО») и разрешите отладку по USB. Подключите устройство к ПК, запустите командную строку в папке с извлечённым adb, запустите команду adb devices, разрешите подключение в появившемся окне на телефоне и проверьте, чтобы в выходе команды появилась строка <номер> device.

Чтобы удалить приложение для пользователя (то есть для вас), необходимо выполнить следующее. Введите команду adb shell. Далее можно поступать разными способами. Во-первых, можно вывести весь список установленных пакетов посредством команды pm list packages. Однако в этом случае, как мне кажется, довольно сложно разобраться, что к чему относится. Поэтому я бы посоветовал установить на Android-устройство приложение с возможностью одновременного просмотра названия приложения и имени его пакета, например, . Таким образом сразу можно понять, какие приложения точно не нужны. После определения ненужных вам программ в командную строку необходимо ввести команду pm uninstall --user 0 <имя пакета>, например, pm uninstall --user 0 com.facebook.system. Так нужно сделать для каждого лишнего для вас приложения. Если появляется ошибка, скорее всего, вы допустили опечатку при вводе команды, к примеру, в названии пакета.

Стоит отметить, что в Сети есть множество списков приложений, которые можно без сомнений удалять. Однако хочу предупредить: что для одного является лишним, для другого оказывается важным. Поэтому если вы не знаете, зачем нужно то или иное приложение, не спешите его удалять: перед этим обязательно выясните, какие функции оно выполняет. Если вдруг вы удалили что-то лишнее, используйте следующую команду для переустановки приложения: adb shell cmd package install-existing <имя пакета>. Важно! После завершения работы с adb не забудьте выключить отладку по USB на устройстве, так как включённый пункт представляет уязвимость для ваших данных на телефоне.

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

2. Использование песочницы (на примере Island и других)

Зачем вообще нужны песочницы? Песочница — это изолированная от основной системы среда для безопасного исполнения программ. Если говорить об Island, то этот инструмент позволяет скопировать (сделать клон) и изолировать выбранные приложения, запретив им доступ к данным за пределами песочницы (например, к контактам, последним вызовам и т.д.). Данные, привязанные к устройству, (IMEI и др.) остаются видимыми для программ в Island. Помимо блокирования доступа к личным данным, песочница позволяет заморозить программы, работающие в фоне (их можно переместить в Island и удалить из основной системы), использовать две учётные записи и архивировать редко используемые приложения.

Island абсолютно бесплатен, и в него встроен Greenify; скачать приложение-песочницу можно из магазина приложений Google Play по . Работа Island основана на встроенной в ОС Android 5.0+ функции создания рабочего профиля. Более того, функциональность приложения можно распространить и на основную систему, однако процесс установки там отличается и требует определённых навыков (инструкцию можно найти на официальном приложения).

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


Приложение Island. Приложение Island.

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

Работа песочницы Island. Работа песочницы Island.

Island — приложение, использующее рабочий профиль. Однако методы создания подобных песочниц этим не ограничиваются. Если вы хотите, чтобы приложение работало только тогда, когда вы им пользуетесь, и не обменивалось никакими данными в фоне, то отличным выбором будет IceBox ( на скачивание). Эта программа позволяет полностью заморозить приложение, размораживая его только во время использования. Установка IceBox требует некоторых действий (инструкция с разработчика). Сначала необходимо удалить все учётные записи с устройства Android и затем в командной строке на компьютере ввести следующий текст: adb shell dpm set-device-owner com.catchingnow.icebox/.receiver.DPMReceiver. После этого требуется перезагрузить смартфон. Готово!

3. Управление разрешениями приложений (на примере AppOps)

И напоследок — управление разрешениями приложений. Если вы считаете, что приложению «Заметки» не нужно определение вашего точного местоположения, то зачем предоставлять ему такую возможность? Также описанный ниже способ позволяет изменить «неизменяемые» разрешения, например, для тех же Сервисов Google Play. App Ops позволяет управлять разрешениями установленных программ (в том числе системных) в одно касание.

Прежде всего необходимо скачать дополнительную программу, необходимую для работы App Ops, под названием Shizuku ( на скачивание). После его установки потребуется подключить устройство к ПК и при помощи ADB ввести команды adb shell и sh /sdcard/Android/data/moe.shizuku.privileged.api/files/start.sh. Важное примечание: эту команду необходимо будет вводить каждый раз, когда ваше устройство перезагружается!


Запущенное приложение Shizuku.

Наконец, можно скачать App Ops ( на Google Play Store). После запуска у вас появится список приложений для основного профиля (если у вас уже установлен Island, то разрешения программ в песочнице будут находиться в отдельной вкладке и их тоже нужно будет поменять в отдельном порядке). Нажав на приложение, можно увидеть все разрешения, необходимые для его работы. Изменить их можно, нажав на соответствующий пункт. Стоит отметить, что если приложение запрещает изменение какого-либо разрешения (в основном, с «Разрешить» на «Блокировать»), то можно выбрать пункт «Игнорировать». В таком случае программе разрешение будет дано, но на самом деле в ответ на соответствующий запрос она не получит никакой информации.

Работа приложения App Ops. Работа приложения App Ops. Работа приложения App Ops.

Опять же, следует очень внимательно переключать настройки, особенно работая с системными приложениями. Некоторые системные функции могут перестать работать при неправильной настройке (например, поиск сетей Wi-Fi), что, впрочем, подтверждает эффективность App Ops. Если что-то стало нерабочим, можно просто использовать функцию восстановления, которая также присутствует в приложении.

Ещё одно приложение с похожей функциональностью, объединяющее в себе Greenify и App Ops, называется Brevent. Оно позволяет принудительно останавливать программы и изменять их разрешения. К сожалению, также как и Shizuku, Brevent необходимо перезапускать каждый раз после перезагрузки устройства или изменения настроек USB. Это можно сделать (что потребуется и при первом запуске) с помощью команды ADB sh /data/data/me.piebridge.brevent/brevent.sh. Тем не менее, приложение к тому же позволяет увеличить время работы аккумулятора, что не делает этот процесс чем-то совсем невыносимым. В качестве бонуса в Brevent можно выполнять команды adb shell без необходимости использования компьютера.

В заключение

Данная статья не покрывает самых простых методов обеспечения конфиденциальности, как управление настройками учётной записи Google, проверки всех настроек в стандартном приложении «Настройки» и т.д. Это самые первые шаги, и если вы понимаете всё то, что было написано в данном материале, вы наверняка во всём этом уже разобрались. А если нет, то в Сети есть предостаточно инструкций на эту тему. Эта статья также не покрывает более сложные методы управления своим устройством, как настройка межсетевого экрана или изменение недоступных в «Настройках» настроек (такие тоже есть). Эти вопросы требуют для своего рассмотрения отдельного материала. Тем не менее, вышеперечисленные несложные действия позволяют сделать намного больше для более гибкой настройки своего устройства на Android. Надеюсь, что было интересно.

Источники:

 
  • Спасибо
Благодарности: vaalf, nonlocal, Nemogood и 7 других
DDDTK

DDDTK

Местный филин
Вернуться к: Авторское
С появлением умных гаджетов пришли умные проблемы )
Сохранение конфиденциальности личной информации - это очень важная вещь на сегодняшний день.
Сам сейчас интересуюсь этой информацией, изучаю материалы.
Делаю вывод что кучу инфы уже просто отдал в интернет незнакомым людям\корпорациям\странам...
И ее используют против меня, докучая, в первую очередь, рекламой.
Ничего. Поборемся :Acute:
Спасибо за статью.
 
  • Спасибо
Благодарности: DDDTK
L Lord_X, на самом деле в этих вопросах есть довольно много кажущихся на первый взгляд схожих понятий. Тот же вопрос «Какую информацию (данные) считать личной?» может вызвать затруднения. :Smile: Есть различия и в конфиденциальности, защите данных и анонимности. Если первая основана на вопросах передачи полученной от пользователя информации третьим лицам (для той же рекламы благодаря сбору и анализу действий человека), то вторая основана на предотвращении несанкционированного доступа к данным (с помощью паролей, шифрования ОС, папок, файлов и т.д.). Анонимность — оставаться незаметным при совершении определённых действий — стоит в стороне, так как требуется намного больше навыков и умений (причём одно необдуманное действие может разрушить абсолютно все ранее сделанные шаги в этом направлении). Хотя и здесь существуют продвинутые решения — те же ОС Whonix или Tails. Каждое из этих направлений имеет множество нюансов, процесс это довольно трудоёмкий. Но если этим заняться, то результаты окажутся намного приятнее.

докучая, в первую очередь, рекламой
В первую очередь, наверное, стоит удалить учётные записи из тех сервисов, в которых больше нет необходимости, а также убрать привязку к ним адреса почты и номера телефона. А вообще очень много полезных советов было написано в статей от Agent K. Советую почитать. :Wink:
 
  • Спасибо
Благодарности: Lord_X