УДК 004                                                                    Информационные технологии

 

Абрамов Александр Сергеевич, студент магистратуры

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Российский Технологический университет – РТУ МИРЭА»,

Москва, Россия

Папин Валерий Андреевич, студент магистратуры

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Российский Технологический университет – РТУ МИРЭА»,

Москва, Россия

 

ЗАЩИТА ИНТЕРНЕТ-ПРИЛОЖЕНИЙ ОТ АТАК МАРШРУТИЗАЦИИ

 

Аннотация: В этой статье утверждается, что безопасность интернет-приложений и сетевой инфраструктуры следует рассматривать вместе, поскольку уязвимости на одном уровне привели к нарушению предположений (и новым векторам атак) на другом. Сначала мы дадим обзор безопасности маршрутизации. Затем мы обсудим, как межуровневые взаимодействия позволяют атакам маршрутизации компрометировать популярные приложения, такие как Tor, центры сертификации и сеть биткойнов. Учитывая медленное внедрение решений для безопасной маршрутизации, мы обсудим, как приложения могут учитывать базовые свойства маршрутизации и использовать средства защиты прикладного уровня для смягчения атак маршрутизации. Мы считаем, что решения прикладного и сетевого уровней взаимосвязаны, и оба они необходимы для защиты интернет-приложений. В то время как средства защиты на уровне приложений более легко развертываются, мы надеемся побудить сообщество удвоить усилия по разработке решений для безопасной маршрутизации и решить многие проблемы безопасности BGP раз и навсегда.

Ключевые слова: Защита приложений, защита маршрутизации, маршрутизация, BGP.

 

Abstract: This article argues that internet application and network infrastructure security should be considered together, as vulnerabilities at one level lead to the compromise of assumptions (and new attack vectors) at another. First, we will provide an overview of routing security. Then we will discuss how inter-level interactions allow routing attacks to compromise popular applications such as Tor, certification centers, and the Bitcoin network. Given the slow adoption of secure routing solutions, we will discuss how applications can take into account basic routing properties and use application-layer protection measures to mitigate routing attacks. We believe that application and network-level solutions are interdependent and both are necessary to protect internet applications. While application-level protection measures are more easily deployed, we hope to encourage the community to double efforts in developing solutions for secure routing and address many BGP security issues once and for all.

Key words: Application security, routing security, routing, BGP.

 

Атаки на маршрутизацию

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

Интернет состоит примерно из 67 000 Автономных систем (AS), каждая из которых имеет номер (ASN) и набор IP-префиксов. Соседние системы обмениваются трафиком в различных двусторонних отношениях, которые определяют, какой трафик должен быть отправлен и как он оплачивается. Такие соглашения обычно можно разделить на два типа: отношения между клиентом и поставщиком, когда клиент платит поставщику за отправку и получение трафика в остальную часть Интернета и из нее, и одноранговые отношения, при которых обмен деньгами не производится, но трафик должен предназначаться для однорангового узла или его клиентов.

Маршрутизация между автономными системами регулируется протоколом пограничного шлюза (BGP), который вычисляет пути к префиксам назначения. Автономные системы выбирают один “лучший” маршрут к префиксу на основе списка факторов, причем двумя главными обычно являются: Локальное преимущество: путь через клиента предпочтительнее пути через одноранговый узел, который предпочтительнее поставщика; Кратчайший путь: предпочтителен путь с наименьшим количеством переходов. Затем автономная система добавит маршрут в свою локальную информационную базу маршрутизации и далее распространит маршрут среди своих соседей на основе политик маршрутизации, добавляя себя в путь.

Автономные системы пересылают пакеты, используя путь к самому длинному совпадающему префиксу IP-адреса назначения. На рисунке 1 AS1 объявляет 140.180.0.0/22 через соседа AS2, а 140.180.0.0/24 через соседа AS2.

 

Рисунок 1 - Пересылка сообщений

 

AS4 пересылает пакеты 140.180.0.0/24 через AS3 на основе самого длинного совпадения префикса. Обратите внимание, что, как правило, самым длинным префиксом, который может быть успешно распространен, является /24; многие автономные системы фильтруют префиксы, которые по умолчанию длиннее /24.

Цели атак маршрутизации

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

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

Назначения. YouTube был целью инцидента с захватом в 2008 году, когда пакистанские власти пытались заблокировать доступ к YouTube. Pakistan Telecom (AS17557) объявил о префиксе 208.65.153.0/24, который представлял собой подсеть 208.65.152.0/22, объявленную YouTube (AS36561).

Отправители. Злоумышленник может перенаправлять глобальный трафик от всех отправителей в Интернете или выборочно нацеливаться только на трафик от определенных отправителей. В инциденте с YouTube целью было нацелиться только на отправителей в Пакистане; однако атака непреднамеренно затронула всех отправителей по всему миру.

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

Наблюдение. Власти могут использовать атаки маршрутизации для осуществления наблюдения и нацеливания трафика от отправителей в определенных регионах. Разведывательные агентства, такие как АНБ, могут запускать атаки по маршрутизации, чтобы облегчить перехват определенного трафика для наблюдения. Трафик из целевого региона будет перенаправляться властям, которые перенаправляют трафик в пункты назначения, одновременно контролируя деятельность. Этот тип атаки обычно характеризуется как атака с перехватом, где законные пункты назначения все еще получают трафик. Атаки с перехватом гораздо сложнее заметить, чем атаки с захватом, поскольку они не прерывают связь, хотя производительность может снизиться из-за более обходных путей. Кроме того, власти могут использовать атаки маршрутизации, чтобы обойти законодательные ограничения, перенаправляя внутренний трафик (например, электронную почту между американцами) в иностранные юрисдикции для ведения наблюдения.

Олицетворение. Злоумышленники могут выдавать себя за адресатов, чтобы обмануть отправителей, перехватывая пакеты с помощью атак с захватом или с перехватов и отвечая поддельными ответами. Эти атаки могут иметь разрушительные последствия. В 2018 году злоумышленники использовали атаки маршрутизации, чтобы выдать себя за авторитетный DNS-сервис Amazon и отвечали на DNS-запросы для веб-сайта криптовалюты с российскими IP-адресами. Затем пользователи были перенаправлены на мошеннический сайт, который, по их мнению, был их настоящим сервисом криптовалют. Следовательно, криптовалюта была украдена. Злоумышленники также могут имитировать большое количество IP-адресов для рассылки спама или другого вредоносного трафика.

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

Методология атаки

Злоумышленники должны решить, какой префикс объявить, какой путь анонсировать, и какая AS должна получить объявление.

Какой префикс объявить. Злоумышленники могут объявить либо суб-префикс (то есть более специфичный префикс) целевого префикса, либо такой же специфичный префикс, как и целевой префикс. Обратите внимание, что менее специфичный префикс не будет использоваться при пересылке пакетов и, следовательно, не будет представлять собой успешную атаку.

Влияние на глобальный трафик путем объявления суб-префиксов. Поскольку пересылка основана на совпадении самых длинных префиксов, атаки с суб-префиксами очень эффективны при перехвате трафика от всех отправителей. Однако, поскольку большинство AS фильтруют объявления для префиксов длиннее /24, атаки с суб-префиксами на префиксы /24 не будут эффективными.

Нацеливание на выборочный трафик путем объявления одинаково специфичных префиксов. Автономная система, которая получает как законное объявление, так и объявление злоумышленника, выберет одно из них на основе предпочтений маршрутизации. Обратите внимание, что некоторые автономные системы могут получать только одно объявление. На рисунке 2 AS2 (атакующий) объявляет тот же префикс /24, что и адрес назначения AS1, и AS4 предпочитает путь к AS2, в то время как AS3 по-прежнему предпочитает путь к AS1.

 

Рисунок 2 - Пересылка сообщений с одним "отравленным" путем

 

Эта атака, как правило, затрагивает только отдельные части Интернета и не оказывает глобального воздействия. Однако он более скрытен из-за своего локального воздействия и позволяет проводить целенаправленные атаки на определенных отправителей.

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

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

Атака на перехват с помощью отравления пути системы. Опытный злоумышленник может добавить набор тщательно отобранных автономных систем в конце пути. Эти системы должны представлять собой законный путь от злоумышленника к целевой системе. Добавленные автономные системы будут игнорировать объявление злоумышленника из-за предотвращения цикла BGP, что, следовательно, помогает сохранить правильные маршруты от злоумышленника до места назначения. Эта атака известна как “атака с отравлением пути AS” (см. рисунок 3). Эта атака очень скрытна и эффективна при выполнении атаки перехвата при объявлении суб-префикса.

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

Рисунок 3 - Атака с отправлением пути “AS

 

Объявляя определенным соседям. Злоумышленники могут использовать политики маршрутизации для контроля распространения атак, сообщая об этом только определенным одноранговым узлам и клиентам. Эти объявления будут распространяться “вниз” только для клиентов партнера, но не для его поставщиков. Следовательно, только выбранные автономные системы будут слышать объявления.

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

Защита маршрутизации

Защита от атак маршрутизации является сложной задачей из-за отсутствия “достоверной информации” о том, является ли путь “правильным”. Кажущиеся подозрительными объявления могут быть законными путями, используемыми системами для оптимизации производительности сети. Было предложено множество решений, которые опираются на различные источники информации в качестве “основной истины”.

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

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

Проверка происхождения. Инфраструктура общедоступных ключей ресурсов (RPKI) — это инфраструктура открытых ключей, в которой хранятся криптографические подтверждения, известные как Разрешения на отправку маршрута (ROA), указывающие, какие системы имеют право создавать какие префиксы. После получения объявления системы выполняют проверку происхождения маршрута (ROV) для фильтрации маршрутов, созданных из недействительных систем. RPKI использует криптографические примитивы, чтобы сделать базу знаний доступной для всех систем, в отличие от только прямых соседей в защитной фильтрации. Несмотря на то, что ROV проверяет только источник, а не полный путь, он может быть эффективным для предотвращения многих атак. Однако в настоящее время менее 20 % префиксов имеют действительное разрешение на отправку маршрута, и еще меньше случаев правильно выполняют проверку происхождения маршрута.

Проверка пути. Последовательность BGP использует криптографические примитивы для проверки всего системного пути. Это онлайн-протокол, в отличие от отдельного автономного поиска (например, ROV). Каждая автономная система в пути генерирует криптографическую подпись, которая добавляется в путь по мере распространения объявления по сети. Хотя BGP последовательность обеспечивает проверку полного пути, это накладывает тяжелое бремя на ее маршрутизаторы. Это также требует участия всех автономных систем на пути, что усложняет поэтапное развертывание. Нам еще предстоит увидеть реальное развертывание BGP последовательности.

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

Сеть Tor

Tor - наиболее широко используемая система анонимности. Он ежедневно передает терабайты трафика и обслуживает миллионы пользователей. Однако злоумышленники сетевого уровня могут деанонимизировать пользователей Tor, запустив атаки маршрутизации для наблюдения за трафиком пользователей и последующего выполнения корреляционного анализа. Кроме того, атаки имеют широкую применимость к анонимным системам связи с низкой задержкой за пределами Tor (например, анонимная сеть I2P или даже VPN).

Чтобы помешать злоумышленнику связать клиента с целевым сервером, Tor шифрует сетевой трафик и отправляет его через последовательность ретрансляторов (прокси-серверов) перед отправкой в пункт назначения. Клиент выбирает три ретранслятора (вход, середина, выход) и строит через них схему с многоуровневым шифрованием, повторно шифруя следующий переход ключами текущих переходов (см. Рисунок 4).

 

Рисунок 4 - Система с многоуровневым шифрованием

 

 

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

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

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

Рисунок 5 иллюстрирует атаку. AS3 (злоумышленник) видит только трафик между выходом и веб-сервером и должен перехватывать трафик между клиентом и ретранслятором входа.

 

Рисунок 5 - Атака на машрутизацию

 

Ему также необходимо поддерживать соединение в рабочем состоянии, чтобы захватить достаточный трафик для корреляционного анализа, то есть выполнить атаку перехвата. AS3 объявляет такой же конкретный префикс целевого предварительного исправления, который охватывает ретранслятор входа, сохраняя при этом допустимый путь (через AS5) к жертве AS1. Следовательно, трафик от клиента направляется злоумышленнику AS3, который перенаправляет трафик в AS1, чтобы поддерживать соединение. Аналогичные атаки могут быть выполнены и для перехвата соединения выход-сервер, если злоумышленник еще не находится на пути.

Атаки становятся более угрожающими, учитывая, что достаточно видеть движение в любом направлении, что открывает двери для большего числа злоумышленников. На рисунке 6 показан сценарий, в котором пользователь загружает файл с веб-сервера. Злоумышленник выполняет атаку на перехват ретранслятора входа и видит только одно направление трафика (от клиента к ретранслятору входа), которое в основном представляет собой пакеты TCP ACK. Затем злоумышленники используют номера последовательности и подтверждения из заголовка TCP (незашифрованные) для определения размеров пакетов данных, перемещающихся в другом направлении.

 

Рисунок 6 - Загрузка с веб-сервера

 

 

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

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

Активная защита с помощью выбора ретранслятора. Sun et all предложили новый алгоритм выбора ретранслятора для защиты соединения между клиентом Tor и ретранслятором входа. Этот алгоритм защищает от одинаково специфичных атак с префиксами на ретрансляторы входа, где эффект локализован и затрагиваются только клиенты в определенных местах. Локализованный эффект открывает клиентам возможность оставаться незатронутыми, мудро и активно выбирая ретранслятор до того, как произойдет какая-либо атака. Алгоритм максимизирует вероятность того, что клиенты не будут затронуты атаками, основываясь на топологических местоположениях клиентов и ретрансляторов. Это успешно повышает вероятность в среднем на 36% (до 166% для определенных местоположений).

Реактивная защита с помощью мониторинга. В дополнение к проактивной защите Sun et all предложили систему мониторинга действий по маршрутизации для ретрансляторов Tor. Система использует новые технологии обнаружения, такие как эвристика, основанная на времени и частоте, специально настроенная для Tor. Авторы показали, что большинство обновлений BGP, связанных с ретрансляцией Tor, объявляются только одной автономной системой (во всех обновлениях), что эффективно отличает объявления, сделанные системами злоумышленников, которые никогда не объявляли префикс в прошлом. Tan et al также предложили метод обнаружения на уровне данных, который периодически запускает трассировку для обнаружения атак с самыми длинными префиксами и обновления дескрипторов ретрансляторов Tor при обнаружении аномалий, чтобы клиенты Tor могли соответственно выбирать ретрансляторы входа.

Инфраструктура открытых ключей является основой для обеспечения безопасности онлайн-коммуникаций. Цифровые сертификаты выдаются доверенными центрами сертификации (ЦС) владельцам доменов, подтверждающими право собственности на домен. Пользователи Интернета доверяют домену с зашифрованными сообщениями, такими как банковские веб-сайты, только в том случае, если представлен действительный сертификат, подписанный центром сертификации. Этот механизм эффективно предотвращает атаки "Человек посередине" (MITM), которые могут иметь катастрофические последствия, такие как кража финансовой информации пользователей.

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

Проверка контроля домена - важнейший процесс для владельцев доменов при получении цифровых сертификатов от центров сертификации. Владельцы доменов обращаются в центр сертификации с просьбой предоставить цифровой сертификат, и центр сертификации отвечает на запрос, требующий от владельцев продемонстрировать контроль над важным сетевым ресурсом (например, веб-сайтом или адресом электронной почты), связанным с доменом. На рисунке 7 показана проверка HTTP, при которой центр сертификации требует, чтобы владелец домена загрузил документ в хорошо известный каталог на своем веб-сервере и подтвердил загрузку по HTTP. По завершении проверки центр сертификации выдает цифровой сертификат владельцу домена.

 

Рисунок 7 - BGP-атака

 

Процесс проверки контроля домена создает уязвимость для злоумышленников, которые могут подделать контроль над сетевыми ресурсами. Злоумышленники сетевого уровня могут использовать атаки маршрутизации для захвата или перехвата трафика в домен жертвы, чтобы вместо этого запрос центра сертификации направлялся злоумышленникам (шаг (5) на рисунке 7). Затем злоумышленники могут ответить на HTTP-запрос центра сертификации на шаге (6) и впоследствии получить подписанный цифровой сертификат от центра сертификации для домена жертвы. Атаки были успешно продемонстрированы в реальном мире. Атакованные домены были запущены на IP-префиксах, контролируемых исследователями, и не имели реальных пользователей или сервисов. Злоумышленник успешно получил сертификаты для домена жертвы от пяти ведущих центров сертификации всего за 35 секунд.

В этой работе подчеркивается значительный ущерб, наносимый атаками на маршрутизацию, которые могут поставить под угрозу основы безопасной онлайн-коммуникации, и показана настоятельная необходимость практической защиты. Кроме того, атаки также применяются к другим системам, которые требуют демонстрации контроля над определенными ресурсами с помощью повторных проверок, таких как проверка электронной почты. Связь с почтовым сервером может быть взломана или перехвачена, и по-прежнему существует значительное количество незашифрованных сообщений электронной почты (например, менее 20 % писем от “icicibank.com”, веб-сайта банка, зашифровано).

Многие из развернутых в настоящее время средств защиты недостаточно защищают цифровые сертификаты. Учитывая относительно короткое время, необходимое для получения сертификата, защищенного от мошенничества, злоумышленники могут получить сертификат до того, как атака будет предотвращена, даже если она обнаружена системами мониторинга. Кроме того, злоумышленники потенциально могут получить вредоносный сертификат, используя только локализованные методы маршрутизации, которые не затрагивают большую часть Интернета. Если у домена нет DNS-записи CAA (что в настоящее время верно для подавляющего большинства сетей), любой центр сертификации уполномочен подписывать сертификат для этого домена. Таким образом, злоумышленникам нужно только повлиять на маршрут между одним (из нескольких сотен) Центром сертификации и целевым доменом для получения поддельного сертификата.

Birge-Lee et al. недавно предложили два уровня защиты практического применения. (1) Проверка с нескольких точек зрения: основываясь на ключевом понимании того, что атаки маршрутизации могут быть локализованы, центры сертификации могут значительно снизить свою уязвимость к атакам, выполнив основную проверку из нескольких точек доступа и приостановив выдачу сертификатов в случае несоответствующих результатов проверки. Добавив только одну дополнительную точку обзора, вероятность обнаружения локализованной атаки маршрутизации на домен увеличивается с 61% до 84 %. Благодаря наличию двух дополнительных точек обзора вероятность обнаружения атаки достигает более 90 % для 74 % из 1,8 миллиона доменов, включенных в исследование. (2) Мониторинг BGP с эвристикой возраста маршрута: основываясь на ключевом понимании того, что аномальные и подозрительные объявления о маршрутизации обычно недолговечны, центры сертификации могут потребовать, чтобы маршруты к доменам были активны в течение минимального порогового времени перед подписанием сертификата. Эта защита заставит атаки быть активными в течение суток и более, прежде чем маршруты можно будет использовать для получения поддельного сертификата. Обе защиты требуют лишь минимальных усилий по их развертыванию без каких-либо изменений со стороны владельцев доменов или инфраструктуры маршрутизации.

Проверка с нескольких точек обзора получила значительное распространение. Let's Encrypt, крупнейший в мире центр сертификации, развернул проверку нескольких точек обзора. Кроме того, известная CDN CloudFlare разработала API для центров сертификации для выполнения многократной проверки с использованием своей сети.

Сеть Биткойнов

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

Биткойн - это одноранговая сеть, в которой узлы используют механизмы согласованности для совместного согласования (распределенного) журнала всех транзакций, которые когда-либо происходили. Этот журнал называется блокчейном, потому что он состоит из упорядоченного списка (цепочки) сгруппированных транзакций (блоков).

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

Каждый раз, когда майнер создает блок, он транслирует его на все узлы сети и получает только что добытые биткоины. Помимо самых последних транзакций, блок содержит доказательство работы (решение головоломки), которое каждый узел может самостоятельно проверить, прежде чем распространять блок дальше. На рисунке 8а узел n “добывает” блок, который затем передается по сети поочередно.

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

Злоумышленники сетевого уровня могут выполнять атаки маршрутизации на биткойн, чтобы разделить набор узлов на два (или более) непересекающихся компонента. Следовательно, атаки нарушают способность всей сети достигать согласованности. Злоумышленник должен отвлечь и перерезать все связи, соединяющие различные компоненты вместе. Для этого злоумышленник может выполнить атаку перехвата, захватив IP-префиксы каждого компонента и выборочно отбросив соединения, пересекающие компоненты, оставив внутренние соединения (внутри компонента) нетронутыми.

 

Рисунок 8 - Добыча блока для передачи по сети

 

На рисунке 8b злоумышленник захватывает все префиксы, относящиеся к биткойн-узлам в серой зоне. Получив контроль над трафиком, направленным к этим узлам (красные линии), злоумышленник прерывает соединения между клиентами, находящимися в серой зоне и за ее пределами, эффективно создавая раздел.

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

Apostolaki et al. недавно предложили SABRE для защиты биткойнов от атак на разделы. SABRE — это перекрывающая сеть, состоящая из небольшого набора специальных биткойн-клиентов (ретрансляторов), которые принимают, проверяют и распространяют блоки. Обычные биткойн-клиенты могут подключаться к одному или нескольким ретрансляторам в дополнение к своим обычным подключениям. Во время частичной атаки ретрансляторы SABRE остаются подключенными друг к другу и ко многим биткойн-клиентам, позволяя блокировать распространение между другими отключенными компонентами. На рисунке 10b, в то время как клиенты в серой зоне изолированы от остальной части сети, блок, добытый узлом n, распространяется через ретрансляционные узлы (окрашенные в оранжевый цвет) в остальную часть сети.

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

В сети SABRE, показанной на рисунке 9a, три системы (ASB, ASC, ASD) выбраны для размещения узлов ретрансляции, которые напрямую связаны друг с другом и не имеют клиентских систем. Во время атак маршрутизации узлы ретрансляции остаются подключенными друг к другу. Например, если ASG (поставщик ASC) объявляет префикс ASB, ASC все равно предпочтет маршрут к ASB, поскольку он проходит через одноранговый узел. Кроме того, все биткойн-клиенты сохраняют по крайней мере одно соединение с ретрансляционной сетью во время атаки. Даже такие узлы, как узел q, который теряет одно из соединений с ретрансляционной сетью из-за атаки, остается подключенным через другой ретрансляционный узел.

Рисунок 9 - система размещения узлов ретрансляции

 

 

Межслойные решения

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

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

Мы выделяем два свойства маршрутизации, которые являются ключевыми при построении защиты на уровне приложений: локализованная атака: объявления об атаке могут не распространяться и быть невидимыми для всего Интернета, а скрытые злоумышленники могут тщательно создавать объявления для контроля распространения и нацеливаться только на определенные регионы; устойчивость к атакам: некоторые системы, которые получают объявление об атаке, могут не пострадать, то есть не следовать вредоносному пути и, следовательно, быть “молчаливыми” для атаки. Это зависит от предпочтений маршрутизации, например, если система получает уведомление об атаке от поставщика, в то время как законный путь проходит через одноранговый узел, система все равно предпочтет законный путь.

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

Выбрать устойчивые узлы. Приложения могут стратегически выбирать серверы/узлы, которые наиболее устойчивы к атакам. Клиенты Tor могут выбрать ретранслятор входа, который максимизирует вероятность устойчивости, учитывая местоположение клиента и ретранслятора системы. Биткойн может выбирать узлы ретрансляции в определенных системах (например, одноранговые системы без клиентов), чтобы избежать атак. Конкретная реализация может варьироваться в зависимости от потребностей приложений и может даже включать RPKI в качестве критерия при выборе устойчивых узлов.

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

В то время как защита на уровне приложений может обеспечить немедленную защиту, мы также должны настаивать на крупномасштабном развертывании общих средств защиты от сложных атак маршрутизации. Мы рекомендуем автономным системам: принять лучшие практики, описанные в проекте MANRS, ускорить внедрение RPKI, опубликовав ROA и выполнив проверку происхождения маршрута (ROV), и достичь согласованности в отношении пути решения проблем безопасности маршрутизации (включая полную безопасность пути) раз и навсегда. Кроме того, мы описываем два способа объединения сетевых операторов с разработчиками приложений.

Приложения в качестве отправных точек. Защита всех 800 тыс. префиксов и 67 тыс. автономных систем кажется невыполнимой задачей. Однако лишь небольшая часть префиксов играет важную роль в каждом приложении. Например, только около 1100 систем имеют ретрансляторы Tor, размещенные на их префиксах, и только одна система несет 23% всего трафика Tor. Кроме того, при выдаче цифровых сертификатов подавляющее большинство сертификатов выдается несколькими сертификационными организациями, и домены в основном размещаются на нескольких облачных и CDN-провайдерах (например, пять автономных систем, включая SquareSpace и Amazon, размещают почти половину доменов). Наконец, только в пяти системах размещается треть всех биткойн-клиентов, в то время как 50% всей мощности майнинга размещается менее чем в 100 префиксах. Если несколько тысяч автономных систем смогут предпринять серьезные шаги по развертыванию безопасности маршрутизации, приложения получат огромные преимущества.

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

Вывод

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

 

Библиографический список:

1.                Хоффман Э.: Безопасность веб-приложений. Разведка, защита, нападение – 2021. – С 214-235.

2.                Галкин А.П. Защита технических каналов связи предприятий – 2008. – С 45-58.

3.                Лукашев В.М., Трубачев С.В. Защита банковских сетей – 2006. - С 3-4.

4.                Ришалин П. Атакующий код запуска оболочки с нуля – 2022. – С 32-38.

5.                А. Н. Андрончик, А. С. Коллеров, М. Ю. Щербаков, Н. И. Синадский Сетевая защита на базе технологий фирмы Cisco Systems. Практический курс. Учебное пособие – 2018. – С 131-136.

6.                Хабракен Д. Маршрутизаторы Cisco. Практическое применение – 2017. – С 275-286.

7.                Старовойтов А. В. Сеть на Linux. Проектирование, прокладка, эксплуатация – 2014. – С 178-186.