Краткое содержание
- К 2021 году сеть фильтрации Qrator Labs расширилась до 14 центров очистки трафика общей пропускной способностью в 3 Тбит/с с точкой присутствия в Сан-Паулу, Бразилия, вводящейся в эксплуатацию в начале 2021 г.
- Новые сервисы, предоставляемые партнерами компании (SolidWall WAF и RuGeeks CDN) за 2020 год были полностью интегрированы в инфраструктуру Qrator Labs и личный кабинет.
- Улучшенная логика фильтрации позволяет Qrator Labs удовлетворить потребности даже самых крупных заказчиков с глобально распределенной инфраструктурой, обеспечивая полное покрытие услуг кибербезопасности и нейтрализации DDoS-атак.
- Qrator Labs активно использует новейшие процессоры AMD для задач, связанных с обработкой трафика.
За 2020 год количество DDoS-атак лишь увеличилось, самые опасные можно описать просто: короткие и обескураживающе интенсивные.
Тем не менее, инциденты BGP оставались той областью, в которой очевидна необходимость изменений, так как количество серьёзных инцидентов, таких как перехваты трафика и утечки маршрутов, оставалось высоким в течение всех последних лет — и 2020 не был исключением.
В 2020 году компания Qrator Labs начала предоставлять услуги в Сингапуре в рамках нового партнерства, а также запустила центр очистки трафика в Дубае, где находится укомплектованный профессионалами офис, готовый отвечать на любые запросы потребителей в регионе.
Вторая декада Qrator Labs
С началом 2021 года Qrator Labs отметила собственное десятилетие. Некоторым коллегам, работающим в компании с самого начала, было сложно поверить, что прошло уже столько времени.
Немного о том, чего компания достигла за эти 10 лет:
- От 1 до 14 центров очистки трафика на 4 континентах, островах Сингапура и Японии, а также Аравийском полуострове;
- В начале 2021 года сеть фильтрации Qrator приближается к 3 Tbps кумулятивной емкости, используемой для нейтрализации DDoS-атак;
- С 7 до 70 сотрудников в одиннадцати городах;
- Тысячи спасённых клиентов. Буквально.
И все это без каких-либо сторонних инвестиций! Десять лет мы следовали пути самодостаточности в росте и развитии компании. Конечно, не принимая во внимание усилия каждого вовлеченного все эти годы.
Мы все еще пытаемся выдерживать основные ценности: открытость, профессионализм, научный подход и клиентоориентированность. Несмотря на обилие бизнес-задач перед компанией, наверное, большинство коллег до сих пор предпочтут погрузиться в техническую или математическую задачу необычайной сложности — такую, что точно не была решена к текущему моменту. С ограниченными ресурсами мы вынуждены оставаться сфокусированными на первостепенных областях, которые никак не изменились: мир BGP-маршрутизации и нейтрализация DDoS-атак.
2021 год начался взрывным образом — с DDoS-атаки интенсивностью 750 Гбит/с, состоящей в основном из DNS-амплифицированного трафика. Этот вектор атак является одним из старейших и наиболее изученных, что не мешает ему сеять хаос с огромной эффективностью.
Улучшения логики фильтрации
В течение последних двух лет в Qrator Labs приложили множество усилий для обновления логики фильтрация трафика, лежащей в основе услуги нейтрализации DDoS-атак. В итоге, в зависимости от параметров конкретного трафика и задач, нам удалось повысить общую эффективность в 4-8 раз, при этом используя на 25-33% меньше оперативной памяти. Это означает, что теперь мы можем принимать на борт еще больше легитимного трафика, а также работать с крупнейшими потенциальными клиентами в мире.
Мы значительно обновили детектор атак — алгоритм, призванный подтвердить наличие атаки. Теперь у нас есть более широкий набор параметров, доступных пользователю для выбора, каждый из которых может служить источником для наполнения черного списка. Это позволяет нам нейтрализовать атаки ближе к уровню L7 модели OSI, по сравнению с L3-L4.
Ещё одно нововведение — это брокер запросов. Он позволяет упростить процесс адаптации WAF потенциальным пользователем. Мы улучшили процессы взаимодействия с различными Web Application Firewall продуктами в сети фильтрации Qrator, реализовав асинхронную схему принятия решений по сомнительным, а значит — потенциально вредоносным запросам.
В 2020 году в сети фильтрации Qrator также была реализована поддержка Proxy Protocol. Этот протокол облегчает подключение и дальнейшую нейтрализацию DDoS-атак для приложений, использующих, например, WebSockets. Помимо упрощения подключения прокси-сервера к сети Qrator, такого как HAproxy или NGINX, Proxy Protocol упрощает настройку любого решения, работающего поверх TCP, позволяя легко установить под защиту сети фильтрации Qrator любой ресурс, поддерживающий его.
AMD внутри Qrator Labs
По нашему мнению, новые процессоры AMD отлично подошли к аппаратной архитектуре сети Qrator. Уникальная характеристика ЦПУ AMD — иерархическое разделение ядер на кристалле — вполне эффективна для задач, решаемых в Qrator Labs. Блоки ядер с раздельными контроллерами памяти представляют собой отдельную задачу с точки зрения корректной настройки, потому что мы меняем то, каким образом операционная система видит ядра центрального процессора. Огромное преимущество новых процессоров AMD заключается в том, что теперь мы в Qrator Labs можем построить однопроцессорную серверную машину с мощностью большей, чем у старой двухпроцессорной установки. С одной сетевой картой внутри каждой машины, подключенной с помощью PCIe, два процессора вносят большую сложность в задачу изначального разделения нагрузки, в дополнение к задержке переключения между ними. Замена двух ЦПУ одним решает эту задачу, оставляя необходимость настраивать только ядерную (иерархическую) архитектуру в одном процессоре, что значительно легче.
У процессора AMD обнаружилась еще одна интересная особенность. Используемая нами модель поддерживает работу с памятью на частоте 3200 ГГц. Когда мы начали тестировать упомянутый ЦПУ, то обнаружили, что, хотя формально контроллер памяти и допускает рабочие нагрузки на частоте 3200 ГГц, но внутрипроцессорная шина, соединяющая ядра, работает на частоте ниже. Фактически это означает, что если мы используем тактовую частоту процессора 3200 ГГц, пропускная способность снижается из-за низшей частоты контроллера памяти. Приложение, которое выиграет от этой особенности, должно быть исключительно однопоточным и работать только с одним каналом памяти.
В завершение данного раздела хочется отметить, что сейчас мы используем процессоры AMD на всех новых точках присутствиях, в том числе по соображениям экономической эффективности.
Интеграция партнерских технологий
В течение прошедшего года мы интегрировали новые партнерские технологии в структуру сети фильтрации Qrator.
Новый WAF от SolidWall теперь представлен в составе услуг Qrator Labs. SolidWall WAF интегрирован в панель управления Qrator, что позволяет клиентам полностью управлять всеми настройками межсетевого экрана в одном месте, вместе с другими услугами Qrator Labs.
Другая новинка — это CDN-сервис от RuGeeks, стал доступен всем клиентам Qrator Labs после периода интеграции и обширного тестирования.
Личный кабинет клиента претерпел значительные изменения и обновления в течение 2020 года. Мы приложили много усилий, чтобы предоставить нашим пользователям как можно больше параметров настройки для эффективного управления услугами для ресурсов под защитой Qrator.
Фильтрация IPv6-трафика
По данным компании Google, к концу 2020 года глобальное внедрение IPv6 превысило 30%. Сейчас протокол находится на решающим этапе и будет либо всеобще принят, либо так и останется лишь частичной заменой IPv4. Мы считаем, что за IPv6 будущее сетей, поэтому в течение последних нескольких лет наша команда инвестировала время и усилия в полную поддержку 6-й версии протокола IP в сети Qrator.
Одна из важных задач сетевой инженерии, решаемая в Qrator Labs — это поиск тяжелых элементов в потоке. На самом деле подразумеваются наиболее интенсивные подпотоки, но в академической англоязычной литературе термин “heavy hitters” уже устоялся, потому и в русском языке мы говорим о задаче поиска "тяжелых" элементов. Для начала стоит объяснить, почему мы решаем конкретно эту задачу: наша основная цель как компании, предоставляющей нейтрализацию DDoS-атак, — доставлять легитимный и очищенный трафик его владельцу, одновременно отсекая вредоносный и нелегитимный трафик.
В случае IPv4-трафика мы можем решить задачу без поиска самого тяжелого элемента — достаточно проанализировать весь поток до цели, чтобы определить "вес" каждого отдельного отправителя.
С IPv6 ситуация совершенно иная.
"Сохранение в памяти полного пула IPv6-адресов потребовало бы огромного ее объема. Если на хранение каждого IPv6-адреса выделять по одному биту памяти, то потребуется примерно 2^128 бит для всего пула IPv6-адресов. Это больше, чем количество атомов на Земле.
Если же на хранение целого префикса /64 брать по одному биту памяти, то для всего адресного пространства IPv6 уже потребовалось бы «всего лишь» 2^64 бит памяти. Это число не настолько астрономическое по сравнению с предыдущим, и его можно сравнить со всей произведенной до настоящего момента оперативной памятью всех устройств в мире."
Рассматривая задачу в IPv6, с самого начала нетрудно заметить, что количество возможных источников пакетов может быть невообразимо велико. То же самое с их потенциальными адресами назначения.
Поскольку специализацией Qrator Labs является поддержание необходимого уровня доступности сервиса потребителя, задачу можно рассматривать как поддержание определенного порога интенсивности — как с точки зрения количества пакетов в единицу времени, так и канальной емкости, — которую заказчик в состоянии принять и обработать. Мы не можем пропустить трафик, превышающий данные ограничения, так как это скорее всего приведет к пагубным для потребителя услуги последствиям.
Принимая во внимание все вышеизложенное, мы можем правильно переопределить решаемую задачу. Становится ясно, что основная цель состоит именно в том, чтобы быстро и легко (значит — дешево с точки зрения используемых ресурсов) выделить те элементы в потоке, которые следует отбросить для того, чтобы оставаться в требуемых пределах. Для достижения высочайших стандартов качества мы разрабатываем нашу систему так, чтобы минимизировать ошибочные блокировки легитимных пользователей во время продолжающейся DDoS-атаки.
Мы решаем эту задачу с помощью нескольких инструментов, так как одного способа недостаточно. Это позволяет нам переключаться между отдельными инструментами или использовать их все вместе в случае необходимости. Наш подход заключается в комбинации алгоритмов и методов, которые ограничивают либо скорость передачи пакетов (pps), либо пропускную полосу от отдельного источника (bps).
А поскольку IPv6 не допускает сведения задачи к понятиям «черного» и «белого» списка, задача оказывается действительно интересной.
Изучая соответствующую литературу по теме, мы встретим большое количество исследований по разнообразным алгоритмам, таким как "поиск тяжелых элементов" в потоке событий. Но ограничение скорости передачи пакетов и/или пропускной полосы — гораздо более широкая задача, вот почему мы вводим понятия "порога" и его "превышения" или "удержания". При этом мы хотим максимизировать собственный параметр качества сервиса, чтобы обеспечить наименьшее количество ложноположительных срабатываний.
Qrator Labs разработала полномасштабный симулятор для тестирования среды в IPv6. Он генерирует потоки трафика, позволяя применять различные комбинации алгоритмов фильтрации и измерения результатов и качества их работы. Со временем, когда симулятор будет готов с нашей точки зрения, мы планируем сделать его код общедоступным.
Мы также работаем над улучшением базового кирпичика нашей системы — счетчика интенсивности трафика. Назначение такого счетчика — подсчитывать каждое элементарное событие, например, получение сетевого пакета, так чтобы в любой момент, глядя на значение счетчика, можно было судить об интенсивности потока событий. Для некоторых типов потоков понятие интенсивность возникает естественным образом. Мы называем такие потоки статическими. В общем же случае поток является существенно динамическим, измерить его интенсивность или хотя бы формально определить, что это такое, становится затруднительно.
"Проблема простейшего инкрементирующего счетчика заключается в том, что исторические (сохраненные в прошлом) данные влияют на текущее наблюдение. В случае если что-то происходит прямо сейчас, вы не можете отделить старые данные от более свежих, лишь взглянув на значение счетчика".
Чтобы успешно решить эту нетривиальную задачу, нам пришлось экспериментировать с разными типами счетчиков, которые позволяют учитывать недавние события с бо́льшим весом, чем те, которые произошли давно, и стали малоинтересными.
Другая проблема, связанная со счетчиками, — ресурсная. Для наших задач требуется огромное количество счетчиков, чтобы из всего потока уметь выделять подпотоки и измерять их интенсивность. Много счетчиков — много памяти. Мы пытаемся экономить память, уменьшая количество бит, выделенных на счетчик. Это не просто, но возможно.
Приложив большие усилия, мы создали стройную теорию, которую теперь имплементируем на практике. Она позволяет использовать счетчики разных типов с разной архитектурой для измерения "интенсивности". В общем случае не существует точного математического определения "интенсивности" — это момент, который стоит еще раз повторить, чтобы понять, почему мы проводим такие обширные исследования по данной теме. Вот почему нам необходимо оценить работу счетчиков разных типов, чтобы определить, какой из них лучше всего подходит для конкретной ситуации. Ведь в конечном итоге цель состоит не в том, чтобы создать наиболее точный счетчик, а в том, чтобы обеспечить максимальное качество обслуживания с точки зрения нейтрализации DDoS-атак и общей доступности защищаемого сетевого ресурса.
Статистика и дальнейший анализ данных по DDoS-атакам
Медианная продолжительность DDoS-атаки составляет около 5 минут, что не сильно изменилось с тех пор, как мы изменили методологию подсчета и разделения атак. DDoS-атака с DNS-амплификацией, которую мы нейтрализовали в феврале 2021 года, длилась 4 минуты.
Распределение векторов DDoS-атак демонстрирует преобладание атак на основе UDP-флуда в 2020 году, составляя 40,1% от всех наблюдавшихся атак. На втором месте стоит IP-флуд с 38,15%, а SYN-флуд замыкает тройку наиболее популярных векторов по L3-атакам с 16,23% за 2020 год.
График пропускной способности отдельных векторов атак иллюстрирует различия между ними и показывает, что IP-флуд начинается с самого высокого уровня начальной интенсивности, по сравнению с остальными векторами, со средним уровнем атаки выше 1 Гбит/с.
Сравнение пакетной интенсивности векторов атак демонстрирует, что DDoS-атаки на основе UDP-флуда могут начинаться с самых низких уровней возможной скорости передачи пакетов, а TCP-флуд обладает противоположной характеристикой. Их медианные уровни pps составляют 113,5 тысяч и 1,2 млн соответственно.
А вот иллюстрация комбинаций векторов атаки:
Как видите, в реальном мире DDoS-атак основные векторы смешиваются мало и, по большей части, остаются "чистыми" от комбинаций. Так UDP-флуд и IP-флуд преобладают среди всех DDoS-атак 2020 года.
Погружение в BGP
Количество открытых портов BGP и циклов маршрутизации BGP оставалось высоким на протяжении последних 5 лет. Судя по статистике за прошедший год, эта конкретная проблема не беспокоит большинство интернет-провайдеров, управляющих автономной системой.
Иначе обстоит ситуация с перехватами трафика и утечками маршрутов. В отчете, который мы публиковали в мае 2020 по первому кварталу прошлого года, мы указали на статистику утечек маршрутов BGP:
Январь 2020: 1
Февраль 2020: 4
Марта 2020: 6
Апрель 2020: 6 +1 в IPv6
Теперь мы можем взглянуть на цифры за 4 квартал 2020 года с дополнительными данными по январю 2021 по тем же утечкам маршрутов:
Обратите внимание, что мы учитываем в данной статистике только такие инциденты, которые команда Qrator.Radar считает глобальными — то есть превышающими определенные пороговые значения. Сравнивая данные 4-го квартала с 1-м кварталом 2020 года, создается впечатление, что наблюдается некоторое снижение абсолютного числа инцидентов, связанных с утечкой маршрутов. Что будет справедливо только при условии, что мы примем как факт то, что все инциденты имеют одинаковый размер. На практике же это совершенно противоположно — как и всегда, более крупные сети способны быстрее и сильнее влиять на клиентов и соседей. Фактически же это означает, что шансов на изменение ситуации с утечками маршрутов не так много, пока у нас не будет рабочего решения для полного их предотвращения. Мы надеемся, что ASPA и все связанные с данным нововведением черновики, рассматриваемые внутри IETF, будут приняты и получат RFC статус в ближайшем будущем.
PDF-версия отчета доступна для скачивания по ссылке.