Как работать с браузером Тор — блокируем определение своего местонахождения при серфинге в сети. Как пользоваться браузером Тор: установка и настрока

Если вам надоело ощущение подсматривающих глаз, следящих за вами с целью что-нибудь продать, то вам пора узнать, что такое браузер тор.

Персональная информация, оставляемая пользователем в социальных сетях, интернет-магазинах, на сайтах государственных организаций и просто в поисковых системах, очень интересует прежде всего те же поисковые компании. Они обрабатывают пользовательские предпочтения, чтобы усовершенствовать свои алгоритмы и повысить качество выдачи.

Кроме того, в недрах интернета рыщут голодные злоумышленники, желающие получить доступ к данным ваших банковских карт и электронных кошельков.

Маркетологи тоже вносят свой вклад в слежку за вашими перемещениями в сети: это именно им очень важно узнать, что же вам можно продать, исходя из тех запросов, которые вы продолжаете вбивать в поисковики. Стоит только войти в свой почтовый ящик, а там уже очень важные предложения пойти туда-то и купить то-то, предварительно обучившись на таких-то курсах, не бесплатных, конечно.

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

The Onion Router

Так что такое tor? TOR browser — это свободное и открытое программное обеспечение, название которого — акроним от The Onion Router, а по-русски: луковичный роутер, или луковичный маршрутизатор. Название браузера отражает основные принципы, на которых выстроена его система шифрования, написанная на языках программирования Python, C и C++. В целом система представляет собой сеть прокси-серверов, устанавливающих анонимное соединение в виде виртуального туннеля, в котором невозможно вычислить местонахождение пользователя, поскольку передача данных происходит в зашифрованном виде.

За счет использования разветвленной системы серверов, или информационных узлов, этот браузер позволяет пользователю оставаться анонимным, невидимым для всех потенциальных мошенников, грабителей, шпионов и других пользователей с пониженной социальной ответственностью. С его помощью можно создавать свои сайты, не афишируя их местоположение, а также можно контактировать с теми сайтами, которые заблокированы официальной цензурой.

Майк Перри, один из разработчиков Tor, считает, что браузер может обеспечить высокий уровень защиты даже от таких шпионских программ, как PRISM.

История появления

Tor Browser был в основном создан в исследовательской лаборатории военно-морских сил Америки, когда американские спецслужбы трудились над проектом Free Heaven, или Свободные Небеса. По неизвестной причине проект был закрыт, а все исходные коды попали в общественную сеть, где их выловили талантливые программисты и организовали сообщество Torproject.org. Здесь браузер уже был доработан окончательно добровольными разработчиками, хотя продолжает совершенствоваться, развиваться и обновляться по сей день.

Всего год назад у Тора было уже более 7000 системных узлов, установленных на всех континентах Земли, исключая Антарктиду, а количество пользователей сети превысило 2 млн. По статистике Tor Metrics, в 2014 году Россия присоединилась к тройке стран, использующих браузер Тор наиболее активно. Поскольку браузер является системой с открытым кодом, над которым более 15 лет трудились различные программисты, можно не беспокоиться о том, что он может оказаться с подвохом, и вместо защиты информации сам станет ее воровать.

Именно открытый код браузера дает нам гарантию безопасности его использования.

Видео обзор браузера, немного истории и основное предназначение

Как работает система

Существующая технология TOR позволяет любому пользователю заходить на любые сайты, не оставляя после себя никаких следов. То есть на сайте, куда вы заглянули, не смогут отследить IP-адрес вашего компьютера, а значит, не смогут вас вычислить. Это будет недоступно даже вашему интернет-провайдеру. А сам браузер информацию по вашим перемещениям в интернете хранить не будет.

Принцип действия луковичной системы может быть представлен таким образом:

1. Формируются узлы связи, устанавливаемые в разных странах апологетами данной технологии. Для передачи данных используются 3 произвольных узла, при этом никто не знает, какие именно. Данные, которые передают пользователи, многократно шифруются, при этом каждый уровень шифрования является очередным слоем пакета луковичного маршрутизатора. Следует учитывать, что шифруется только путь, или маршрутизация, а не само содержимое информационных пакетов. Поэтому если вы хотите, чтобы секретная информация дошла до адресата в полной сохранности, потребуется дополнительное шифрование.

2. На каждом последующем узле, через который передается пакет информации, расшифровывается один слой шифра, содержащий сведения об очередном промежуточном пункте. После считывания данной информации использованный слой луковицы удаляется.

То есть браузер передает первому узлу пакет, в котором присутствует зашифрованный адрес второго узла. Узел № 1 знает ключ для шифра и, получив адрес узла № 2, отправляет туда пакет, что похоже на то, что у лука сняли первый слой шелухи. Узел № 2, получив пакет, владеет ключом для дешифрования адреса узла № 3 — сняли еще один слой шелухи с луковицы. И так повторяется несколько раз. Таким образом, со стороны будет невозможно понять, какой именно сайт вы в конечном итоге открыли в окне своего браузера Тор.

Видео инструкция по установке и настройке

Недостатки системы

Поисковые системы, интернет-провайдер или кто-то еще, кто уже привык следить за вашим серфингом в сети, могут догадаться, что вы используете Тор. Они не узнают, что именно вы смотрите или делаете в сети, но сам факт того, что вы что-то хотите скрыть, станет для них известным. Поэтому придется изучить существующие способы усиления анонимности, если уж вы выбираете такой путь.

В системе Тор используются простые компьютеры, а не высокоскоростные. Из этого вытекает еще один недостаток: скорости передачи информации в этой анонимной сети может не хватить для просмотра, например, видео или другого развлекательного контента.

В настоящее время браузер Тор работает и активно развивается, используя более 15 языков, включая русский. Последняя версия Тора выпущена 23 января 2017 г. В некоторых странах сайт проекта Tor заблокирован или подвергнут цензуре, что делает невозможным загрузку браузера Tor напрямую. В этом случае можно воспользоваться зеркалом: Tor Browser Bundle на Github, если же и зеркала недоступны, можно попробовать скачать его через службу Gettor.

Не забываем оставлять свои отзывы о браузере

Браузер Tor (далее Tor Browser ) обеспечивает анонимность ваших действий в интернете. Он скрывает вашу личность и защищает веб-соединения от многих видов онлайновой слежки. Tor также можно использовать для обхода интернет-блокировок.

  • Как сохранить анонимность и обойти цензуру в интернете

Что вы узнаете из этой главы

  • Как скрыть вашу цифровую личность от веб-сайтов, которые вы посещаете
  • Как скрыть посещаемые веб-сайты от провайдеров доступа к интернету и шпионских программ
  • Как обойти интернет-цензуру и фильтры
  • Как защититься от небезопасных и потенциально вредоносных веб-сайтов с помощью дополнения NoScript

1. Знакомство с Tor Browser

2.1 Загрузка Tor Browser


Изображение 2. Настройки мостов Tor Browser

Шаг 2. Выберите Да .


Изображение 3. Настройка мостов

Шаг 4. Выберите вариант Подключиться к предопределенным мостам .

Шаг 5. Нажмите кнопку [Далее] , чтобы настроить прокси .

Tor Browser поинтересуется, нужен ли для доступа к интернету локальный прокси . В этом примере мы предполагаем, что вам это не нужно. Если нужно , посмотрите параметры вашего привычного браузера и скопируйте оттуда настройки прокси. (В браузере Firefox можно найти это в меню Настройки > Дополнительные > Сеть > Настроить . В других браузерах вы можете обнаружить те же настройки в параметрах доступа к интернету. Можете обратиться к системе поддержки браузера для помощи.


Изображение 4. Настройки прокси

Шаг 6. Выберите вариант [Нет] .

Шаг 7. Нажмите кнопку [Соединиться] для запуска launch Tor Browser.


Изображение 5. Соединение с сетью Tor

Через пару мгновений откроется Tor Browser.

3.2.2. Подключение к сети Tor с другими мостами

Вы также можете подключиться к сети Tor, указав мосты самостоятельно. Этим пользуются редко (в основном, предпочитают предопределенные мосты ), а потому шансов, что этот способ заблокируют, меньше. Если у вас не получается зайти на сайт Tor Project, можете попросить адреса сайтов-мостов, отправив письмо по адресу [email protected] , при условии, что вы используете аккаунт Riseup , Gmail или Yahoo . Вставьте слова get bridges в тело письма.

Если у вас есть получить доступ к Tor Project, можно узнать адреса таких мостов, Зайдите на страницу https://bridges.torproject.org/options и следуйте по шагам.

Шаг 1. Нажмите кнопку Просто дайте мне адреса мостов! .


Изображение 1. Получение адресов мостов Tor

Шаг 2. Наберите знаки с картинки (капчу ) и нажмите Enter .


Изображение 2. Капча

Вы увидите три адреса мостов.


Изображение 3. Адреса мостов

Шаг 3. Теперь, когда у вас есть адреса мостов, можете набрать их в настройках мостов Tor , как показано ниже.

Примечание. Если вы впервые запускаете Tor Browser, то можете увидеть экран настроек мостов Tor , просто следуя по шагам из . Если Tor Browser уже сконфигурирован, для доступа к этим настройкам обратитесь к .


Изображение 4. Настройки мостов Tor

3.3. Изменение настроек доступа к сети Tor

Вы можете изменить настройки Tor, когда программа уже сконфигурирована. Скажем, вы едете в страну, где Tor заблокирован. Как изменить настройки? Следуйте по шагам:

Шаг 1: Нажмите кнопку , чтобы увидеть меню Tor Browser.


Изображение 1. Меню настроек Tor Browser

Шаг 2. Выберите Настройки сети Tor , чтобы определить способ подключения Tor Browser к интернету.


Изображение 2. Настройки сети Tor

В настройках вы можете включить или отключить мосты, выбрать и другие опции.

Когда завершите, нажмите кнопку и перезапустите Tor Browser .

4. Анонимный доступ к интернету через Tor Browser

Важно помнить, что Tor Browser обеспечивает анонимность только тех действий, которые происходят в окне Tor Browser. Всю остальную онлайновую деятельность Tor сам по себе не защищает.

Примечание. В соответствии с политикой приватности , Tor Browser настроен так, чтобы не сохранять историю браузера на жесткий диск. Всякий раз, как вы выходите из Tor Browser, история удаляется.

4.1. Как проверить, работает ли Tor Browser

Tor Browser скрывает ваш IP-адрес от сайтов, которые вы посещаете. Если программа настроена верно, все должно выглядеть так, будто вы заходите на сайт в интернете с IP-адреса, который отличается от вашего обычного IP-адреса, а ваше физическое местоположение нельзя вычислить по IP-адресу.

Простейший способ удостовериться, что программа работает – выполнить проверку на сайте разработчика https://check.torproject.org/ .

Если вы не используете Tor, то увидите:


Изображение 1. Проверка показывает, что Tor не работает как надо

Если вы используете Tor, изображение будет таким:


Изображение 2. Проверка показывает, что Tor работает как надо

Хотите узнать IP-адрес, под которым подключаетесь к интернету через сеть Tor ? В интернете много возможностей сделать это, включая веб-сайты с поддержкой шифрования https (что затруднит жизнь не-провайдерам , которые захотят "подделать" результат):

Если зайти на этот сайт не через Tor Browser, можно увидеть свой реальный IP-адрес, связанный с вашим реальным местоположением. Если зайти через Tor Browser, отобразится другой IP-адрес.

4.2. Создание новой личности

Вы можете создать в Tor Browser "новую личность". При этом Tor Browser произвольно выберет новый набор рестранстляторов. Со стороны будет выглядеть так, словно вы заходите с нового IP-адреса, когда посещаете тот или иной вебсайт. Чтобы создать новую личность:

Шаг 1. Нажмите кнопку , чтобы вызвать меню настроек Tor Browser.


Изображение 1. Создание новой личности в Tor Browser

Шаг 2. Выберите пункт Новая личность .

Tor Browser удалит историю посещенных страниц и куки-файлы, затем перезапустится, и вы продолжите работу с другим IP-адресом.

4.3. Дополнение NoScript

4.4. Обновление Tor Browser

Вы будете получать уведомления о вышедших обновлениях Tor Browser.

Шаг 1. Нажмите кнопку , чтобы вывести меню Tor Browser.


Изображение 1. Настройки Tor Browser

Шаг 2. Выберите Проверить на наличие обновлений Tor Browser .


Изображение 2. Проверка обновлений Tor Browser

Программа сообщит, есть ли новая версия Tor Browser, и требуется ли обновление.


Изображение 3. Обновления программы

FAQ

Вопрос. Зачем мне Tor Browser ?

Ответ. Tor Browser – полезная программа, если вам нужно обойти цензуру и получить доступ к определенным сайтам. Tor Browser пригодится, если вы не хотите, чтобы провайдер доступа к интернету знал, какие сайты вы посещаете. Программа также скрывает от сайтов ваше местонахождение в интернете.

Вопрос. Я запускаю Tor Browser ; теперь все программы, которые выходят в сеть, работают через сеть Tor?

Ответ. Нет, по умолчанию через сеть Tor пересылается только то, с чем вы работаете в Tor Browser . Другие программы работают как обычно – напрямую через вашего провайдера доступа к интернету. Узнать, работает ли сеть Tor, можно, если зайти на проверочную страницу Tor по адресу https://check.torproject.org . Разработчики Tor также рассчитывают, что люди будут осторожными, используют здравый смысл и разумные действия при заходе на новый и незнакомые веб-сайты.

Вопрос. Зашифровано ли то, что я делаю в Tor Browser ?

Ответ. Tor шифрует все коммуникации внутри сети Tor. Имейте в виду, что Tor не может шифровать данные, которые покидают пределы сети Tor. Чтобы защитить данные на участке между выходным узлом Tor и сайтом, с которым вы связываетесь, по-прежнему лучше использовать HTTPS .

Полное название: Tor Browser Bundle. Построен на платформе Mozilla Firefox и является одним из самых анонимных браузеров в мире. При использовании Интернета изменяет ваш IP-адрес на случайный IP-адрес. Использует IP разных стран: Румынии, Люксембурга, Швейцарии, Германии. Не хранит cookies и журнал посещённых сайтов, не запоминает логины и пароли. Использует специальную защищённую сеть анонимных прокси-серверов.

Установка Tor

Скачать данный браузер вы можете с официального сайта: https://www.torproject.org/download/download-easy.html.en

Выберите язык и нажмите Download Tor Browser Bundle :

Запустите скачанный файл:

Нажмите ОК :

Установить :

Готово :

Использование Tor Browser

Запустите программу. Если вы не сняли галочку Запустить Tor Browser Bundle после окончания установки, то он запустится автоматически.

При первом запуске вы увидите окно Сетевые настройки Tor . Здесь вам нужно выбрать тип соединения. В наше время в большинстве случаев подходит первый вариант — кнопка Соединиться :

После этого происходит подключение браузера к сети Tor, которая будет скрывать ваш реальный IP-адрес, обеспечивая вашу анонимность. Дождитесь подключения к сети:

Для большей приватности можно запрашивать версии страниц на английском языке. Но это не является ключевым показателем анонимности. Можно нажать Нет :

Тор браузер не устанавливается в систему традиционным образом, т.к. является portable-приложением. Программу можно носить с собой на флешке. По умолчанию при распаковке он помещается в папку Tor browser на рабочем столе:

Вы можете перемещать папку с браузером в любое место. Когда вы захотите запустить ТОР для анонимного посещения какого-либо сайта, войдите в папку с программой и запустите файл Start Tor Browser.exe:

После нажатия на кнопку Новая личность и перед тем, как использовать новый IP-адрес, зайдите на 2ip.ru и посмотрите, что изменилось.


Для имитации другой личность желательно изменять не только IP, но и страну. При необходимости нажмите кнопку Tor , выберите пункт Новая личность (New Identity ), пока не изменится страна:

Внимание! Из-за того, что во время работы через Tor браузер трафик идёт через множество прокси-серверов, скорость загрузки страниц намного ниже, чем через обычный браузер.


Из-за ужесточения доступа к некоторым сайтам все большее число людей стали пользоваться VPN и Tor для доступа к ним, а также для анонимного серфинга в интернете. Про VPN мы уже говорили в одной из ранее, теперь поговорим про Tor.

Сразу же оговорюсь - в статье не будет инструкции о том, как скачать и настроить Tor Browser - только техническое описание и принципы работы самой сети.

История Tor

Концепция «луковичной» сети была представлена в 1995 году при поддержке исследовательской лаборатории ВМС США. В 1997 году к разработке присоединился DAPRA - отдел Министерства обороны США, отвечающий за разработку технологий для последующего использования их на благо военных сил США (к слову, этот же отдел изобрел ARPANET - сеть, которая в дальнейшем переросла в известный всем интернет). В 2003 году были опубликованы исходные коды сети в свободном доступе, и сеть стала активно развиваться (как и ARPANET двадцатью годами ранее) - к 2016 году в сети было более 7000 узлов и порядка 2 млн пользователей.

Принципы работы сети

Для пользователя сеть работает достаточно просто: его данные сначала попадают на охранный узел, дальше проходят через промежуточный узел на выходной узел, и уже из выходного узла - в пункт назначения:

Отследить охранный узел через два других узла нереально, к тому же все выглядит так, будто данные пользователя появились сразу из выходного узла. С учетом того, что через этот узел может проходить самый разный трафик (в том числе и нелегальный) - в ответе за него будет хозяин этого узла, так что если встретите его в реальной жизни - пожмите ему руку, ибо проблем с законом у него хватает.

Принципы устройства различных узлов

Разберемся с узлами поподробнее.

  • Входной (или охранный, или сторожевой) узел - место, где ваши данные входят в сеть Tor. Причем выбирается не самый ближайший узел, а самый надежный, так что не удивляйтесь, если пинг оказывается на уровне пары сотен миллисекунд - это все для вашей безопасности.
  • Промежуточный узел - создан специально для того, чтобы с помощью выходного узла нельзя было отследить входной: самый максимум, что получится отследить, это как раз промежуточный узел. Сам узел обычно представляет виртуальный сервер, так что операторы сервера видят лишь зашифрованный трафик и ничего более.
  • Выходной узел - точка, откуда ваши данные отправляются уже на нужный адрес. Опять же - выбирается самый надежный сервер (что именно это означает - поговорим ниже), так что пинг может быть очень и очень большим.
В итоге трафик, перед тем как попасть на нужный сервер, может обогнуть весь Земной шар, и не раз.

Как устроено шифрование, и почему сеть - луковичная

Tor расшифровывается как The Onion Router, и тут возникает вопрос - а причем тут лук? Все дело в способе шифрования: он создан по принципу лука, то есть, чтобы добраться до его центра (до ваших данных), нужно последовательно снять все слои (шифрование).

На деле это выглядит так: клиент шифрует данные так, чтобы ключ расшифровки был только у выходного узла. На нем они опять же шифруются, но уже так, чтобы расшифровать их мог только промежуточный узел. На нем данные опять же шифруются так, чтобы расшифровать их мог только сторожевой узел:


В итоге трафик после выходного узла полностью зашифрован, и промежуточный узел ни за что не отвечает - он только передает зашифрованные данные. Но вот до выходного узла трафик может идти уже и по HTTP и FTP, и извлечь конфиденциальную информацию из него особого труда не представляет.

Как можно заблокировать Tor

Разумеется, далеко не все правительства «рады» тому, что их граждане спокойно заходят на запрещенные сайты, поэтому разберемся, как в теории можно заблокировать Tor.

Первый вариант - это блокировать выходные узлы Tor. То есть пользователи банально не смогут выйти из сети, и она станет бесполезной для тех, кто хочет использовать ее для анонимизации. Увы - по понятным причинам список всех выходных узлов известен, и в теории при блокировке их всех популярность Tor резко снизится. В теории - потому что даже если заблокировать все выходящие узлы на территории одной страны, никто не мешает пользоваться узлами соседней, которая может и не блокировать такой трафик. С учетом того, что узлов несколько тысяч - блокировка даже сотни не особо повлияет на стабильность сети.

Второй вариант - блокировать всех входящих в Tor пользователей. Вот это уже куда хуже, потому что делает сеть полностью бесполезной, ведь воспользоваться выходными узлами других стран понятное дело не получится (ибо какой там выходной узел, если в сеть попасть нельзя). Опять же - список всех сторожевых узлов есть в открытом доступе, и Tor был бы уже заблокирован, если бы не одна хитрость - мосты.

Что такое мосты

Мосты - это не опубликованные в свободном доступе узлы. Но тогда возникает вопрос - раз это не публичный узел, то как о нем пользователь узнает? Все просто - при попытке соединения с сетью пользователю даются адреса лишь нескольких мостов - это имеет смысл, ведь пользователю не нужно сразу много входных узлов.

При этом полный список всех мостов строго секретен, так что максимум, на что способны правительства - это блокировать по несколько мостов за раз. Однако раз полный список не известен, к тому же постоянно появляются новые мосты - все это выглядит как борьба с ветряными мельницами. Самая серьезная попытка найти мосты была предпринята исследователями с помощью сканера портов ZMap - она позволила найти, по некоторым данным, до 86% всех портов. Но 86 - не 100, к тому же, как я уже писал, новые мосты появляются постоянно.

Принцип консенсуса в сети Tor

Разумеется, всю эту сеть из 7000 узлов нужно как-то поддерживать. Для этого создано 10 мощных серверов, поддерживаемых определенным кругом проверенных добровольцев. Каждый час они проверяют работоспособность всех узлов, через какие узлы проходит больше трафика, какие узлы мухлюют (об этом ниже), и так далее. Причем публикация всех данных происходит в открытом виде через HTTP (разумеется, кроме списка всех мостов) и доступна каждому.

Возникает вопрос - раз все решения по сети принимаются вместе, почему серверов 10 - ведь тогда возможна ничья (5 на 5)? Все просто - 9 серверов отвечает за список узлов, а один - за список мостов. Так что к консенсусу прийти всегда можно.

Что такое узлы-снифферы


Разумеется, многим, кто держит выходные узлы, приходила в голову мысль - раз через их узлы проходит трафик ровно так, как будто он идет от устройства пользователя, то почему бы не поживиться логинами и паролями (да и другими конфиденциальными данными)? С учетом того, что большая часть трафика проходит по открытым протоколам (HTTP, FTP и SMTP) - данные передаются прямо в открытом виде, бери - не хочу. Причем, увы, эту пассивную прослушку (сниффинг) отследить со стороны пользователя никак нельзя, поэтому единственный способ борьбы - пересылайте свои данные через Tor только в зашифрованном виде.

Разумеется, создателям (да и пользователям) Tor сие никак не нравится, поэтому был придуман флаг в консенсусе, называемый BadExit. Его смысл в том, чтобы отлавливать и ставить специальные метки на выходы, которые прослушивают трафик. Способов определения прослушки много, самый банальный - создать страничку, где можно вводить логины и пароли, и передавать их в сети Tor по HTTP. Если потом с этого узла будет попытка входа на этот сайт с этими логинами и паролями - значит этот узел занимается сниффингом. Разумеется, никто не мешает им пользоваться, но, как я уже писал выше - шифруйте свои данные, и тогда хозяева таких узлов будут бессильны.

Конечно, далеко не все выходные узлы такие (по некоторым данным, их порядка 5%), и большинство владельцев узлов очень серьезно относится к своей роли и принимает все риски на себя, помогая существовать сети Tor везде, кроме Антарктиды (думаю, пингвины не против, как и полярники - все же у них есть дела поважнее), за что им большое человеческое спасибо.

  • Перевод

Tor – инструмент для анонимности, используемый людьми, стремящимися к приватности и борющимися с цензурой в интернете. Со временем Tor стал весьма и весьма неплохо справляться со своей задачей. Поэтому безопасность, стабильность и скорость этой сети критически важны для людей, рассчитывающих на неё.

Но как Tor работает «под капотом»? В этой статье мы с вами нырнем в структуру и протоколы, используемые в сети, чтобы близко ознакомиться с работой Tor.

Краткая история Tor

Концепция луковичной маршрутизации (позже поясним это название) впервые была предложена в 1995 году. Сначала эти исследования финансировались министерством военно-морских исследований, а затем в 1997 году к проекту подключилась DARPA. С тех пор Tor Project финансировали разные спонсоры, а не так давно проект победил в кампании по сбору пожертвований на reddit.

Код современной версии ПО Tor был открыт в октябре 2003 года, и это было уже 3-е поколение ПО для луковичной маршрутизации. Идея его в том, что мы оборачиваем трафик в зашифрованные слои (как у луковицы), чтобы защитить данные и анонимность отправителя и получателя.

Основы Tor

С историей разобрались – приступим к принципам работы. На самом высоком уровне Tor работает, перекидывая соединение вашего компьютера с целевыми (например, google.com) через несколько компьютеров-посредников, или ретрансляторов (relay).



Путь пакета: охранный узел, промежуточный узел, выходной узел, пункт назначения

Сейчас (февраль 2015 года) в сети Tor передачей трафика занимаются около 6000 маршрутизаторов. Они расположены по всему миру и работают благодаря добровольцам, которые соглашаются отдать немного трафика для благого дела. Важно, что у большинства узлов нет никакого специального железа или дополнительного ПО – все они работают при помощи ПО Tor, настроенного на работу в качестве узла.

Скорость и анонимность сети Tor зависит от количества узлов – чем больше, тем лучше! И это понятно, поскольку трафик одного узла ограничен. Чем больше у вас выбор узлов, тем сложнее отследить пользователя.

Типы узлов

По умолчанию, Tor передаёт трафик через 3 узла. У каждого из них своя роль (разберём их подробно позже).


Клиент, охранный узел, промежуточный узел, выходной узел, пункт назначения

Входной, или сторожевой узел – точка входа в сеть. Входные узлы выбираются из тех, что работают продолжительное время, и показали себя как стабильные и высокоскоростные.
Промежуточный узел – передаёт трафик от охранных к выходным. В результате первые не знают ничего о последних.
Выходной узел – точка выхода из сети, отправляет трафик к пункту назначения, который нужен клиенту.

Обычно безопасный метод запуска сторожевого или промежуточного узла - виртуальный сервер (DigitalOcean, EC2) – в этом случае операторы сервера увидят только зашифрованный трафик.

Но на операторах выходных узлов лежит особая ответственность. Поскольку они отправляют трафик в пункт назначения, все незаконные действия, совершаемые через Tor, будут связываться с выходным узлом. А это может привести к полицейским рейдам, уведомлениям о нелегальной деятельности и другим вещам.

Встретите оператора выходного узла – скажите ему спасибо. Он того заслуживает.

Причём здесь лук?

Разобравшись в маршруте соединений, идущих через узлы, зададимся вопросом – а как мы можем им доверять? Можно ли быть уверенным в том, что они не взломают соединение и не извлекут все данные из него? Если кратко – а нам и не нужно им доверять!

Сеть Tor разработана так, чтобы к узлам можно было относиться с минимальным доверием. Это достигается посредством шифрования.

Так что там насчёт луковиц? Давайте разберём работу шифрования в процессе установки соединения клиента через сеть Tor.

Клиент шифрует данные так, чтобы их мог расшифровать только выходной узел.
Эти данные затем снова шифруются так, чтобы их мог расшифровать только промежуточный узел.
А потом эти данные опять шифруются так, чтобы их мог расшифровать только сторожевой узел

Получается, что мы обернули исходные данные в слои шифрования – как лук. В результате у каждого узла есть только та информация, которая нужна ему – откуда пришли зашифрованные данные, и куда их надо отправлять. Такое шифрование полезно всем – трафик клиента не открыт, а узлы не отвечают за содержимое передаваемых данных.

Замечание: выходные узлы могут увидеть исходные данные, поскольку им надо отправлять их в пункт назначения. Поэтому они могут извлекать из трафика ценную информацию, передаваемую открытым текстом по HTTP и FTP!

Узлы и мосты: проблема с узлами

После запуска Tor-клиента ему нужно получить списки всех входных, промежуточных и выходных узлов. И это список не является тайной – позже я расскажу, как он распространяется (можете сами поискать в документации по слову “concensus”). Публичность списка необходима, но в ней таится проблема.

Чтобы понять её, давайте прикинемся атакующим и спросим себя: что бы сделало Авторитарное Правительство (АП)? Размышляя таким образом, мы сможем понять, почему Tor устроен именно так.

Так что бы сделало АП? Цензура – дело серьёзное, а Tor позволяет её обходить, поэтому АП захотело бы блокировать пользователям доступ к Tor. Для этого есть два способа:

  • блокировать пользователей, выходящих из Tor;
  • блокировать пользователей, входящих в Tor.

Первое – возможно, и это свободный выбор владельца маршрутизатора или веб-сайта. Ему всего лишь нужно скачать список выходных узлов Tor, и блокировать весь трафик с них. Это будет плохо, но Tor ничего с этим не может сделать.

Второй вариант серьёзно хуже. Блокировка выходящих из Tor пользователей может предотвратить посещение определённого сервиса, а блокировка всех входящих не даст им ходить ни на какие сайты – Tor станет бесполезным для тех пользователей, кто уже страдает от цензуры, в результате чего они и обратились к этому сервису. И если бы в Tor были только узлы, это было бы возможным, так как АП может скачать список сторожевых узлов и заблокировать трафик к ним.

Хорошо, что разработчики Tor подумали об этом и придумали хитрое решение проблемы. Познакомьтесь с мостами.

Мосты

По сути, мосты – непубликуемые в общем доступе узлы. Пользователи, оказавшиеся за стеной цензуры, могут использовать их для доступа в сеть Tor. Но если они не публикуются, как пользователи знают, где их искать? Не нужен ли какой-нибудь особый список? Поговорим о нём позже, но коротко говоря, да – есть список мостов, которым занимаются разработчики проекта.

Просто он не публичный. Вместо этого пользователи могут получать небольшой список мостов, чтобы соединиться с остальной частью сети. Этот список, BridgeDB, выдаёт пользователям только по нескольку мостов за раз. Это разумно, так как много мостов сразу им и не нужно.

Выдавая по нескольку мостов, можно предотвратить блокировку сети Авторитарным Правительством. Конечно, получая информацию о новых узлах, можно блокировать и их, но может ли кто-то обнаружить все мосты?

Может ли кто-то обнаружить все мосты

Список мостов строго секретен. Если АП получит этот список, оно сможет полностью заблокировать Tor. Поэтому разработчики сети проводили исследования возможностей получения списка всех мостов.

Я подробно опишу два пункта из этого списка, 2-й и 6-й, поскольку именно этими способами удалось получить доступ к мостам. В 6-м пункте исследователи в поисках мостов Tor просканировали всё пространство IPv4 посредством сканера портов ZMap, и нашли от 79% до 86% всех мостов.

2-й пункт подразумевает запуск промежуточного узла Tor, который может отслеживать приходящие к нему запросы. К промежуточному узлу обращаются только сторожевые узлы и мосты – и если обратившегося узла нет в публичном списке узлов, то очевидно, что этот узел – мост. Это серьёзный вызов Tor, или любой другой сети. Так как пользователям нельзя доверять, необходимо делать сеть анонимной и закрытой, насколько это возможно, поэтому сеть именно так и сделана.

Консенсус

Рассмотрим, как функционирует сеть на более низком уровне. Как она организована и как узнать, какие узлы в сети активны. Мы уже упоминали, что в сети существует список узлов и список мостов. Поговорим о том, кто составляет эти списки.

В каждом Tor-клиенте содержится фиксированная информация о 10 мощных узлах, поддерживаемых доверенными добровольцами. У них особая задача – отслеживать состояние всей сети. Они называются directory authorities (DA, управляющие списками).

Они распределены по миру и отвечают за распространение постоянно обновляемого списка всех известных узлов Tor. Они выбирают, с какими узлами работать, и когда.

Почему 10? Обычно не стоит делать комитет из чётного количества членов, чтобы при голосовании не случилось ничьей. Суть в том, что 9 DA занимаются списками узлов, а один DA (Tonga) – списком мостов


Список DA

Достижение консенсуса

Так каким же образом DA поддерживают работоспособность сети?

Статус всех узлов содержится в обновляемом документе под названием «консенсус». DA поддерживают его и ежечасно обновляют путём голосования. Вот как это происходит:

  • каждый DA создаёт список известных узлов;
  • затем подсчитывает все остальные данные – флаги узла, веса трафика и т.п.;
  • отправляет данные как «голосование за статус» всем остальным;
  • получает голоса всех остальных;
  • комбинирует и подписывает все параметры всех голосов;
  • отправляет подписанные данные остальным;
  • большинство DA должны согласовать данные и подтвердить наличие консенсуса;
  • консенсус публикуется каждым DA.

Публикация консенсуса происходит по HTTP, чтобы каждый мог скачать его последний вариант. Можете проверить сами, скачав консенсус через Tor или через гейт tor26.

И что же он означает?

Анатомия консенсуса

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

Что случится, если узел пустится во все тяжкие

При подробном рассмотрении принципов работы сети мы пока не касались принципов работы выходных узлов. Это последние звенья в цепочке Tor, предоставляющие путь от клиента до сервера. Поскольку они отправляют данные на пункт назначения, они могут видеть их так, будто те только что покинули устройство.

Такая прозрачность подразумевает большое доверие к выходным узлам, и обычно они ведут себя ответственно. Но не всегда. А что же случается, когда оператор выходного узла решает ополчиться на пользователей Tor?

Дело снифферов

Выходные узлы Tor - почти эталонный пример «человека посередине» (man-in-the-middle, MitM). Это значит, что любые нешифрованные протоколы связи (FTP, HTTP, SMTP) могут им отслеживаться. А это – логины и пароли, куки, закачиваемые и скачиваемые файлы.

Выходные узлы могут видеть трафик так, будто он только что покинул устройство.

Засада в том, что мы ничего не можем с этим поделать (кроме использования шифрованных протоколов). Сниффинг, пассивное прослушивание сети, не требует активного участия, поэтому единственная защита - понимать проблему и избегать передачи важных данных без шифрования.

Но допустим, оператор выходного узла решит навредить сети по-крупному. Прослушивание – занятие дураков. Давайте будем модифицировать трафик!

Выжимаем максимум

Вспомним, что оператор выходного узла несёт ответственность за то, что трафик, проходящий от клиента и к нему, не будет изменён. Ага, конечно…

Посмотрим, какими способами его можно менять.

SSL MiTM & sslstrip
SSL портит всю малину, когда мы пытаемся подгадить пользователям. К счастью для атакующих, у многих сайтов есть проблемы с его реализацией, позволяющие нам заставить пользователя идти по нешифрованным соединениям. Примеры – переадресация с HTTP на HTTPS, включения HTTP-содержимого на HTTPS-сайтах, и т.п.

Удобным инструментом для эксплуатации уязвимостей служит sslstrip. Нам нужно лишь пропустить через него весь выходящий трафик, и во многих случаях мы сумеем навредить пользователю. Конечно, мы можем просто использовать самоподписанный сертификат, и заглянуть в SSL-трафик, проходящий через узел. Легко!

Подсадим браузеры на BeEF
Разглядев подробности трафика, можно приступать к вредительству. Например, можно использовать фреймворк BeEF, чтобы получать контроль над браузерами. Затем можно задействовать функцию из Metasploit «browser autopwn», в результате чего хост будет скомпрометирован, а мы получим возможность выполнять на нём команды. Приехали!..
Бинарники с чёрным ходом
Допустим, через наш узел качают бинарники – ПО или обновления к нему. Иногда пользователь даже может не подозревать о том, что обновления скачиваются. Нам нужно всего лишь добавлять к ним чёрный ход посредством инструментов вроде The Backdoor Factory. Тогда после выполнения программы хост окажется скомпрометированным. Снова приехали!..
Как поймать Уолтера Уайта
И хотя большинство выходных узлов Tor ведут себя прилично, не так уж и редки случаи деструктивного поведения некоторых из них. Все атаки, о которых мы говорили в теории, уже имели место.

К частью, разработчики подумали и об этом, и разработали меру предосторожности, направленную против использования клиентами плохих выходных узлов. Она работает как флаг в консенсусе под названием BadExit.

Для решения задачи отлова плохих выходных узлов разработана хитрая система exitmap. Работает она так: для каждого выходного узла запускается модуль на Python, который занимается логинами, скачиванием файлов, и прочим. Результаты его работы затем записываются.

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

Exitmap была создана в 2013 году в рамках программы «испорченные луковицы». Авторы нашли 65 выходных узлов, меняющих трафик. Получается, что хотя это и не катастрофа (на момент работы всего существовало порядка 1000 выходных узлов), но проблема достаточно серьёзная для того, чтобы отслеживать нарушения. Поэтому exitmap по сей день работает и поддерживается.

В другом примере исследователь просто сделал поддельную страницу с логином, и залогинивался туда через каждый выходной узел. Затем просматривались HTTP-логи сервера на пример попыток логина. Многие узлы пытались проникнуть сайт с использованными автором логином и паролем.

Эта проблема свойственна не только Tor

Важно отметить, что это проблема не одного лишь Tor. Между вами и фотографией котика, на которую вы хотите посмотреть, и так расположено достаточно много узлов. Достаточно лишь одного человека с враждебными намерениями, чтобы причинить немало вреда. Лучшее, что тут можно сделать – принудительно включать шифрование, где возможно. Если трафик нельзя распознать, его нельзя легко изменить.

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