Это старая редакция страницы Новости / 2014 / Corridor Простой Способ Фильтрации Утечек Tor-трафика На Внешнем Роутере за 20/02/2014 11:44.
20.02 // Corridor: простой способ фильтрации утечек Tor-трафика на внешнем роутере
При использовании анонимной сети Tor возникает опасность утечки пользовательского трафика в обход этой сети. Проблема может быть решена файрволлом, виртуализацией и прочими техниками, однако они могут быть слишком сложны, неудобны в настройке при разрастании сценариев применения и скомпрометированы при попадании вредоносного кода на пользовательскую машину.
В это же время, всё более популярными становятся Tor-роутеры, которые проводят прозрачную торификацию всего пользовательского трафика. При их использовании также возникает ряд проблем:
- Прозрачная торификация на роутере сложна в плане обработки NEWNYM сигналов от клиентов тора, особенно если к роутеру подключаются с множества машин. Если же эти сигналы не обрабатывать, то разные профили будут смешиваться в одну цепочку и выходить через общий исходящий узел.
- Любое некачественное или злонамеренное ПО может встроить идентификатор в анонимную цепочку, который будет различим на злонамеренном исходящем узле, чтобы затем построить канал утечки данных в обход Tor.
- Tor-роутер концентрирует на себе всё доверие, что потенциально опасно даже для одного пользователя и неприемлемо при подключении множества устройств к одному роутеру.
Пользователь Rusty Bird предложил простое решение — набор скриптов corridor.
Идея состоит в том, что торификацию своего трафика каждый пользователь осуществляет локально своими силами, не полагаясь на роутер. При этом он может подстраховаться любыми средствами — виртуальными машинами, локальной прозрачной торификацией, разделением профилей на одном компьютере и т.д., или использововать TorBrowser в обычной инсталляции по умолчанию, если ему не хватает знаний для продвинутых настроек.
Принцип работы скриптов corridor состоит не в заворачивании трафика в сеть Tor на роутере, а в блокировании всего проходящего не-Tor трафика. Иначе говоря, такой роутер является не прокси, а фильтрующим узлом на основе белых списков:
- Для этого на роутере запущен клиент Tor, который собирает данные статистики (консенсуса) тор-узлов. Также могут обрабатываться данные бридж-узлов.
- Данные передаются в Linux ipset только для сторожевых и корневых узлов (при необходимости — ещё и мостовых).
- Файрволл iptables разрешает для проходящего трафика только TCP-соединения и только с узлами из п. 2.
Принцип работы corridor требует двух сетевых интерфейсов (одним из них м.б. WiFi), при этом он не защищает от атаки, в которой злонамеренное ПО, внедрившееся на компьютер пользователя, передаёт его IP-адрес или идентифицирующие данные на злонамеренный сторожевой узел Tor, который сотрудничает с этим клиентом вредоносного деанонимизирущего ПО. Для этого пользователь может подстраховываться дополнительными средствами, например такими, как виртуальные машины.
Набор shell-скриптов проекта выглядит крайне простым. В будущем автор предлагает упростить расшаривание WiFi соединений — все обращения к портам 80 и 443, не относящиеся к Guard и DA узлам, будут перенаправляться на страницу Torproject.org (или на страницы выбора tails.boum.org, guardianproject.info, f-droid.org). Возможно включение DHCP-сервера для внутренней сети, чтобы к роутеру без проблем могло подключаться множество пользователей. Также автор считает перспективным использование установочных пакетов для минисистем Raspberry Pi / BeagleBone Black.
Автор предупреждает, что Corridor является неотлаженной концепцией с возможно невыявленными уязвимостями и не имеет официальной поддержки со стороны Torproject.
Источник: Corridor, a Tor traffic whitelisting gateway, Tor-talks mailing list