HAPP·Research

Что видит VPN-приложение: технические возможности и границы

Разбор Android VpnService, iOS Network Extension, локальных прокси и DNS: что именно доступно VPN-клиенту на вашем устройстве, а что защищено HTTPS.

Мифология про VPN делится на две крайности: «они видят вообще всё, включая пароли» и «всё зашифровано, им ничего не видно». Правда технически точнее обеих.

Позиция приложения в системе

Android: VpnService и TUN-интерфейс

Приложение запрашивает VpnService — Android показывает системный диалог «Доверять этому приложению VPN?». После согласия система создаёт TUN-интерфейс и направляет в него исходящий трафик (в соответствии с правилами, включая per-app исключения). Приложение читает пакеты из файла-дескриптора и переправляет их своему серверу.

Важные следствия:

  • Приложение получает все пакеты, которые система сочла подлежащими туннелированию, включая UDP, ICMP-ошибки и широковещательные сценарии.
  • Именно на этом уровне работают все VLESS-клиенты: VpnService → tun2socks → локальный SOCKS5 → ядро Xray/sing-box → сервер. Локальный прокси без авторизации в этой цепочке стал уязвимостью 2026 года.
  • Разрешение «VPN» — единственное системное разрешение такого масштаба; остальные (камера, геолокация) блочатся по отдельности, а сетевой трафик — весь сразу.

iOS: Network Extension

На iOS приложение регистрирует NEPacketTunnelProvider — расширение системы, получающее пакетный поток. Контроль Apple строже (профили VPN подписываются, приложения проходят ревью), но позиция расширения в сети устройства та же: между системой и интернетом.

Сертификаты: крайний случай

Если пользователь (или обманом — приложение) устанавливает корневой CA-сертификат и разрешает HTTPS-перехват, граница HTTPS исчезает: MITM-прокси получает содержимое. Легитимные корпоративные VPN так делают открыто; вредоносные — через социальную инженерию («для работы сервиса установите сертификат»). Никогда не устанавливайте сертификаты по просьбе приложения.

Что проходит через руки VPN-оператора

Категория Видит ли оператор Комментарий
DNS-запросы Да Пока вы не используете DoH/DoT через туннель
IP-адреса назначения Да Даже для HTTPS
SNI (домен в TLS) Да Если не используется ECH
Время/объёмы/периодичность Да Идеальный материал для профилирования
HTTP-трафик Да, содержимое Редкий, но реальный остаток
HTTPS-содержимое Нет При валидном TLS и без установленного CA
Содержимое E2E-мессенджеров Нет Дополнительный слой шифрования

DNS: самый недооценённый канал

Записи DNS — это карта вашего поведения: банки, клиники, поиски работы, ночные чтения википедии. VPN-оператор становится их владельцем по умолчанию. При этом он же может подменять ответы: bank.example → IP фишинговой копии. HTTPS в браузере частично защищает (HSTS, сертификаты), но нечастые сценарии (первый визит, приложения без pinning) уязвимы.

Практика: используйте DNS-over-HTTPS к известному резолверу внутри туннеля, либо зашифрованный DNS самого оператора, если он публично обязуется не логировать.

Метаданные: почему «нам нечего скрывать» — логическая ошибка

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

Вывод

VPN-приложение — это договор о доверии на уровне всей вашей сетевой активности. HTTPS защищает содержимое; структуру — только ваш выбор оператора. Поэтому вопрос «кто разработчик и кто управляет сервером» — не паранойя, а базовая гигиена. Продолжение: как проверить приложение перед установкой.