Tor - что это такое и с чем его едят. Браузер TOR - мнимая анонимность

22.09.2019 Android

Специально для тех, кто хочет не зависеть от своего государства, своего провайдера, своего админа и т.д. А также для тех, кто не хочет, чтобы их "узнавали по IP" .

Сегодня расскажу про "проект TOR". В первой части расскажу, как и откуда скачать программу. Во второй части расскажу, как её поставить. В третьей - как запускать и пользоваться. В четвёртой - как настроить браузер Opera для работы с TOR.

Но сначала расскажу немного простыми словами, что такое "TOR". TOR - это аббревиатура от английского "The Onion Router" ("луковый роутинг"). Что это такое?

Вот что написано в wiki:

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

Какие задачи может решить TOR?
1. Посещение сайтов, заблокированные вашим государством, провайдером или системным администратором. Например, с помощью TOR легко можно зайти на Одноклассники или Вконтакте, как бы их не блокировало ваше руководство и администраторы.
2. TOR может работать даже через прокси (!!!).
3. Через TOR можно пустить трафик ваших IM (instant messenger), таких как ICQ, Mailru-агент, джаббер и т.д., даже если они у вас на работе заблокированы.
4. TOR не требует установки. Поэтому можно не бояться запрета на установку программ, которую поставил системный администратор.

Таким образом, TOR - эта реальная панацея от всех запретов с одной стороны и нарушением анонимности - с другой. Если вы решили, что вам это нужно, самое время его скачать, поставить и начать использовать.

Там надо найти эту картинку и нажать то, что обвёл красной рамкой:

На открывшейся странице обратите внимание на то, что обвёл синей рамкой:

Надо выбрать "Русский":

Вот теперь можно нажать на оранжевую кнопку с надписью "Download" и скачать TOR на русском языке . В настоящее время размер установщика составляет примерно 22 Мбайта.

Часть 2. Устанавливаем TOR Browser
Начну со странной фразы: "TOR browser не требует установки". Да-да! Тот файл, который вы скачали на самом деле - самораспаковывающийся архив. При запуске он спросит, куда распаковаться:


Нажмите на кнопку "", выберите каталог для распаковки. Внимание! Повторяю в 3-ий раз: TOR browser не требует установки, и вы можете запускать его даже с флешки! Поэтому можно его разархивировать даже на флешку. После выбора каталога, нажмите на кнопку "".

Программа будет какое-то время распаковываться:

После распаковки в том каталоге, который вы выбрали, появится каталог "Tor Browser":

Внутри него есть файл с названием "Start Tor Browser":

Собственно вот и всё. Можно запускать TOR browser.

Часть 3. Запускаем Tor
Тут всё просто! Помните файл "Start Tor Browser" из части №2? Запустите его!

Какое то время программа будет совершать какие-то шаманские действия:

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


Обратите внимание на синюю рамку. Эта зелёная луковица говорит о том, что Tor заработал. Из настроек рекомендую обратить внимание на галочку "Показывать это окно при запуске" (красная рамка). Рекомендую эту галочку снять. Всё равно всегда после начала работы Tor будет запускаться браузер "Mozilla Firefox" (переносная версия которого идёт вместе с программой).

Кроме того, иконка Tor-а размещается в трее и может принимать один из следующих видов:

  • - Tor запускается;
  • - Tor работает;
  • - Tor остановлен.

  • После запуска Tor-a браузер будет показывать примерно такое окно:

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

    Но тут есть одна проблема: это можно делать только в браузере Mozilla Firefox. Мало того, этот браузер должен быть запущен. Ведь стоит закрыть браузер, Tor тоже закроется. Поэтому поставил в этот браузер дополнение "Minimize to tray" (пусть там лежит). А сам настроил одну из своих Opera на работу с ним. И сейчас научу, как это сделать.

    Часть 4. Настраиваем Оперу для работы с TOR
    Определить, работает ли ваш браузере через TOR или нет, можно нажав на эту волшебную ссылку: https://check.torproject.org/?lang=ru .

    Вот что показал мне браузер Opera:

    Не работает... Но, как говорят в армии, не хочешь - научим, не можешь - заставим.

    Идём в настройки Оперы:

    Для этого надо нажать на кнопку "Opera" сверху слева у браузера (синяя рамка), в выпадающем меню выбрать пункт "Настройки" (красная рамка), а потом пункт "Общие настройки" (зелёная рамка). Или просто нажать "Ctrl + F12".

    Попадёте в настройки Оперы:


    Тут надо выбрать последнюю справа вкладку "Расширенные".

    Теперь надо выбрать вкладку "Сеть":

    Там нажать на кнопку "":

    Теперь вам необходимо заполнить всё так, как показано на скриншоте ниже:

    После этого нажмите на кнопку "OK".

    Проверяем браузер теперь с помощью волшебной ссылки. Всё в порядке!

    Теперь отвечу на вопросы, которые вы мне зададите.
    1. Можно ли использовать для Tor другие браузеры (например, Google Chrome)?
    Описание

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

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

    Где скачать и как установить Tor Browser

    Казалось бы, что нет ничего проще: скачать приложение, запустить установщик и пользоваться с чистой совестью. Но нет. Браузер Tor можно скачивать лишь с официального сайта или проверенных источников. О торрент-трекерах, файлопомойках и фишинговых сайтов лучше забыть. В лучшем случае там будет устаревшая версия софта, в худшем - заражённая вирусом программа. Во втором случае объяснять, что здесь плохого, не нужно, а вот старая версия может иметь некоторые уязвимости, которые были исправлены в обновлении.

    После этого потребуется запустить установочный файл. В появившемся окне выбрать язык интерфейса, далее указать путь (по умолчанию указывается путь, где лежит установочный файл), нажать кнопку «Установить» и дождаться окончания операции.

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

    Первый запуск Tor Browser






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



    Также при первом запуске на начальной странице «О проекте Tor» нужно нажать на ссылку «Новичок в Tor Browser? Давайте начнём» в левом верхнем углу и пройти «курс молодого бойца». В разделе «Безопасность» потребуется выбрать один из трёх параметров, в которых ограничиваются или вовсе отключаются JavaScript и некоторые функции на сайтах.

    Тонкая настройка Tor Browser

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

    Настройка расширения NoScript

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

    Чтобы изменить параметры NoScript нужно нажать на иконку дополнения в правом верхнем углу браузера и перейти в настройки, кликнув на кнопку «Настройки…». Далее следует изменить параметры для всех уровней доверия (по умолчанию, доверенные, недоверенные).



    Для уровней «По умолчанию» и «Недоверенные» рекомендуется снять отметки со всех пунктов, для «Доверенных» - установить все либо несколько необходимых.



    Вот обозначения того или иного пункта:

    • Script - различные типы скриптов, которые выполняются на сайтах
    • Object - элементы HTML с тегом object
    • Media - мультимедийный контент
    • Frame - фреймы, которые сайт пытается загрузить
    • Font - шрифты
    • WebGL - элементы WebGL
    • Fetch - API для выполнения различных HTTP-запросов
    • Other - неизвестные элементы

    Также на вкладке «Общие» не стоит активировать пункт «Глобальное отключение ограничений», а на вкладке «Расширенные» обязательно установить отметку на «Обезопасить подозрительные межсайтовые запросы».



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

    Настройка скрытых параметров браузера

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












    Чтобы найти те самые скрытые параметры, нужно в адресной строке ввести «about:config». Затем поочерёдно ввести в поиск следующие значения и изменить их. Для редактирования параметров надо дважды кликнуть левой кнопкой мыши либо нажать правой кнопкой и выбрать «Переключить». Вот список функций, которые нужно изменить:

    • «javascript.enabled» → false
    • «network.http.sendRefererHeader» → 0
    • «network.cookie.cookieBehavior» → 0
    • «browser.ping-centre.telemetry» → false
    • «toolkit.telemetry.archive.enabled» → false
    • «toolkit.telemetry.bhrPing.enabled» → false
    • «toolkit.telemetry.firstShutdownPing.enabled» → false
    • «toolkit.telemetry.hybridContent.enabled» → false
    • «toolkit.telemetry.newProfilePing.enabled» → false
    • «toolkit.telemetry.reportingpolicy.firstRun» → false
    • «toolkit.telemetry.shutdownPingSender.enabled» → false
    • «toolkit.telemetry.updatePing.enabled» → false
    • «toolkit.telemetry.server» → удалить все значения в строке

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

    Изменение файла конфигураций Tor Browser

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

    Для редактирования файла конфигураций понадобится перейти в папку, где установлен Tor Browser и открыть файл по пути «/Browser/TorBrowser/Data/Tor/torrc». Теперь в конце этого файла можно добавлять необходимые значения. Мы перечислим только наиболее важные из них.

    • ExitNodes {COUNTRY}
      Например, ExitNodes {us} или ExitNodes {us},{de},{fr}
      Данный параметр переопределяет выходной нод по умолчанию. Можно установить как одно значение, так и несколько. Страна указывается в виде 2-буквенного кода стандарта ISO3166.
    • EntryNodes {COUNTRY}

      Данный параметр переопределяет входной нод по умолчанию. Можно установить как одно значение, так и несколько. Страна указывается в виде 2-буквенного кода стандарта ISO3166.
    • ExcludeNodes {COUNTRY}
      Например, EntryNodes {us} или EntryNodes {us},{de},{fr}
      Данный параметр указывает Tor, через какие ноды нельзя подключаться к сети и избегать их. Можно установить как одно значение, так и несколько. Страна указывается в виде 2-буквенного кода стандарта ISO3166.
    • StrictNodes NUM
      Например, StrictNodes 0 или StrictNodes 1
      Данный параметр указывает Tor, можно ли подключаться к запрещённым нодам (определённые в предыдущем пункте). Если установлено значение «1», то браузер, в случае найденных нодов только из списка исключений, не сможет выйти в сеть. Если значение «0» - выход в сеть продолжится даже через исключённые ноды.

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

    Как пользоваться Tor Browser

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

    1. Не устанавливать в браузер лишние и непроверенные расширения.
    2. Не под каким предлогом не отключать дополнение NoScript.
    3. Часто обновлять цепочку нодов и переключать «Новую личность».
    4. Не открывать браузер Tor во весь экран.
    5. Не запускать браузер Tor с правами администратора.
    6. Никогда не заходить в почтовый ящик, аккаунты социальных сетей или других ресурсов, в которых имеется какая-либо информация о вас или которые как-то связаны с вашими настоящими аккаунтами. Исключение составляют только Onion-сайты и форумы. И конечно же нужно завести отдельную почту, для регистрации на таких ресурсах.
    7. Использовать виртуальную систему вместо основной для выхода в сеть Tor.
    8. Все скачанные в даркнете файлы проверять на вирусы, запускать их на виртуальной машине при отключенном интернете и не делать этого на основной системе.
    9. Регулярно проверять браузер на наличие обновлений и своевременно устанавливать их.
    10. Не стоит слепо доверять людям «на другом конце провода» - там могут оказаться как и правоохранительные органы (если вы сотворили что-то незаконное), так и хакеры или обычные «кидалы», которые ищут лёгкой наживы.

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

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

    Если у вас остались какие-либо вопросы или есть, чем дополнить статью - пишите об этом в комментариях.

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

    Tor Browser — что это?

    Тор браузер представляет собой переработанный под технологию Mozilla FireFox. Этот браузер удобен тем, что не требует каких-то сложных манипуляций по своей настройке. Он полностью рассчитан на неопытного пользователя, это обеспечивается подсистемой Tor под именем Vidalia. Не вдаваясь в ненужные подробности, представим пошаговую инструкцию пользования с Tor Browser.

    Как установить и настроить Тор браузер

    После установки браузера Tor на компьютер в каталоге установки можно обнаружить папку, которая так и называется – «Tor Browser». Старт браузера осуществляется щелчком по ярлыку «Start Tor Browser», расположенному в указанной папке. Вслед за этим пользователю выдается окно настроек Тор предоставляющее две возможности: произвести тонкую настройку прокси и брандмауэра или немедленно начать работу. Пользователь, подключенный к сети обычным образом, может ни о чем не беспокоится и смело жать кнопку «Соединиться». И только в особых случаях ему может понадобиться кнопка «Настроить». Впрочем, и в этом случае опытный пользователь компьютера не испытает никакого шока в этом браузере.

    • Перевод

    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. Между вами и фотографией котика, на которую вы хотите посмотреть, и так расположено достаточно много узлов. Достаточно лишь одного человека с враждебными намерениями, чтобы причинить немало вреда. Лучшее, что тут можно сделать – принудительно включать шифрование, где возможно. Если трафик нельзя распознать, его нельзя легко изменить.

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