Что есть что и кто есть кто на рынке защиты от DDoS

в 7:27, , рубрики: ddos, ddos-атака, ddos-защита, kaspersky, qrator, testcookie, Блог компании Southbridge, информационная безопасность, Серверное администрирование, системное администрирование, хостинг

Я на digital рынке с 2008 года, и за это время видел переход от веб-сайтов на Joomla (помните такую? ) до сегодняшнего Интернета с его mobile-first приложениями и сотнями миллионов IoT устройств, подключенных в сеть.
Атаки в Интернете также за это время неплохо развилиcь :)
Но рынок защиты от DDoS и используемые операторами технологии защиты от атак остаются все еще достаточно сильно закрытым.
Расскажу, что узнал про него, поддерживая веб-сайты и интернет-сервисы, находящиеся под непрерывными атаками несколько последних лет.

image
Регулярные атаки. 350k req total, 52k req legitimate

Первые атаки появились практически одновременно с интернетом. DDoS как явление стал массовым с конца 2000-х годов (поглядите www.cloudflare.com/learning/ddos/famous-ddos-attacks).

Примерно с 2015-2016 года почти все хостинг-провайдеры встали под защиту от DDoS атак, как и большинство заметных сайтов в конкурентных сферах (сделайте whois по IP сайтов eldorado.ru, leroymerlin.ru, tilda.ws, увидите сети операторов защиты).

Если 10-20 лет назад большинство атак можно было отбить на самом сервере (оцените рекомендации системного администратора Lenta.ru Максима Мошкова из 90-х), то сейчас задачи по защите стали сложнее.

Виды DDoS атак с точки зрения выбора оператора защиты

Атаки на уровне L3 / L4 (по модели OSI)

  • UDP flood с ботнета (напрямую с зараженных устройств на атакуемый сервис отправляется много запросов, серверам заваливают канал);
  • DNS/NTP/etc amplification (с зараженных устройств отправляется много запросов на уязвимые DNS/NTP/etc, адрес отправителя подделывается, туча пакетов с ответом на запросы заваливает канал тому, кого атакуют; так выполняются самые массовые атаки в современном интернете);
  • SYN / ACK flood (на атакуемые серверы отправляется много запросов на установление соединения, происходит переполнение очереди соединений);
  • атаки с фрагментацией пакетов, ping of death, ping flood (погуглите плз);
  • и т.п.

Эти атаки ставят целью «завалить» канал серверу или «убить» его способность принимать новый трафик.

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

Атаки на L7 (уровень приложения)

  • http flood (если атакуется веб-сайт или какой-нибудь http api);
  • атака на уязвимые участки сайта (не имеющие кэша, очень сильно нагружающие сайт, етс.).

Цель — заставить сервер «тяжело работать», обрабатывать много «как будто бы реальных запросов» и остаться без ресурсов для настоящих запросов.

Хотя есть и другие атаки, эти — самые распространенные.

Серьезные атаки на L7 уровне создаются уникальным образом под каждый атакуемый проект.

Почему 2 группы?

Потому что есть много тех, кто умеет хорошо отбивать атаки на уровне L3 / L4, но или вообще не берется за защиту на уровне приложения (L7), или пока справляется с ними слабее альтернатив.

Кто есть кто на рынке защиты от DDoS

(мой личный взгляд)

Защита на уровне L3/L4

Чтобы отбивать атаки с амплификацией («завал» канала сервера) хватает широких каналов (многие из сервисов защиты подключаются к большинству крупных магистральных провайдеров в России и обладают каналами с теоретической емкостью больше 1 Тбит). Не забываем, что очень редкие атаки с амплификацией длятся дольше часа. Если вы Spamhaus и вас все не любят — да, вам могут стараться положить каналы на несколько суток даже с риском для дальнейшего выживания используемого мирового ботнета. Если у вас просто интернет-магазин, даже если это mvideo.ru — 1 Тбит в течение нескольких суток вы увидите очень нескоро (надеюсь).

Чтобы отбивать атаки с SYN/ACK флудом, фрагментацией пакетов, етс, необходимо оборудование или софтверные системы для детекции и отсекания таких атак.

Такое оборудование производят многие (Arbor, есть решения у Cisco, Huawei, софтверные реализации от Wanguard и т.п.), многие магистральные операторы уже установили его и продают услуги защиты от DDoS (я знаю про инсталляции у Ростелеком, Мегафон, ТТК, МТС, по сути у всех крупных провайдеров, это же делают хостеры со своей защитой a-la OVH.com, Hetzner.de, сталкивался сам с защитой в ihor.ru). Некоторые компании разрабатывают свои софтверные решения (технологии типа DPDK позволяют обрабатывать трафик в десятки гигабит на одной физической x86 машине).

Из известных игроков более-менее эффективно L3/L4 DDoS отбивать умеют все. Я сейчас не скажу, у кого больше максимальная емкость канала (это инсайдерская информация), но обычно это не так важно, и разница только в том, насколько быстро срабатывает защита (мгновенно или через несколько минут даунтайма проекта, как в Hetzner).

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

Но при этом, исходя из моего опыта, все серьезные игроки рынка с этим справляются без проблем: Qrator, DDoS-Guard, Kaspersky, G-Core Labs (бывший SkyParkCDN), ServicePipe, Stormwall, Voxility, etc.

С защитой от операторов типа Ростелеком, Мегафон, ТТК, Билайн не сталкивался, по отзывам коллег они эти услуги оказывают достаточно качественно, но пока периодически сказывается недостаток опыта: иногда нужно что-нибудь докрутить через поддержку оператора защиты.
У некоторых операторов есть отдельная услуга «защита от атак на уровне L3/L4», или «защита каналов», она стоит намного дешевле защиты на всех уровнях.

А как не магистральный провайдер отбивает атаки в сотни Гбит, у него же нет своих каналов?

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

Что есть что и кто есть кто на рынке защиты от DDoS - 2
Вот такие отчеты от вышестоящей L3/L4 защиты я регулярно получал, поддерживая системы хостинг-провайдера.

Защита на уровне L7 (уровень приложения)

Атаки на уровне L7 (уровень приложения) стабильно и качественно умеют отбивать единицы.
У меня есть реальный достаточно большой опыт с

  • Qrator.net;
  • DDoS-Guard;
  • G-Core Labs;
  • Kaspersky.

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

Реальный «царь горы» — Qrator.net, остальные от них несколько отстают. Qrator пока единственные в моей практике, кто дает близкий к нулю процент ложных срабатываний, но при этом они в несколько раз дороже остальных игроков рынка.

Другие операторы тоже дают качественную и стабильную защиту. Многие сервисы на нашей поддержке (в т.ч. очень известные в стране!) стоят под защитой от DDoS-Guard, G-Core Labs, и вполне довольны получаемым результатом.

Что есть что и кто есть кто на рынке защиты от DDoS - 3
Атаки, отбитые Qrator

Есть еще опыт с небольшими операторами защиты типа cloud-shield.ru, ddosa.net, тысячи их. Однозначно рекомендовать не буду, т.к. опыт не очень велик, расскажу о принципах их работы. Стоимость защиты у них часто на 1-2 порядка ниже, чем у крупных игроков. Как правило, они покупают услугу частичной защиты (L3/L4) у кого-то из более крупных игроков + делают собственную защиту от атак на более высоких уровнях. Это может быть вполне эффективно + вы можете получить хороший сервис за меньшие деньги, но это все же небольшие компании с маленьким штатом, учтите, пожалуйста.

В чем сложность отражения атак на уровне L7?

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

Когда-то хватало модуля nginx-testcookie, и его и сейчас хватает для отражения большого числа атак. Когда я работал в хостинг-индустрии, L7 защиту строил как раз на nginx-testcookie.

Увы, атаки стали сложнее. testcookie использует проверки на ботов на базе JS, а многие современные боты умеют их успешно проходить.

Атакующие ботнеты также уникальны, и нужно учитывать особенности каждого крупного ботнета.
Амплификация, прямой флуд с ботнета, фильтрация трафика из разных стран (разная фильтрация для разных стран), SYN/ACK флуд, фрагментация пакетов, ICMP, http флуд, при этом на уровне приложения/http можно придумывать неограниченное число разных атак.

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

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

Для оператора защиты нет кнопки «отбить DDoS», есть большое число инструментов, ими нужно уметь пользоваться.

И еще один бонусный пример.

Что есть что и кто есть кто на рынке защиты от DDoS - 4
Сервер без защиты был заблокирован хостером при атаке емкостью в 600 мбит
(«Пропадание» трафика не заметно, т.к. атакован был только 1 сайт, его на время убрали с сервера и блокировка была снята в пределах часа).
Что есть что и кто есть кто на рынке защиты от DDoS - 5
Этот же сервер под защитой. Атакующие “сдались” после суток отбитых атак. Cама атака оказалась не самой сильной.

Атака и защита L3/L4 более тривиальны, в основном, они зависят от толщины каналов, алгоритмов детекции и фильтрации атак.

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

Автор: Вадим

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js