id: Гость   вход   регистрация
текущее время 11:49 28/03/2024
Владелец: unknown (создано 07/06/2010 14:24), редакция от 11/06/2010 12:24 (автор: unknown) Печать
Категории: анонимность
https://www.pgpru.com/Библиотека/Статьи/SAC/52ЛуковичнаямаршрутизацияTor
создать
просмотр
редакции
ссылки

5.2 Луковичная маршрутизация Tor


В 2003 году программа луковичной маршрутизации NRL начала развёртывание дизайна третьего поколения, названного "Tor"8. Первоначальный дизайн Tor был опубликован в 2004 [65]. Tor полагается исключительно на TCP потоки через сеть перенаправляющих узлов и в частности подстроен под работу с вэб-трафиком с помощью очистителя содержимого трафика Privoxy.


В сетевой архитектуре Tor список серверов добровольцев скачивается с сервера директорий. Затем клиенты могут создавать пути, выбирая три случайных узла через которые пройдёт их коммуникация. Вместо "луковиц", которые посылались для распространения криптографического материала, Tor использует итеративный механизм. Клиент соединяется с первым узлом, затем он запрашивает этот узел для соединений со следующим. На каждом этапе используется двунаправленный канал для осуществления аутентифицированного обмена ключами Диффи-Хеллмана. Это гарантирует наперёд заданную секретность и сопротивление принуждению: всегда нужны только краткосрочно действующие ключи. Впервые этот механизм был описан в 2002 году как часть дизайна луковичной маршрутизации, Cebolla [25]. Это отличалось как от двух первых поколений луковичной маршрутизации от NRL, так и от дизайна Freedom. Аутентификация того, что ключ между клиентом и луковичным маршрутизатором был установлен правильно до сих пор осуществляется с помощью RSA. Существовали опубликованные предложения по построению цепочек полностью на алгоритме Диффи-Хеллмана для большей эффективности [117, 153], но на момент написания так ничего и не было выполнено. Хотя это и показалось перспективным, это потребовало дополнительного анализа, перед тем как это можно было бы внедрить в Tor. Интересно, что при проектировании второго поколения луковичной маршрутизации NRL, переход на использование Диффи-Хеллмана для построения цепочек рассматривался. Но однако это делалось исключительно с точки зрения вычислительной эффективности, не принимая во внимание никаких дополнительных свойств безопасности, которые это даёт, таких как наперёд заданную безопасность.


Как отмечалось ранее, Tor не пытается обеспечить безопасность даже против пассивных наблюдателей за цепочками. Мы уже упоминали про техники анализа трафика, которые разрабатывались годами для выслеживания потоков непрерывного трафика, проходящего через сети с небольшой задержкой [40, 129, 152, 174, 193, 200, 201]. Отличающуюся, но сходную угрозу в исследованиях прорабатывали в сообществе детектирования вторжений. Этот подход пытается раскрыть машины, используемые в качестве перевалочных пунктов для вторжения [20, 194]. Такой подход труден для противостояния, потому что создание больших задержек трафика или больших объёмов покрывающего трафика слишком затратно. Вместо этого Tor выбирает безопасность за счёт большой применимости и малозатратности в обслуживании [10, 63].


Tor заключает гибкость запуска клиента отдельно от узла-маршрутизатора и гибкие входящие и исходящие политики, представленные в дизайне второго поколения. Поскольку луковичная маршрутизация получает безопасность за счёт сокрытия маршрутов, но является уязвимой к тайминг-атакам, безопасность против противника, принуждающего или наблюдающего за c узлами в сети из n луковичных маршрутизаторов в лучшем случае c2 / n2 [79, 183]. Чем проще назависимым людям запускать свои узлы в сети, тем выше безопасность системы. За счёт создания сети, построенной на добровольном участии, Tor уходит от некоторых трудностей, которые происходят при коммерческом развёртывании и также является масштабируемым [2]. Другие инновации в использовании, добавленные в Tor, включают разделение контролирующего протокола от базовой функциональности Tor-маршрутизации и графический интерфейс Vidalia, изначально созданный Мэттом Эдманом и Джастином Хипплом. В дополнение к другим особенностям, GUI предоставляет простой интерфейс конфигурирования как сервера так и клиента и выбор возможности переключения клиента в сервер одним щелчком мыши. Также есть простой плагин для Firefox — Torbutton, который позволяет помимо всего прочего, включать и выключать маршрутизацию через Tor одной кнопкой. Tor также существует с графическим инсталлятором, в котором собраны сразу Tor, Vidalia, Privoxy и TorButton. Документация на Tor и смежные программы переведена по крайней мере на 17 языков на момент написания. Все эти вклады, делающие Tor более пригодным для пользователей, также повышают количество использования и широту развёртывания, а следовательно и безопасность [63, 66].


Уязвимость против пассивного наблюдателя делает Tor слабым против неисследованных ранее атак. Во-первых, требуется реалистичная оценка того, что действительно нужна одна сторона, способная просматривать множество точек вдоль маршрута. Во многих случаях топология интернета такова, что сети, кажущиеся несвязанными, на самом деле связаны через общий узел или удалённые сети оказываются подвержены малозатратному прослеживанию со стороны одного сервис-провайдера интернета (ISP), автономные системы (AS), точки обмена интернет-трафиком (IX) и аналогичные вещи [73, 78, 144]. Второе возможное направление атаки, представленной Мёрдоком и Дэйнезисом в [143] использует непрямые сетевые измерения для осуществления анализа трафика и устраняет предположение о том, что пассивный атакующий нуждается в локальном доступе к коммуникации для осуществления анализа трафика. Атакующий перенаправляет трафик через все луковичные маршрутизаторы и измеряет вносимые ими задержки: эта латентность подвержена воздействию других потоков, проходящих через луковичный маршрутизатор. Возможны долговременные корреляции между известными сигналами, внедряемыми в злонамеренный сервер и измерениями. Это позволяет противнику выслеживать соединение до первого луковичного маршрутизатора, используемого для его анонимизации. Опубликованная атака относилась ко времени когда сеть была значительно меньших размеров, чем сейчас (35 узлов против сотен). Интересным и неясным вопросом остаётся то, насколько эффективно может масштабироваться текущий размер сети. Предыдущие работы предупреждали, что непроверяемый размер длины пути может реально влиять на такое масштабирование [74].


Tor также предоставляет механизм скрытых сервисов. Это другой образец защиты отвечающей стороны в анонимной коммуникации, а не только её инициатора. Скрытые сервисы могут быть использованы для защиты контента от цензуры и серверов от DoS поскольку сложно атаковать то, что нельзя найти. Скрытый сервер открывает анонимное соединение и использует его для объявления контактной точки. Клиент, который хочет контактировать с сервером, достигает контактной точки и договаривается об отдельном анонимном "рандеву"-канале, используемом для перенаправления действительных коммуникаций. Атака против этой ранней архитектуры была продемонстрирована Овелье И Сайверсоном в [152]. Интуитивно основа атаки состоит в том, что противник может открыть множество соединений к скрытому серверу, последовательно или параллельно и может контролировать эти потоки трафика к серверу. Противнику нужно контролировать один подверженный маршрутизатор и ждать пока этот маршрутизатор выберет этот сервер как первый узел для нового анонимного пути, который он построит к точке рандеву. Затем противник берёт под эффективный контроль два узла в анонимном пути, один из которых — следующий по пути к анонимному серверу и анонимность, обеспечиваемая сервером, полностью компрометируется.
Хотя атаки пересечения против анонимных систем были хорошо известны в литературе, эта была первая атака такого рода, использованная в реальных условиях. Скорость, с которой она могла быть завершена (обычно несколько минут) подсказала введение сторожевых узлов во все цепочки Tor. Поскольку время продолжения оконечной коммуникации цепочки, по которой связываются компрометируемые стороны, было очень мало, то распространение доверия на узлы, контактирующие с инициатором цепочки имело мало значения. Вместо этого малое число узлов выбиралось доверяемыми и использовалось как начальные (сторожевые) узлы для всех цепочек от инициирующего клиента. Сторожевые узлы основаны на более общей идее вспомогательных узлов для анонимных систем, предложенных Райтом и др. [199}. Оверлье и Сайверсон увеличили эффективность этих атак за счёт заведомо неверного анонсирования пропускной способности со стороны враждебного узла, что приводит к его выбору с более высоким предочтением. Были размышления о том, что при помощи множества узлов такие атаки могут быть легко направлены против обычной цепочки, а не только против построения соединений со скрытыми сервисами. Это было позднее продемонстрировано Баурером и др. [11], которые показали, что кто-либо может использовать такую заведомо неверную информацию для увеличения шансов быть выбранным в качестве сторожевого узла. Есть контрмеры, такие как ограничение доступа к самостоятельному сообщению пропускной способности, но поскольку они являются ограниченными против атак, то вопрос о более сильных контрмерах продолжает находиться в стадии исследований.



8Это было одновременно рекурсивным акронимом, назначенным Роджером Динглдайном для "Tor's Onion Routing" и способом сообщить людям в то время, что он работал на луковичной маршрутизации от NRL, а не на какой-то другой версии луковичной маршрутизации. Следует отметить общепризнанное написание "Tor", а не "TOR".


Назад | Оглавление | Дальше


 
— Гость (11/06/2010 22:47)   <#>
На каждом этапе используется двунаправленный канал для осуществления аутентифицированного обмена ключами Диффи-Хеллмана. Это гарантирует наперёд заданную секретность и сопротивление принуждению: всегда нужны только краткосрочно действующие ключи.
Как всё это соотносится с /comment23359, /comment23196 и /comment23239? Сошлись же на том, что если атакующий MITM не делает, то расшифровать записанный Tor/ssh/vpn-трафик нельзя, но в то же время в коментах говорилось, что якобы можно – это специфика сеансовых слабости ключей?
— unknown (12/06/2010 15:58)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Тут имеет место парадокс в оценке ситуации. Что такое PFS, ("совершенная") наперёд заданная секретность?
Это когда безопасность обеспечивается "отсюда" или "с начала" и "вперёд дотуда" пока не настал "песец". То есть от точки 0 до момента X. Момент X — это взлом сервера, установка туда троянов, когда оператор Tor-узла становится злонамеренным сам или по принуждению и т.д.

Из-за случайных (давали оценку этому) стечений обстоятельств в PRNG OpenSSL появилась дырка и эта версия либы и все последующие с этой дыркой распозлись по Tor-узлам под Debian. Вот это момент X и настал. Поскольку DH-параметры сеанса стали нестойкие.

Но парадокс восприятия в том, что об этом никто не знает (кроме гипотетических злоумышленников). Наступает момент Y. Дыру опубликовывают и закрывают. Если у противника были записи трафика во временном интервале {X ... Y}, то он может расшифровать данные сеанса до узла. Но никак не ранльше момента X, что полностью согласуется с моделью PFS.

С практической точки зрения, противнику должно повести, чтобы расшифровать хотя бы только некоторые варианты соединений, в которых трафик проходит только через Debian-узлы с этой версией OpenSSL.

Теоретически PFS "совершенна" (вот почему слово perfect может ввести в заблуждение) только в рамках более общей модели. Например, если Диффи-Хеллман (DH) со сравнительно коротким ключом (как в Tor) сможет быть расшифрован в будущем, то можно расшифровать и деанонимизировать весь предыдущий записанный трафик. Это уже не просто момент X, а "большой песец", против которого система при таких параметрах нестойка.
— Гость (08/08/2010 06:11)   <#>
если Диффи-Хеллман (DH) со сравнительно коротким ключом (как в Tor) сможет быть расшифрован в будущем, то можно расшифровать и деанонимизировать весь предыдущий записанный трафик.
А вот в ssh (см., например, /comment39088, в отличие от Tor и OpenVPN(?)), это не так: даже знание приватного ключа, но aposteriori, не даёт ничего нового злоумышленнику чтобы упростить расшифрование трафика. Почему так? В чём отличие? Разве там не DH? Казалось бы, если есть уязвимость типа OpenSSL в Debian, то либо все три протокола (OpenVPN, OpenSSH, Tor), завязанные на OpenSSL, уязвимы в плане расшифрования записанного трафика, либо все три нет. В чём тут концептуальное отличие? В том, что узявимые как в Debian ключи не позволяют сгенерировать стойкие симметричные ключи шифрования, что не эквивалентно ситуации с стойким асимметриачным ключом, которым не смогли вовремя воспользоваться для MITM?
— SATtva (08/08/2010 12:19)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Казалось бы, если есть уязвимость типа OpenSSL в Debian, то либо все три протокола (OpenVPN, OpenSSH, Tor), завязанные на OpenSSL, уязвимы в плане расшифрования записанного трафика, либо все три нет. В чём тут концептуальное отличие?

Выделенное утверждение в отношении OpenSSH неверно. В этом и есть концептуальное отличие.
— Гость (08/08/2010 12:34)   <#>
Хм... у меня badtrip?
Владелец: SATtva (создано 13/05/2008 19:43), редакция от 14/05/2008 21:20 (автор: SATtva)
...
Все пользователи Debian и Ubuntu должны исходить из того, что все шифровальные ключи для SSL, SSH и OpenVPN, сгенерированные ими в последние два года, скомпрометированы! Действуйте исходя из этого.
©.
— SATtva (08/08/2010 13:21)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Видимо, там следовало уточнить, что это относится к случаю, когда ssh-ключи были сгенерированы в OpenSSL. Наверное. (Я не могу сейчас с уверенностью утверждать, что два года назад в Debian OpenSSH не полагался на OpenSSL для генерации ключей; советую поискать подробности самостоятельно.) Здесь тема SSH офф-топик, воздержитесь от её дальнейшего обсуждения.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3