- Кирилович Екатерина Игоревна , бакалавр, студент
- Башкирский государственный аграрный университет
- БЕЗОПАСНОСТЬ ДАННЫХ
- ЛУКОВАЯ МАРШРУТИЗАЦИЯ
- АНОНИМНОСТЬ В ИНТЕРНЕТЕ
В данной статье рассматривается механизм работы технологии анонимного обмена информацией через компьютерную сеть с помощью так называемой луковой маршрутизации под названием TOR (The Onion Route).
- Системы обнаружения вторжений. Принципы функционирования
- Совершенствование формирования фонда капитального ремонта в многоквартирных домах
- Нормативно-правовое регулирование вопросов оценки качества предоставляемых государственных (муниципальных) услуг в России
Луковая маршрутизация была разработана Михаэлем Ридом, Дэвидом Голдшлагом и Паулем Сиверсоном, после чего ее запатентовали Военно-морскими силы США в 1998 году. Доминирующей технологией, использующей луковую маршрутизацию, в 2009 г. стала анонимная сеть Tor, которую мы и будем рассматривать.
Луковая маршрутизация представляет собой технологию анонимной передачи информации через компьютерную сеть. Принцип ее работы заключается в том, что сообщения неоднократно шифруются, после чего отсылаются по нескольким сетевым узлам, которые именуются луковыми маршрутизаторами .
Причем каждый роутер удаляет слой шифрования, для того чтобы открыть трассировочные инструкции и далее отослать сообщения на следующий маршрутизатор, где повторится данная процедура. Так промежуточные узлы не знают ни источника, ни пункта назначения, ни содержания сообщения.
Идея самой луковой маршрутизации (ЛМ) базируется на сохранении анонимности отправителя и получателя сообщения и обеспечивает защиту данных во время их передачи по сети.
"The onion route" работает в соответствии с принципом смешанных соединений Чаума: то есть сообщения передаются через последовательность прокси («луковых маршрутизаторов»), которые, в свою очередь, перенаправляют данные сообщения в неизвестном направлении. И между роутерами сообщения передают в зашифрованном виде, для того чтобы избежать «прослушки» злоумышленником.
Преимущество данной системы (и в общем смешанных соединений) заключается в том, что не нужно доверять каждому участвующему маршрутизатору. И даже при условии взлома одного или нескольких маршрутизаторов, анонимное соединение все равно будет установлено. Это достигается с помощью того, что каждый роутер в сети принимает сообщения, зашифровывает их заново и далее передает их на другой луковый роутер. Однако даже несмотря на все это луковая маршрутизация не дает гарантий анонимности для отправителя или получателя от всех прослушивающих. Но она обеспечивает очень высокую степень несвязности, что затрудняет для подслушивающего определение адреса того, кто отправляет сообщения, и того, кто их получает .
Луковая маршрутизация, как и любая система, имеет несколько слабых мест. С одной стороны, она не может обеспечить защиту против анализа синхронизации. То есть если злоумышленник наблюдает за сравнительно слабо загруженным луковым роутером, он способен соединять входящие/исходящие сообщения с помощью просмотра того, насколько близко по временному интервалу они были получены и переправлены.
Помимо этого, сети луковой маршрутизации уязвимы к предшествующим и перекрещивающимся атакам. В предшествующей атаке хакер, контролирующий луковый роутер, отслеживает сессии во время их прохождения через несколько перестроений пути. И если этот злоумышленник наблюдает, как меняется путь в ходе нескольких перестроений, он может увидеть первый роутер в цепи отчетливее. Перекрещивающиеся же атаки основываются на том, что луковые роутеры периодически перестают работать или отключаются от сети, когда к сети подключаются новые маршрутизаторы. И любой путь передачи, продолжающий функционировать, не может проходить ни через отключённые маршрутизаторы, ни через роутеры, которые присоединились к сети в более позднее время. Так луковая маршрутизация не в состоянии защитить данные, которые проходят через выходные узлы, отдавая оператору весь доступ к передаваемому содержанию, в связи с этим луковые сети не должны использоваться для передачи личной информации без использования конечной криптографии, как, например, SSL.
В августе 2004 г. Роджер Динглдайн, Паул Сиверсон и Ник Мэтьюсон на тринадцатом USENIX симпозиуме по безопасности представили всеобщему вниманию систему Tor, луковый маршрутизатор второго поколения. Данная система свободна от патентов на оригинальную луковую маршрутизацию, в связи с тем, что она использует телескопические схемы. Помимо этого, Tor обеспечивает превосходную секретность пересылки, используя очистку протокола снаружи слоя луковой маршрутизации, то есть создавая преимущественно TCP-передачу. Также оно обеспечивает конечную проверку целостности и вариативные политики выхода для роутеров.
Tor представляет собой свободное программное обеспечение с целью реализации второго поколения луковой маршрутизации. Другими словами, это система прокси-серверов, позволяющая установить анонимное сетевое соединение, защищённое от прослушки. Данная система написана преимущественно на языках программирования Си, C++ и Python.
Используя Tor, пользователи с легкостью могут оставаться анонимными в интернете, посещая сайты, ведя блог, отправляя мгновенные и почтовые сообщения, а также работая с иными приложениями, которые используют протокол TCP. Анонимность трафика обеспечивается путем использования распределенной сети серверов или узлов, которые называются многослойными маршрутизаторами. Помимо этого технология системы также обеспечивает защиту от механизмов анализа трафика, ставящие под угрозу приватность в интернете и конфиденциальность деловых контактов и, в общем, тайну связи.
Также Tor использует сетевые уровни onion-маршрутизаторов, что позволяет обеспечивать анонимные исходящие соединения. Еще в 2011 г. проект по созданию системы Tor удостоили премии общественной значимости Фонда свободного программного обеспечения, в 2012 г. - почетной награды EFF Pioneer Award.
Tor создали по федеральному заказу в «Центре высокопроизводительных вычислительных систем» Исследовательской лаборатории Военно-морских сил США совместно с DARPA в рамках проекта Free Haven. Причем в 2002 г. данная разработка была рассекречена, а первичные данные передали независимым разработчикам, впоследствии создавшим клиент-серверное приложение и опубликовавшим исходный код под свободной лицензией. Значительные суммы в качестве финансовой поддержки для Tor вкладывают Министерство обороны, Государственный департамент США и Национальный научный фонд. Уже в августе 2014 г. Tor включал больше 6000 узлов, которые разбросаны по всем континентам Земли, за исключением Антарктиды, причем число участников сети превышает 2 млн. Согласно данным Tor Metrics, в июле 2014 г. РФ вошла в тройку стран, которые наиболее активно используют Tor. В день к сети подключаются в среднем 159 000 пользователей из РФ, уступая лишь США с 322 000 пользователей и Германии с 205 000 пользователей. При этом в январе Россия занимала лишь 9 строчку с 91 900 пользователей.
На сегодняшний день существуют версии Tor почти для всех современных операционных систем (Windows, дистрибутивы Linux, Unix-подобные ОС, мобильные платформы, прошивки(OpenWrt, RouterOS, Tomato, Gargoyle) и т.д. Кроме того, Tor может быть установлен и настроен для использования в таком открытом аппаратном обеспечении, как Raspberry Pi, Chumby и PogoPlug. Частные же лица пользуются системой в качестве защиты неприкосновенности частной жизни и для получения доступа к информации, которая заблокирована интернет-цензурой. Участники СМИ также используют Tor для безопасного общения с информаторами и диссидентами. Неправительственные организации пользуются системой для подключения своих работников к необходимым сайтам в заграничных командировках, когда не нужно афишировать их работу. Корпорациям необходима система как безопасный способ для проведения анализа конкурентоспособности.
Правоохранительные органы, спецслужбы и военные также активно пользуются системой Tor для обеспечения секретности при выполнении определенных задач, для скрытого посещения сайтов (без распознавания IP-адреса своих учреждений), а также для сбора различных сведений и обеспечения безопасности своих сотрудников при проведении опасных или секретных операций.
Таким образом, подводя итог вышесказанному, можно прийти к выводу, что в рамках данной статьи была рассмотрена технология анонимного обмена информацией по открытым каналам сети Интернет под названием TOR. Очевидно, что использование лишь одной технологии луковой маршрутизации не обеспечивает должного уровня анонимности. TOR необходимо использовать в комплексе с другими средствами защиты информации (например, с PGP).
Список литературы
- Луковая_маршрутизация [Электронный ресурс] – Режим доступа: http://poli-grafi.ru/Луковая_маршрутизация – 27.05.2016.
- Tor - Академик [Электронный ресурс] – Режим доступа: http://dic.academic.ru/dic.nsf/ruwiki/233279 – 28.05.2016.
- СЕТЕВЫЕ ТОПОЛОГИИ «ШИНА» И «ЗВЕЗДА»: ПРЕИМУЩЕСТВА И НЕДОСТАТКИ Мошкина К.А., Шарафутдинов А.Г. Экономика и социум. 2014. № 2-5 (11). С. 335-337.
- КОМПЬЮТЕРНЫЕ СЕТИ. ВИДЫ КОМПЬЮТЕРНЫХ СЕТЕЙ Шарафутдинов А.Г., Бударина Я.С. Экономика и социум. 2014. № 2-4 (11). С. 1180-1181.
Многие современные домашние роутеры по сути представляют собой мини-компьютер - у которого разве что нет монитора и мыши/клавиатуры. Впрочем, учитывая назначение этих самых железяк, последнее - вовсе не проблема.
Как правило, в базовой прошивке роутер умеет раздавать интернет на один или несколько LAN-портов, а также обслуживать собственную беспроводную сеть. Более продвинутые модели зачастую включают один или несколько портов USB, куда можно подключить, например, принтер или флэшку с файлами.
Однако всё богатство возможностей этого железа открывается при использовании открытых прошивок. Для новичков - dd-wrt, для более продвинутых - серия open-wrt и прочие wrt-based.
В настоящей статье речь пойдёт о настройке анонимизированной wifi-точки на базе роутера Asus RT-N16 с прошивкой dd-wrt и optware.
Изначальная идея не нова - она давно витает в воздухе, и одна из реализаций даже как-то анонсировалась на Хабре. Тем не менее, что касается деталей - то их, как правило, не найти. В рядовых «how-to» я этого не нашёл, а явно знающим гуру, видимо, не до написания подобных инструкций. Поэтому пришлось во всём разбираться самому. Ну и заодно фиксировать сделанное - на будущее.
Итак, имеем роутер с прошитым dd-wrt. У этой специфической модели, увы, нет поддержки Open-wrt (или, по крайней мере, не было на тот момент, когда это потребовалось. Сейчас уже появилась бета, но она пока что не претендует на стабильность).
Что потребуется ещё? Если ограничиться только лишь tor, то, возможно, ничего. Можно обойтись без всего optware и даже без внешней флэшки. Нужно лишь найти, куда упихать в роутер около 1,5Мб бинарника. Я, тем не менее, поднимал у себя не только лишь точку доступа, а полноценный домашний сервер, основной задачей которого было поддерживать сеть (основные службы - DNS, DHCP), раздавать интернет, содержать небольшую (гигабайт этак на 500) файлопомойку с доступом по NFS (ну, звиняйте. Windows не использую, поэтому SAMBA не нужна), самостоятельно пополнять эту файлопомойку свежими торрентами, хостить несколько веб-морд для разных поделок (весь фарш: - lighttpd, php, mysql и даже sphinx), служить failsafe-сервером для загрузки Ubuntu по сети (чтобы при надобности в «мёртвое тело» вставлять не флэшку с образом, а сетевой кабель). И, видимо, всё (а может и забыл чего). Для того, чтобы внешне всё было красиво и с минимумом проводов - жёсткий диск на 640гб для всего задуманного был помещён прямо внутрь роутера, и свободного места тем самым существенно прибавилось. А tor на роутере ставился, скорее, из любопытства. Однако - прижился и стабильно работает.
Для установки и настройки необходим доступ к роутеру через telnet или (что гораздо безопаснее) через ssh. Доступ можно устроить (или подсмотреть) в веб-интерфейсе dd-wrt.
Сперва устанавливаем tor:
Root@DD-WRT:~# ipkg install tor
Затем правим его конфиг. В случае с optware он располагается в /opt/etc/torrc. Опять же, замечу, что путь к конфигу по умолчанию вовсе не является обязательным. Программу всегда можно запустить с другим файлом конфигурации, но его придётся явно указывать в опциях запуска. В этом плане путь по умолчанию всё же проще, покуда делает запуск программы более лаконичным.
Конфиг по умолчанию хорошо прокомментирован, и основную настройку можно произвести, просто читая эти комментарии, без всяких сторонних руководств. В моём случае роутер обслуживает домашнюю сеть 192.168.1.0/24. В ней я решил сделать классический tor с доступом как через прокси socks5 на порту 9100. Помимо этого я решил сделать анонимизированную точку доступа, которая пустит пользователей в сеть 192.168.2.0/24, где вся связь с внешним миром будет лишь через tor (прозрачный прокси), либо просто обрублена. Иными словами - мы имеем wifi-точку, подключившись к которой мы никак не попадём ни к соседям из той же сети (192.168.2.0/24), ни в мою домашнюю сеть (192.168.1.0/24), ни на локальные сервисы роутера. А можем попасть только в интернет, причём только анонимным образом (через tor).
Для этого в конфиге прописаны следующие локальные параметры:
Для домашней сети:
SockListenAddress 192.168.1.5:9100
По сути это означает, что для того, чтобы попасть анонимно в интернет я должен настроить браузер на подключение через socks5-прокси с указанным адресом (это внутренний адрес роутера).
Для анонимной сети:
TransPort 9040
TransListenAddress 192.168.2.1
DNSPort 9053
DNSListenAddress 192.168.2.1
В анонимной сети клиенты никуда подключаться не будут, а указанные порты и адрес нужны лишь для настройки правил iptables.
Помимо этих настроек также имеет смысл назначить адрес виртуальной сети:
VirtualAddrNetwork 10.192.0.0/10
Этот адрес необходим в случае перехода по внутренним анонимным сервисам (т.н. "hidden service") тор-сети. Это адреса сайтов, располагающиеся в домене.onion. Такого домена в реальной жизни нет; однако будучи в tor, их собственный DNS распознаёт такие адреса и выводит вас к нужному ресурсу, спрятанному где-то в глубине сети. При этом фактический ip-адрес такого сайта скрыт, и узнать его невозможно. В этом случае для программ, которые сперва разрешают адрес узла через DNS, а потом подключаются к полученному ip-адресу, tor-демон создаёт временный адрес из указанной маски виртуальной сети. Иными словами, при попытке подключиться к какому-нибудь узлу superpuper.onion он «разрешится» в адрес, например, 10.192.0.1. И программа, подключаясь к этому адресу, будет через «луковые слои» tor-шифрования достигать нужного ресурса.
Что касается настройки «публичной» части конфига - там всё, согласно комментариям в самом файле.
В результате этих настроек мы получим демона, который
1) является proxy-socks с адресом 192.168.1.5:9100
2) является прозрачным proxy с адресом 192.168.2.1, причём помимо tcp-трафика умеет обрабатывать DNS-запросы.
С локальным socks-прокси всё ясно. Просто настраиваем любой браузер в домашней сети на выход в интернет через указанный прокси - и всё работает.
Ничуть не сложнее доступ с удалённой машины (у нас же есть ssh-консоль на роутер - значит, ничего не мешает просто пробросить порт:
Ssh -L localhost:9100:192.168.1.5:9100 homerouter
И после этого на той машине заработает Socks5 по адресу localhost:9100.
Теперь настраиваем точку доступа.
Для этого в gui dd-wrt заходим во вкладку wireless и там добавляем виртуальный интерфейс. Имя придумайте сами (я назвал бесхитростно: tor_network). Конфигурация сети - unbridged (т.е. точка не имеет связи с другими интерфейсами и как бы образует свой собственный замкнутый мирок). Запрещаем там же маскарадинг и мультикаст и назначаем адрес сети: 192.168.2.1/255.255.255.0. Затем на вкладке wireless security настраиваем, если нужно, доступ к точке. Я в своём случае поставил «disabled», т.е. создал открытую точку.
Таким образом у нас на роутере работают одновременно две разные сети: домашняя (защищённая WPA2) и вновь созданная tor_network, которая изначально открыта. Впрочем, это не даёт никому никаких привилегий, поскольку подключившись к этой открытой сети мы никуда не попадём:)
Двигаемся дальше. На вкладке Setup/Networking ищем в самом низу раздел DHCPD и добавляем запись для интерфейса wl0.1 (это, собственно, и есть железячное имя нового виртуального wifi-интерфейса), чтобы он назначал адреса из подсети 192.168.2.0/24. Скажем, 50 адресов начиная со 100 вполне хватит.
Теперь подключаясь к нашей открытой точке мы получим внутренний ip-адрес.
Осталось лишь подключить эту точку к прозрачному tor.
Это делается с помощью iptables:
CRNET="192.168.2.0/24"
TORCMD="iptables -t nat -A PREROUTING -i wl0.1"
TORPORT="9040"
TORDNS="9053"
# transparent tor for tor_network wireless
$TORCMD -p udp --dport 53 -j REDIRECT --to-ports $TORDNS
$TORCMD -p udp --dport 67 -j RETURN
$TORCMD -d $CRNET -j DROP
$TORCMD -p tcp --syn -j REDIRECT --to-ports $TORPORT
$TORCMD -j DROP
Что делаем?
1. Редиректим весь udp-трафик на 53-й порт (dns) на порт нашего демона.
2. Пропускаем спокойно весь udp-трафик на 67-й порт (там висит dhcp)
3. Весь остальной трафик во внутреннюю открытую сеть, откуда бы он ни был, отсекаем.
4. Редиректим весь tcp-трафик на порт прозрачного прокси нашего демона.
5. Весь остальной трафик открытой сети отсекаем.
Этот скрипт можно вставить в Administration/commands и сохранить как firewall-скрипт.
Проверяем работу: подключаемся к точке tor_network и открываем адрес
How to turn a Raspberry Pi into a TOR network router and keep your privacy online
TOR: The Onion Router is software that enables you to use the internet anonymously. By setting up TOR on a Raspberry Pi you can create a network router that scrambles all of your internet connection.
Turning a Raspberry Pi into a TOR Router has suddenly become much more appealing in the US. A recent change in law enables ISPs to track customer usage and use it to sell advertising.
Father Robert Ballecer on Know How explains why this is important.
The way that they justified this change in rules was: ‘well it’s not fair’ because some businesses are bound by these security laws and privacy policies. Whereas Google and Facebook can sell your information to anyone.’
Here’s the difference: if I don’t like Google’s privacy policy; I don’t use Google. If I don’t like Facebook’s privacy policy; I don’t use Facebook. Which I don’t. Because I don’t like their privacy policy. I have no other option than to use Comcast. There is literally no other broadband provider.
Turn a Raspberry Pi 3 into a TOR network router
Know How uses a Raspberry Pi 3 to set up a TOR network router. They choose a Raspberry Pi 3 specifically because it has built-in wireless networking (the Pi Zero W would work well in this regard too).
The Raspberry Pi connects to the TOR network. All you have to do is then connect the Raspberry Pi to your broadband network, and connect your device to the Raspberry Pi.
The instructions are reasonably clear and Know How has show notes available for download. The build is based on the RPI-Wireless-Hotspot software script by Harry Allerston.
This software enables you to configure a Raspberry Pi to act as a WPA encrypted hotspot and select from a series of DNS providers.
The build is based on the RPI-Wireless-Hotspot software script by Harry Allerston. This software enables you to configure a Raspberry Pi to act as a WPA encrypted hotspot and select from a series of DNS providers.