Лучшим и наиболее популярным приложением из этой области является ПО Tor, которое позволяет организовать сеть виртуальных туннелей, проходя через которые, сетевые пакеты "обезличиваются", превращая процесс определения источников и приемников трафика в очень сложную процедуру.
Принцип работы Tor основан на идее так называемой "Луковой Маршрутизации" (Onion Routing), которая была предложена еще в середине 90-х годов и запатентована Военно-морскими силами США. Весь смысл в том, что если клиент будет общаться с сервером не напрямую, а через цепочку посредников, каждому из которых известны только следующее и предыдущее звенья цепочки - отследить истинный источник и приемник данных (одновременно) будет невозможно в любом звене цепи. Работает это так: клиент, пожелавший установить соединение с сервером, делает запрос к одному из трех Tor-каталогов, хранящих списки всех активных в данный момент Tor-серверов. Из этого списка он случайным образом выбирает определенное число серверов (не меньше трех), каждому из которых отправляет собственный симметричный ключ. Затем клиент берет исходное сообщение и шифрует ключом последнего в цепочке Tor-сервера, затем он добавляет к получившемуся пакету еще одно сообщение, содержащее адрес последнего в цепочке Tor-сервера, и шифрует его ключом предпоследнего сервера. Так клиент обволакивает сообщение во множество шифрованных слоев, которые будут сниматься по мере прохождения пакета через Tor-сервера. Описанная схема гарантирует, что любой из Tor-серверов не будет знать конечного адресата пакета, его отправителя и содержимого одновременно. Каждому из них доступна только ограниченная часть информации. Например, первый узел цепочки знает настоящий адрес отправителя, но не может знать содержимое сообщения и адреса получателя. Последний узел цепочки знает адрес получателя и даже имеет доступ к содержимому сообщения, но не может знать адреса отправителя. Все узлы, находящиеся между ними, не знают ни адреса отправителя, ни адреса получателя, ни содержимого сообщения. Чтобы раскрыть всю информацию о соединении пользователя сети Tor, злоумышленнику придется завладеть сразу всеми узлами, участвующими в цепочке (или шантажировать их владельцев). Учитывая то, что в сеть Tor вовлечены тысячи серверов по всему миру, а также то, что выбираются они случайным образом и для каждого соединения, можно сказать, что вероятность компрометации сразу всей цепочки серверов стремится к нулю. Завладев же только одним узлом цепочки, злоумышленник не сможет получить достаточной информации. Опасность может представлять только захват так называемых "выходных Tor-серверов", выступающих в роли последних звеньев цепочки. В этом случае злоумышленник получит доступ к оригинальному сообщению и сможет прочитать передаваемую в нем информацию. Именно поэтому для лучшей сохранности данные следует передавать по зашифрованным каналам.
Кроме утечки данных с выходных Tor-серверов, существует также и опасность DNS-утечки, ведь даже несмотря на то, что сообщение будет направлено сквозь "Tor-туннель", DNS-запрос, раскрывающий адрес получателя сообщения, может пойти "обходным путем". Чтобы избежать этого, следует использовать Tor в связке с Privoxy, либо воспользоваться сторонними DNS-серверами, такими как OpenDNS или TorDNS. Другая опасность - это возможность выдачи клиентом раскрывающей его информации по запросу сервера. Так, например, может поступить клиентское JavaScript-приложение, загруженное в браузер. Поэтому я бы порекомендовал отключить JavaScript в браузере, либо воспользоваться прокси-сервером Privoxy или Firefox-расширением Torbutton. Установить и начать использовать Tor достаточно просто. Для этого необходимо установить Tor-клиент и HTTP-прокси Privoxy, который мы будем использовать для перенаправления HTTP-трафика в Tor. В последних версиях Ubuntu Tor-клиент недоступен, поэтому мы установим его из репозитория авторов программы. Для этого добавляем в файл /etc/apt/sources.list следующую строку: deb http://deb.torproject.org/torproject.org karmic main
Запрашиваем ключи у сервера сертификации: $ gpg --keyserver keys.gnupg.net --recv 886DDD89 $ gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-key add -
Обновляем apt-кэш и устанавливаем необходимые компоненты: $ sudo apt-get update $ sudo apt-get install tor tor-geoipdb privoxy
После окончания установки открываем конфигурационный файл Privoxy и пишем в него следующую строку: forward-socks4a / 127.0.0.1:9050 .
Запускаем Privoxy: $ sudo /etc/init.d/privoxy start
Устанавливаем плагин Torbutton для Firefox. Его можно взять со страницы https://addons.mozilla.org/firefox/2275/ или же установить средствами apt: $ sudo apt-get install torbutton-extension
Перезапускаем браузер, активируем режим работы через Tor с помощью нажатия кнопки внизу справа. Переходим на страничку https://check.torproject.org для проверки работоспособности Tor. На экране должна появиться зеленая луковица. Остальные приложения легко перевести на использование Tor с помощью указания адреса Privoxy (localhost:8118) или SOCKS-сервера Tor (localhost:9050) в настройках. Чтобы научить консольные приложения, такие как wget, lynx, apt и другие, использовать Tor, добавь в свой ~/.bashrc следующие строки: export http_proxy=http://127.0.0.1:8118/ export HTTP_PROXY=$http_proxy
Стандартная поддержка SOCKS в SSH не подходит для Tor, поэтому придется изловчиться и воспользоваться socat: $ sudo apt-get install socat
Далее открой конфиг SSH (~/.ssh/config) и пропиши в него две строки: Host * ProxyCommand socat STDIO SOCKS4A:127.0.0.1:%h:%p,socksport=9050
Tor обеспечивает интерфейс для доступа к своей функциональности из других приложений, поэтому существует несколько проектов, которые позволяют использовать его возможности для ведения какой-либо анонимной деятельности в сети интернет. Одним из таких приложений является Torchat (https://code.google.com/p/torchat/), специальный чат-клиент для сети Tor, полностью скрывающий личности его участников. Torchat написан на Python и не требует какой-либо настройки, поэтому для начала его использования достаточно установить пакеты python2.5, python-wxgtk2.8 и запустить torchat.py, находящийся внутри архива с программой.
http://www.xakep.ru/magazine/xa/134/088/1.asp |