Что такое DDoS-атака?

Теги: IT
Одна из главных проблем интернет-безопасности — DDoS-атаки. Их, теоретически, может устраивать любой человек. Попытка объяснить, как они работают и как с ними бороться всегда скатывается к одному факту — массированное нападение невозможно остановить. Тем не менее, для защиты любого информационного ресурса или устройства от небольших и крупных DDoS-атак хорошо бы знать основные моменты, методы борьбы с ними.

DDoSdistributed denial-of-service. Перевод на русский звучит так — распределенная атака типа «отказ в обслуживании». Так как этот термин «не звучит», в русский язык просто вошло упрощенное произношение — ддос или ддос-атака. Иногда обычные люди, в частности стримеры и геймеры, часто вместо «ддос» произносят «дудос», конкретнее «дудосят». Такое произношение не верно, но и не запрещается, так как большинство людей поймут, о чем сказал говорящий.

ddos2.gif
Среднестатистическая реакция на ддос

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

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

Также сразу стоит сказать о мощности DDoS-атаки. Её указывают либо в количестве запросов в секунду, либо в Тбит/с. Например, DDoS-атака в сентябре 2021 года на компанию Яндекс на пике достигла мощности в 21,8 млн запросов в секунду. А DDoS-атака на Google в 2017 году на пике достигала мощности в 2,54 Тбит/с.

Как работает DDoS-атака

DDoS-атаки всегда проводятся с помощью устройств, подключенных к IoM (Интернет вещей). Вкратце, к этим сетям подключены компьютеры, сервера и прочие устройства, входящие в состав IoT, которые были заражены вредоносным ПО. После заражения это не просто устройства, это боты (в некоторых случаях используют термин «зомби»). Большое скопление ботов образует ботнет.
Самостоятельно ботнет не несет никакой угрозы. А вот в руках злоумышленника он превращается в огромную армию, которую можно направить на любую цель с помощью удаленных инструкций. Атакуют цель боты крайне просто — после получения команды они начинают без остановки отправлять запросы на IP-адрес. Какое-то время пропускная способность сети позволит сдерживать атаки, но через некоторое время их станет настолько много, что сервер или сеть переполнится — цель перестанет отвечать на запросы, станет отказывать в обслуживании, ботнет победит.

Здесь всплывает главная проблема — каждый отдельный бот, это нормальное устройство, не нарушающее правила. Просто большую часть времени оно «спит», а когда нужно «пробуждается» и начинает атаку. Соответственно, просто заблокировать бота нельзя, как и отделить трафик атаки от нормального трафика.
В итоге мы приходим к парадоксу. Чтобы заблокировать DDoS-атаку нужно заблокировать все поступающие запросы. Но блокировка всех поступающих запросов и является целью злоумышленника, он победил. А если запросы не блокировать, то через некоторое время сеть или сервер сами «упадут», злоумышленник снова победил. К слову, ботнеты можно запускать по очереди — в этом случае не поможет даже блокировка, так как каждую атаку совершают новые устройства.

what-is-DDoS-attack-1024x536.jpg

Как идентифицировать DDoS-атаку

Самый простой способ — проверить скорость работы сайта или службы. Если они внезапно замедлились или стали недоступными, то есть вероятность DDoS-атаки. Использовать этот способ в качестве основного не стоит, так как к подобному эффекту могут приводить и другие ситуации, например всплеск трафика из-за акции, проходящей на сайте.
Поэтому для идентификации аналитики трафика используют следующие особенности работы сети:

  • Резкое увеличение трафика от одного IP-адреса или IP-диапазоны;
  • Резкое увеличение трафика из-за пользователей с одинаковым поведенческим профилем: одна версия браузера, тип устройства, геолокация;
  • Всплеск запросов к одной странице или к конкретной точке;
  • Шаблонные всплески, например трафик начинает «скакать» каждый час.
Даже эти признаки не универсальны, так как в зависимости от типа свойства DDoS-атаки могут измениться.

Распространенные типы DDoS-атак

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

Атаки прикладного уровня

Часто упоминается как нападение седьмого уровня, так как цель таких DDoS-атак — исчерпать ресурсы цели и создать прецедент отказа в обслуживании. Боты нацелены на седьмой уровень сетевой модели OSI, на котором веб-страницы генерируются на сервере и доставляется ответ на HHTP-запросы. Атаки прикладного уровня почти невозможно отбить, так как вредоносный трафик ничем не отличается от законного.

Пример — HHTP-поток

Атака похожа на бесконечное одновременное нажатие кнопки «обновить» в веб-браузере на разных компьютерах. Из-за большого количества HHTP-запросов сервер не выдерживает и перестает отвечать.
Простые варианты этой атаки получают доступ к одному URL с одинаковым диапазоном атакующих IP-адресов и пользовательских агентов. Сложные варианты предполагают огромное количество разных атакующих ботов, которые можно нацеливать на случайные URL-адреса, связанные с целью.
Атаки по протоколу

Данный тип DDoS-атак вызывает сбой в обслуживании из-за чрезмерного потребления ресурсов сервера или ресурсов сетевого оборудования: брандмауэры, балансировщики нагрузки. Атаки нацелены на слабые места третьего и четвертого уровней сетевой модели OSI.

Пример — SYN-флуд

SYN-флуд работает следующим образом:
  1. Сервер или сайт получают запрос;
  2. Начинают выполнение запроса;
  3. Сразу же получают кучу новых запросов, поток которых не остановится, пока первый запрос не будет выполнен.
  4. Как только выполнение первого запроса подходит к концу, он резко обрывается — система не может выполнить запрос.
  5. Все начинается с самого начала.
Объемные атаки

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

Пример — усиление DNS

Работу этой DDoS-атаки проще всего объяснить через аналогию. Представьте, что кто-то знает ваш номер телефона. Этот кто-то оформляет заказ в пиццерии, но вместо своего телефона указывает ваш. Далее работник пиццерии звонит вам для подтверждения заказа, а вы даже не в курсе этого. А теперь представьте, что этот трюк проделывают тысячи человек — на ваш телефон начинают без остановки поступать тысячи звонков. Сможете ли вы пользоваться телефоном в такой ситуации?

DDOS Protection.jpg

Методы борьбы с DDoS-атаками

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

И здесь мы приходим не к решению проблемы, а к ее смягчению. То есть ни один из методов борьбы с DDoS-атаками не защищает от них, но позволяют пережить этот момент с наименьшими потерями.

Черная дыра

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

Ограничение скорости обработки запросов

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

Брандмауэр веб-приложения

Кратко называется WAF (Web Application Firewall). Суть в том, что на седьмом уровне OSI устанавливается специальное приложение, которое действует как обратный прокси и защищает сервер от определенных типов вредоносного трафика. WAF настраивается вручную. Помогает против небольших и массированных DDoS-атак, так как после настройки автоматически блокирует однотипный трафик. Главное в работе с WAF — быстро внедрять пользовательские правила в ответ на начало атаки.

Отказоустойчивая Anycast-сеть

Anycast — метод рассылки пакетов, с помощью которого можно разделить весь трафик атаки по сети. Грубо говоря, Anycast разделяет общий поток запросов на огромную кучу более мелких потоков, которыми можно управлять и, в дальнейшем, гасить.
Главная проблема — сеть Anycast должна обладать огромной пропускной способностью, во много раз превышающей мощность атаки. Возьмем, как пример, атаку 2017 года на Google, мощность которой достигла 2,54 Тбит/сек. Для борьбы с ней потребовалась бы Anycast-сеть с пропускной способностью минимум в 10-20 Тбит/сек.

Благо, многие компании в последние годы активно развивают направление защиты от DDoS-атак. Как пример, у компании Cloudflare развернутся Anycast-сеть с пропускной способностью в 172 Тбит/сек. Благодаря этому сервера компании почти невозможно «положить», а в случае массированной DDoS-атаки их поднимают за пару минут.
23 января 2023