Как стать автором
Обновить

Анонимные сети и timing атаки: Введение

Время на прочтение 6 мин
Количество просмотров 8.1K
Введение | Tor | Tarzan и MorphMix | Малозатратная атака | Малозатратная атака на Tarzan и Morphmix | Принципы построения безопасных систем (заключение)

Представляю вашему вниманию часть статьи признанных исследователей в области информационной безопасности, переводом которой мы (участники "openPGP в России") сейчас занимаемся. Среди авторов Willy Susilo (Co-Director, Centre for Computer and Information Security Research).

Приведенное ниже "Введение" из статьи "Принципы построения анонимизирующих систем с малыми задержками противостоящих timing-атакам" адресовано всем интересующимся сетевой анонимностью. Авторы доступным языком раскрывают основы анонимизаторов и возможных на них атак, с упором на самому популярную в настоящий момент анонимизирующую сеть "Tor".



Введение



Впервые анонимные системы связи были представлены в основополагающей работе Чаума (Chaum 1981). Суть в том, что анонимность достигается путем пересылки сообщений через серию передаточных узлов, называемых mix-узлами (перемешивающие узлы). Каждый mix-узел выполняет две основные задачи. Первая — это обеспечить побитовую неразличимость (bitwise unlinkability) сообщений, вторая — перемешать поток сообщений.

Чтобы на выходе из узла нападающий не смог идентифицировать отслеживаемое сообщение по его содержимому, все входящие сообщения приводятся к одному размеру (короткие сообщения дополняются случайными данными) и шифруются. Это и есть “обеспечить побитовую неразличимость”.

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

Системы анонимной связи через интернет можно разделить на две категории:
  • системы с большими задержками (high-latency systems);
  • системы с малыми задержками (low-latency systems).

Например электронная почта (e-mail) — это система с большими задержками, т.к. для доставки сообщения может потребоваться много времени. Если же требуется взаимодействие в режиме реального времени (или близкое к этому) нужно использовать системы с малыми задержками. SSH и мессенджер – примеры систем с малыми задержками. Неотслеживаемость сообщений в системах обоих категорий достигается за счет реализации идей Чаума: цепочки передачтоных узлов между отправителем и получателем, и шифрования, скрывающего данные сообщения. Каждый узел в цепи знает только своего предшественника, от кого он получил сообщение, и своего преемника, которому он передаст сообщение.

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

Есть еще одно существенное отличие систем с малыми задержками. Чтобы соответствовать жестким требованиям к времени доставки сообщений, приходится отказываться от фазы накопления и перемешивания сообщений. Следовательно, такие системы более уязвимы к атакам анализа трафика и в частности timing-атакам. Простые timing-атаки могут сводиться к вычислению времени которое требуется пакету чтобы пройти сеть. Более сложные timing-атаки могут включать анализ отличительных особенностей используемого жертвой соединения — выявление паттерна трафика1.

Timing-атаки используют тот факт, что все узлы сети вводят различные задержки. Зная время задержек можно строить догадки о связи входящих в узел и исходящих из него потоков. Другими словами угадать, какой исходящий поток соответствует отслеживаемому входящему потоку. Нападающий может некоторое время наблюдать за связями между узлами, а затем, сравнивая паттерны трафика всех узлов, выявить узлы с похожими паттернами — вероятно эти узлы образуют цепочку. Используя статистические методы нападающий может получить информацию об отправителе и получателе потока, и даже выявить весь путь потока. Для защиты от этой атаки нужно сделать так, чтобы временнЫе характеристики всех потоков были неразличимы. Однако, для этого потребуется значительное количество операций смешивания2 и большой объем покрывающего трафика (cover traffic)3, следовательно увеличится время задержек. Определить правильный баланс между анонимностью и задержками — задача не из легких.

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

Недавно, Мёрдоч (Murdoch) и Данезис (Danezis) показали пример успешной атаки на системы с малыми задержками без использования глобального наблюдателя. Атака основана на анализе трафика предложенном Данезисом в 2004. В их атаке анонимность, которую обеспечивает Tor, может нарушить злоумышленник который видит только часть сети или владеет одним узлом Tor. Атака работает из-за того, что разработчики Tor удалили операцию смешивания, которая была в ранней версии, и теперь входящая очередь потоков обрабатывается в режиме round robin fashion4. Подконтрольный злоумышленнику Tor-узел создает соединения с другими узлами сети и таким образом может косвенно оценить объем проходящего через них трафика в каждый момент времени. Оценки строятся на основе разности в задержках потоков отправляемых и получаемых по этим соединениям.

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

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

Наш вклад


Мы проверили атаку Мёрдоч и Данезиса (Murdoch & Danezis 2005) на других анонимных сетях с малыми задержками. Tarzan (Freedman & Morris 2002) и MorphMix (Rennhard & Plattner 2002) работают не так как Tor. В частности, они следуют архитектуре peer-to-peer, а Tor использует выделенные сервера. Еще, Tarzan использует некоторые операции по смешиванию и покрывающий трафик, которых нет в Tor. А в MorphMix, промежуточные узлы могут самостоятельно выбирать часть пути для передаваемого потока, в отличии от Tor, где клиент, инициализирующий поток, сам задает весь путь.

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

Структура документа


Во 2-ом разделе мы разберем три анонимизирующие сети — Tor, Tarzan и Morphmix 5 — и покажем чем они отличаются друг от друга. В 3-ем разделе рассмотрим атаку на Tor, описанную Мёрдоч и Данезисом (Murdoch & Danezis 2005). Отметим, что авторы утверждают что атаке подвержены все анонимные сети с малыми задержками. В 4-ом разделе мы опровергнем это утверждение с помощью Morphmix. В 5-ом разделе мы выведем несколько правил построения систем с малыми задержками. И наконец, в 6-ом разделе сделаем заключение.




Примечание переводчиков

1 Паттерн трафика

В контексте timing-атак, это характерная форма «всплеска» активности на графике «объём трафика от времени», которая может дать возможность различать пользователей или виды активности в сети.


2 Смешивание потоков

Существует много вариантов cмешивания потоков (миксинга, mixing). Например в нынешнем Tor при отсутствии миксинга картина такая: на сервер X вошло n цепочек и столько же вышло. Какая какому пользователю принадлежит как-бы непонятно, но по объёму трафика, всплескам, и другим косвенным признакам, можно строить гипотезы.

При смешивании (только как простейший пример) можно все цепочки от сервера X до сервера Y ещё раз зашифровать и упаковать в общий шифрованный канал и непонятно будет: вошло n, а сколько на какой сервер вышло — не видно. От пользователей до серверов идут индивидуальные цепочки, а между серверами — сплошной поток.

Поскольку на выходе из сети Tor всё равно проявятся отдельные цепочки, то это не очень эффективно.


3 Покрывающий трафика (cover traffic)

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


4 Round robin fashion

Простейший RR по кругу обрабатывает по одному пакету даных из каждого потока (предполагается, что приоритет у всех потоков равный). Таким образом достигается «равенство» всех потоков данных.


5 Tarzan и Morphmix существовали как концепты ещё на момент начала разработки Tor. В настоящее время эти сети реально не используются.
Теги:
Хабы:
+58
Комментарии 6
Комментарии Комментарии 6

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн