...

суббота, 17 августа 2013 г.

Методы анонимности в сети. Просто о сложном



«Бывают наивны, как малые дети,

Те, кто верит в анонимность в интернете».

М. Сандомирский

Привет, хабраюзеры!


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

Чтобы было проще, разделим анонимность в Интеренте на два направления:



  • «Социальная анонимность» — это то, что человек сам осознанно или неосознанно рассказывает о себе в Сети.

  • «Техническая анонимность» — когда утечка деанонимизирующих данных связана с используемыми техническими средствами и приложениями.




Мы сконцентрируемся именно на Технической анонимности.

Прокси-серверы




Глобально, когда говорят прокси-сервер, то имеют в виду что-то, выступающее посредником между клиентом и адресатом.

В разрезе же обеспечения анонимности прокси-серверы бывают:


  • HTTP-(веб)-прокси-серверы. Такие серверы пропускают через себя только HTTP-траффик, по умолчанию добавляя в передаваемый траффик данные о применении прокси;

  • SOCKS-прокси-серверы. В отличие от HTTP-прокси-серверов, SOCKS передаёт всю информацию, ничего не добавляя от себя. Протокол SOCKS находится на сеансовом уровне модели OSI, этим достигается независимость от высокоуровневых протоколов: HTTP, FTP, РОРЗ и др., что и позволяет SOCKS пропускать через весь траффик, а не только HTTP;

  • CGI-прокси или «анонимайзеры», реализуемые с помощью скриптов на веб-сервере и представляющие клиенту веб-страницу, где он вводит адрес ресурса. После открывается страница запрошенного сайта, но в адресной строке браузера виден адрес CGI-прокси.




Схему работы прокси-серверов вы видите на картинке, тут всё просто:


Плюсы прокси-серверов:



  • прокси дешевы, в сети можно найти много бесплатных прокси.




Минусы прокси-серверов:


  • надо доверять прокси-серверу;

  • для http-прокси надо фильтровать HTTP-заголовки: «HTTP_X_FORWARDED_FOR: client, ip1...», HTTP_VIA, HTTP_FORWARDED и др.;

  • никакие протоколы прокси НЕ поддерживают шифрование между HTTP/SOCKS/Elite/Anonymous-прокси и клиентом. А SSL-прокси означает лишь то, что клиент может работать с https-ресурсами;

  • цепочки прокси неэффективны: "Привет Proxy1, отправишь моё сообщение:«forward to Proxy3; forward to Proxy4; forward to encrypted.google.com/c8e8df895c2cae-что-нибудь-ещё-здесь-зашифрованное-166baf' для Proxy2?» Спасибо!;

  • необходимость настройки прокси-сервера для каждого приложения либо использование отдельных программ-соксификаторов, например, Proxifier.




VPN/SSH




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

Схема работы VPN показана на картинке:



В настоящее время коммерческими провайдерами предлагаются следующие протоколы VPN:


  • PPTP – используется наиболее широко, быстрый, легко настраивается, однако считается «наименее защищённым» по сравнению с остальными;

  • L2TP + IPSec. L2TP обеспечивает транспорт, а IPSec отвечает за шифрование. Данная связка имеет более сильное шифрование, чем PPTP, устойчива к уязвимостям PPTP, обеспечивает также целостность сообщений и аутентификацию сторон;

  • OpenVPN – открытый и безопасный протокол, требует отдельного клиента для подключения;

  • SSTP – наиболее защищённый протокол, использующий SSL 3.0 со всеми его плюсами, в частности, это позволяет обходить многие блокировки VPN на уровне провайдера.




Практически все коммерческие VPN-провайдеры предлагаю выбор из двух протоколов: OpenVPN и PPTP. Реже предлагается протокол L2TP+IPSec. И совсем единицы предлагают протокол SSTP.

Отдельно стоит отметить сервисы, предоставляющие «DoubleVPN», когда перед тем, как выйти в Интернет, траффик проходит 2 разных VPN-сервера в разных странах, или даже «QuadVPN», когда используется 4 сервера, которые пользователь может выбрать сам и расположить в произвольном порядке.

Любопытное исследование, касающееся анонимности и надёжности коммерческих VPN-серверов, было проведено ресурсом torrentfreak.com: torrentfreak.com/vpn-services-that-take-your-anonymity-seriously-2013-edition-130302

VPN-провайдерам были заданы вопросы:


  • Храните ли вы журналы, позволяющие вам или третьим лицам сопоставить ip-адрес или временную отметку с вашим клиентом? Если да, то какие данные вы храните?

  • Под какой юрисдикцией работает ваша компания, и при каких обстоятельствах вы раскроете данные третьей стороне?

  • В случае, если вы получите DMCA-уведомление или его европейский аналог, что вы с ним сделаете?

  • С какими платежными системами Вы работаете, и как они связаны с учетными записями пользователей?




Резюмируя, стоит отметить, что большинство VPN-провайдеров в своих ответах единодушны: «Журналы не хранятся, а если и хранятся, то очень недолго, по ним вычислить абонента нельзя. На нас очень трудно надавить и заставить выдать хоть что-то». Разумеется, других ответов от сервисов, главной целью которых является обеспечения анонимности пользователей, ожидать не приходится.

Плюсы VPN/SSH:



  • быстро и удобно, не надо отдельно настраивать приложения.




Минусы VPN/SSH:


  • нужно доверять VPN/SSH-серверу/провайдеру.




Отмечу, что большинство тематических дополнений для браузеров и «программ для анонимности» используют в своей основе именно прокси-серверы и VPN-серверы для скрытия ip-адреса клиента.

Tor. Великий и ужасный




О Tor говорилось уже много, но я попытаюсь рассказать просто :)

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

Сейчас Tor — это 10 авторитетных (управляющих) узлов, около 4200 узлов-посредников, в том числе примерно 900 выходных узлов.

На картинке упрощённая схема работы Тоr



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

Тоr ругают потому, что требуют от него слишком многого: безопасно передавать в сеть траффик любых приложений, защиты от глобального наблюдателя, конфиденциальности передаваемых данных и пр. Но он решает главную задачу при своей модели угроз: достаточно высокий уровень анонимности клиента при передаче только http-траффика при соблюдении всех обязательных правил: www.torproject.org/download/download-easy.html.en

Плюсы Tor:



  • высокая степень анонимности клиента при соблюдении всех правил;

  • простота использования (скачал Tor Browser Bundle, запустил и пользуйся).




Минусы Tor:


  • выходной траффик прослушивается;

  • низкая скорость;

  • наличие управляющих серверов.




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



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

I2P




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

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

В I2P есть два главных понятия:


  • «туннель» – это временный однонаправленный путь через некоторый список узлов. Туннели бывают входящие и исходящие;

  • «сетевая база NetDb», которая в той или иной мере распределена по всем клиентам I2P. Её цель – хранение информации о том, как клиенту соединиться с определенным адресатом.




База NetDb хранит в себе:


  • RouterInfos – контактные данные роутеров (клиентов), используются для построения туннелей (упрощая, они представляют собой криптографические идентификаторы каждого узла);

  • LeaseSets – контактные данные адресатов, используются для связи исходящих и входящих туннелей.




На начало 2013 года I2P включала в себя 25.000 роутеров и 3.000 LeaseSets.

Расскажу про алгоритм взаимодействия узлов:

Шаг первый. Узел «Kate» строит исходящие туннели. Она обращается к NetDb за данными о роутерах и строит туннель с их участием.



Шаг второй. «Boris» строит входной туннель аналогично тому, как и строится исходящий туннель. Затем он публикует свои координаты или так называемый «LeaseSet» в NetDb (здесь отметьте, что LeaseSet передается через исходящий туннель).



Шаг третий. Когда «Kate» хочет оправить сообщение «Boris’у», она запрашивает в NetDb LeaseSet «Boris’а». И по исходящим туннелям пересылает сообщение к шлюзу адресата.



У I2P есть возможность выхода в Интернет через специальные Outproxy, но они неофициальные и по совокупности факторов даже хуже выходных узлов Тоr. Разработчики I2P говорят: «Хотите Интернет – используйте Тоr».

Плюсы I2P:



  • высокая степень анонимности клиента;

  • полная децентрализация, что ведёт к устойчивости сети;

  • конфиденциальность данных: сквозное шифрование между клиентом и адресатом.




Минусы I2P:


  • низкая скорость;

  • «свой Интернет».




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

Иные средства




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

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

Заключение




В заключение приведу цитату с главной страницы проекта I2P: «У анонимности нет однозначного порога, после которого можно расслабиться — мы не пытаемся создать нечто «абсолютно анонимное», но работаем над тем чтобы атаки на такую сеть становились бы всё более и более «дорогими» для злоумышленников».

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

PS. Если в комментариях увижу желание людей, то в следующих статья мы поговорим о:

1. Том, как с технической точки зрения работают Tor, I2P и о разнице между SOCKS 4, 4a, 5 с точки зрения анонимности.

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

3. Конкретных утечках деанонимизирующих данных.

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


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers. Five Filters recommends: 'You Say What You Like, Because They Like What You Say' - http://www.medialens.org/index.php/alerts/alert-archive/alerts-2013/731-you-say-what-you-like-because-they-like-what-you-say.html


Комментариев нет:

Отправить комментарий