Anubis: как заморозить приложения, чтобы они не сдали ваш VPN
Представьте: вы подключились к VPN, чтобы безопасно проверить почту или доступ к зарубежному сервису. В этот момент банальное приложение для заказа еды тихо сканирует ваш телефон, находит активный proxy -порт и выясняет IP-адрес вашего сервера. Уже завтра этот адрес может оказаться в blacklist , а вы даже не узнаете, кто вас сдал. Эта угроза — не фантастика, а реальная уязвимость в архитектуре Android, которую теперь можно закрыть с помощью нового open-source приложения под названием Anubis.
Проблема в том, что большинство приложений на Android могут проверять наличие network connection через системный сервис ConnectivityManager. Но даже если скрыть VPN от него с помощью рабочего профиля, остаются другие векторы утечки: прямой доступ к интерфейсу tun0, считывание таблиц маршрутизации и, самое опасное, подключение к локальному SOCKS5-прокси, который многие VPN-клиенты запускают без authorization . Минцифры разослало инструкции, как именно использовать эти методы для выявления и блокировки. Простой firewall или песочница здесь не помогут — нужна более радикальная solution .
Anubis предлагает принципиально иной подход: не изолировать приложения, а полностью их disable , пока VPN активен. Используя команду pm disable-user через Shizuku — инструмент, дающий shell-доступ без root — Anubis помещает выбранные приложения в состояние полного anabiosis . Они не могут запускаться, получать уведомления или сканировать сеть. При этом пользователь может настроить три группы: «Без VPN», «Только VPN» и «Запуск с VPN». Каждое нажатие на ярлык запускает сложную orchestration — выключение или включение VPN, заморозку/разморозку нужных приложений — всё это происходит за кадром.
Особенно изящно Anubis решает задачу отключения любого VPN-клиента, даже без знания его внутреннего API. С помощью так называемого «пустого» VPN-подключения система автоматически отключает предыдущее соединение — и тут же закрывает своё. Это использование архитектурного правила Android: одновременно может быть только один активный tunnel . Такой хак позволяет гарантировать, что приложение из группы «Без VPN» оживает только тогда, когда туннель уже разорван, а прокси-порт закрыт. Визуально статус отражается через grayscale — замороженные приложения теряют цвет, а активные мгновенно оживают.
Anubis — это не просто защита, а переосмысление модели безопасности на мобильном устройстве. Вместо доверия по умолчанию он вводит принцип наименьших привилегий: приложение живёт только тогда, когда вы этого хотите. Это создаёт цену — нет фоновых уведомлений, — но и даёт guarantee , что данные не уйдут без вашего ведома. Решение работает на обычных телефонах, без root, и уже доступно на GitHub. В сочетании с серверными схемами вроде трёхкаскадного VPN оно закрывает угрозу с обеих сторон — и на клиенте, и в инфраструктуре.
А если забыл добавить приложение в группу "Без VPN" — всё, данные ушли? Надёжность зависит от user attention внимательности пользователя.
Интересно, а как насчёт battery life времени работы от батареи? Заморозка ведь должна экономить заряд, особенно от надоедливых приложений.
Гениально использует system architecture архитектуру системы против самого себя. Dummy VPN — это чистое злодейское мастерство.
Главный риск — это convenience удобство. Сколько людей готовы на такие настройки ради приватности?
Установил Shizuku и Anubis. Первое включение — нервы, второе — полёт. Теперь даже bank app банковское приложение не видит моего VPN. Спасибо за open source открытый код.
Почему Google до сих пор не добавил network isolation сетевую изоляцию для профилей? Это же очевидная дыра.