Фильтрация приложений с использованием DPI
Аппаратное обеспечение Deep Packet Inspection в интернет-цензуре
Аппаратное обеспечение для глубокой проверки пакетов (Deep Packet Inspection, DPI) — это сложный инструмент, способный анализировать пакеты данных, передаваемые по сети, в реальном времени. Оно может обнаруживать характерные особенности конкретного программного обеспечения, его сетевых протоколов или библиотек шифрования и избирательно блокировать или замедлять доступ. Например, это может привести к ситуации, когда сайт или сервис доступен через браузер, но недоступен через специальное приложение, или наоборот, в зависимости от обнаруженного трафика или заголовков.
Этот тип блокировки особенно сложно выявить и проанализировать из-за его детализированного подхода. DPI работает на уровне приложений, анализируя не только метаданные (такие как IP-адреса и порты), но и содержимое и шаблоны в передаваемых данных. Реализация DPI может существенно различаться, что делает стандартные инструменты анализа недостаточными для полной диагностики.
Выявить и проанализировать такие блокировки крайне сложно. Для этих тестов нет полностью автоматизированных утилит.
Тестирование фильтрации приложений поддерживается в:
Общие шаги для ручного анализа:
- Захватите сетевой трафик различного программного обеспечения при доступе к одному и тому же веб-сайту или сервису: из разных браузеров и приложений.
- На ПК используйте Wireshark, на Android — PCAPDroid или аналогичные приложения для захвата.
- Убедитесь, что как приложения, так и браузеры обращаются к одним и тем же доменам и IP-адресам.
- В захваченных данных найдите DNS-запросы, HTTP и TLS ClientHello-пакеты.
- Откройте дамп трафика в Wireshark и сравните запросы от разных программ.
- Один из типичных признаков блокировки: TCP-потоки от фильтруемого программного обеспечения зависают или прерываются сразу после определенного заблокированного пакета, тогда как потоки от других приложений остаются нетронутыми.
- Обнаружив заблокированный пакет, вы можете воспроизвести его для подтверждения правильности выявления. Это можно сделать вручную с помощью таких инструментов, как nping, или с использованием TraceVis.
- Если вы хотите определить точный шаблон, который вызывает блокировку, замените случайные части пакета на 00 или FF и воспроизведите пакет в сети.
Решения для обхода:
- VPN/прокси
- (иногда) ПО для обхода DPI: GoodbyeDPI, zapret, ByeDPI, SpoofDPI, PowerTunnel
Регионы:
- Россия
- Китай
- Туркменистан