Важная оговорка
Данный метод актуален только под Android, для работы потребуется рутированый телефон.
Мотивы
Мобильные приложения теперь должны отслеживать средства обхода блокировок и сообщать о них, а Российские сервисы не должны работать, если на них пытаются зайти используя средства обхода блокировок. С мессенжерами стало в последнее время туго, идёт активное импортозамещение. Отечественный продукт скоро потребуется для открытия домофона в подъезде, — ну как тут не установить... Только кому потом будет принадлежать ваш телефон: вам или не вам? Или вы ему?
Настало то время, когда небольшой девайс стал играть слишком большое значение в нашей жизни. Это уже просто способ коммуникации, а хранилище всей нашей подноготной с доступом к финансам и личной жизни. Наверное лучше, чтобы эта среда жила не своей жизнью, а по каким‑то правилам, которые мы установим.
Копаем вглубь
Почему бы всем этим приложениям на телефоне не дать ровно то, что им нужно для работы а всё остальное отнять? — Но на каких устройствах это технически возможно сделать, и как понять что им надо?
Из устройств лучше всего подойдёт «нечто», — на чём используется Linux‑подобная операционная система, и конечно лучше с root‑доступом. То есть телефон на Android с разблокированным загрузчиком.
Для того чтобы понять, что нужно приложениям, мы произведём анализ сетевого трафика и прав приложений на телефоне.
Для изучения я установил на ПК под управлением Linux Ubuntu — Android SDK, в котором с помощью андроид‑эмулятора создал тестовую среду для изучения. Тестовая среда — это виртуальная машина/телефон с root‑доступом, общение с которой возможно в графическом интерфейсе и с помощью командной строки (Android Debug Bridge).
В этой тестовой среде изучил необходимые права и трафик некоторых из тех приложений, которые я использую:

Что же я там увидел, и что удалось узнать таким способом?
Выяснилось, что многие приложения собирают много аналитики, статистики, трекинговой информации, телеметрии и отправляют это не только на свои сервера, но и на посторонние. То есть идёт активное взаимодействие с кучей посторонних серверов, не имеющих отношения к сервису.
Также имеют гораздо больше прав, чем им нужно для работы. Запись звонков, доступ к камере и местоположению, к телефонной книге, датчикам положения и движения, чтение и отправка SMS, — у приложений, которым это не нужно для их основных функций.
Само по себе это всё ничего не значит, — сторонние сервера могут использоваться для каких‑то конкретных узкоспециализированных функций. А лишние права могут быть обусловлены избыточным функционалом приложения.
Но есть приложения, которые могут иметь доступ на управление средой и оказывать влияние на эту среду, а также на управление сетью и влиять на неё. Чего далеко ходить, — есть такие, с которыми на одном устройстве перестают работать средства обхода блокировок. Или зачем например получать информацию об установленных приложениях и ID аккаунтов в них?
Решение
Так как мы используем Linux‑подобную операционную систему, то почему бы нам не использовать обычный фаерволл типа Iptables и попросту не отозвать лишние права у всех приложений?
Наш принцип — по умолчанию «всё запрещено», но для конкретных приложений разрешены конкретные домены. Был составлен глобальный blacklist — который включает в себя явно ненужные(лишние) домены для всех приложений. И для каждого приложения были составлены специальные для него whitelist. Аналогично с правами, — явно нужные для каждого приложения и явно лишние.
Iptables не работает с доменами, а только с IP‑адресами. Поэтому с помощью модуля nslookup для Magisk мы узнаём IP‑адреса из всех белых и черных списков, на основе них составляем список цепочек для Iptables и потом заносим их в правила. Делает это автоматический скрипт раз в 3600 секунд.
Касательно списка разрешений — для всех приложений заведены скрипты для восстановления нужного набора разрешений после обновления приложения или перезагрузки устройства. Автоматическое исполнение этих скриптов обеспечивается с помощью Magisk service.d.
Изначально решил протестировать наш способ ограничений в тестовой виртуальной среде. Убедился, что решение реально работает, — нужно просто составить корректные правила для приложений. Структура каталогов проекта выглядит примерно таким образом, как ниже:
/data/adb/netiso/ ├── netiso.sh ├── global-blacklist.txt ├── rules.v4 ├── cache/ └── apps.d/ ├── первое_приложение.conf ├── второе_приложение.conf ├── третье_приложение.conf ├── четвертое_приложение.conf └── пятое_приложение.conf /data/adb/service.d/ └── netiso-loop.sh
Где:
netiso.sh— основной скрипт;global-blacklist.txt— глобальный blacklist;netiso-loop.sh— скрипт автоматического обновления IP-адресов.
Применение на реальном устройстве
Исполнение:
выбрана подходящая для кастомизации модель телефона на Android
разблокирован загрузчик
установлен кастомный Recovery
телефон рутирован с помощью Magisk
удалены лишние системные приложения
установлен модуль Busybox для Magisk
создана структура каталогов
заполнены глобальный blacklist и whitelists для каждого приложения
Для каждого приложения подогнал списки доменов и прав на телефоне таким образом, чтобы всё работало и всё лишнее было заблокировано. Проверка производилась в самом телефоне посредством использования самих приложений и через терминал — запросом списков разрешений и количества дропнутых пакетов.
Второе пространство на телефоне
На первом пространстве я разместил все отечественные потенциально «следящие» за обходом блокировок приложения, применив к ним наше решение. Также создал второе пространство для особого случая.
Пришло понимание, — что у нас тут всё‑таки не дешёвый хостел, а пятизвёздочный отель, и особому нашему дорогому гостю конечно же положены VIP‑апартаменты. Поэтому мы выделили ему аж целый этаж (Second Space):

И конечно же встроили в систему фаервола и дали нужные права для работы.
Немного гигиены
Одной из идей было настроить подключение телефона только к определённым wi‑fi сетям, чтобы не использовать общественные сети wi‑fi. Но проверив настройки телефона, пришёл к тому что в этом нет необходимости. Телефон и так будет подключаться только к тем wi‑fi сетям, которые запомнил.
Второй из идей — было использование чехла Фарадея для телефона. Его название напоминает клетку Фарадея, — это защитный экран из замкнутой проводящей оболочки, блокирующий любые сигналы. Если поместить телефон в такой чехол, телефон должен стать «невидимым» для окружающего мира. Данную идею рассматриваю для эксперимента
Итоги
Идея оказалась рабочей, на реальном телефоне применённый метод полностью работает. Если нужно будет добавить новое приложение — его можно будет «встроить» в фаерволл. Если какое‑то приложение станет работать иначе, — можно изменить конфигурацию для него. В моём случае были изучены и созданы правила для 17 приложений, которыми я пользуюсь.
Работа над созданием телефона, максимально приближённого к концепции приватности была очень интересной и познавательной. Статья создана в ознакомительном формате, подробности работы приложений не раскрываются в целях соблюдения этики.
Предостережение для желающих повторить данный эксперимент:
повторение эксперимента требует очень больших трудозатрат и уймы времени
важно выбрать подходящую для задачи модель телефона, иначе может не получиться
Комментарии (5)

reniceisnotnice
05.06.2026 12:24Приложения в тестовой среде ведут себя не так как на реальном физическом устройстве. Анализ трафика в такой среде не показатель. Попробуйте аналогичным образом любое приложение Яндекса проанализировать - удивитесь. Только реальное устройство с pcap/анализом трафика с сети.
Что по safetynet? Без гуглосервисов, с разблокированным загрузчиком ни одно банковское приложение не будет работать. Да, есть web app, но в том же Сбере вы наличку через него не закажете, да и других многих функций нет. Если честно, то в таком девайсе если будет какой-то модуль magisk скомпрометирован, то вы даже это не поймёте и будете дальше использовать зараженное устройство.
Что по удобству использования? Допустим есть мессенджер 1 (доверенный) и 2 (недоверенный). Каким образом между ними файлы передаются?
То что приложение установлено в изолированной среде без контактов или без реальных контактов с нагенерированными файлами в ФС выглядит подозрительно, может в теории приводить к банам со стороны сервисов или бесконечной капче. По факту все можно свести к такому упрощению: для недоверенных приложений отдельное устройство (банки, доставки и прочие прелести беззаботной жизни), кнопочная звонилка для связи без анализа активностей, социальных графов и ТД и телефон на графене (если нужны расширенные мультимедийные возможности). P.s. в свое время заморачивался, а затем стал просто в свою пользу это все заворачивать - если примерно понимать как работает таргетинг, то можно неплохие персональные скидки выбивать

reniceisnotnice
05.06.2026 12:24P.s.s. Ещё есть вариант блокировать трекеры на уровне сети через adguard home/pihole

alexwlpr
05.06.2026 12:24Я себе такое реализовал связкой из 3х компонентов.
v2RayNG в режиме прокси (открыт 1 порт на localhost)
Adguard. В нём подключен прокси (от v2Ray) и сделано разграничение, кому ходить через прокси, кому нет.
VPNHide Next. А вот тут нужен рут. Данный проект позволяет скрыть от избранных приложений тоннели, порты и т.д. Проверка RKNHardering и YourVPNDead не показала ничего такого, что должно было бы засветить мой сервер. Засунул в него все яндексы, озоны и гос. услуги.
И дополнительный, для самоуспокоения. HMA OSS. Спрятал в нём все приложения для туннелирования и рута от тех же яндексов, озонов и т.д.
Итого имею телефон в котором параллельно работает Сбербанк и Instagram.
Ссылки
VPN Hide Next: https://github.com/soranerai/vpnhide_next
HMA OSS: https://github.com/frknkrc44/HMA-OSS
Остальное всем известно.

Solmik
05.06.2026 12:24Хорошая статья.
Я так глубоко в софт залезать не решаюсь, но фотокамеру блокирую физически.
Телефон у меня в чехле, сделал разрез скальпелем и вставил непрозрачную шторку.
Так и фотокамера целее будет, не поцарапается.
Ещё бы на микрофон выключатель поставить.
Shaman_RSHU
Сколько времени занял сбор трафика и тестирование одного приложения? Не секрет, что при использовании различной функциональности в приложении оно может обращаться к разным ресурсам. Не станет ли такая "блокировка в лоб" боком? Обжигался на таком, когда ограничивал SmartTV.