DoS: модели атак и контрмеры

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

DDoS-атаки в больших масштабах

Распространенная форма DoS известна как «распределенный отказ в обслуживании» (DDoS). Вместо того чтобы использовать один компьютер, киберпреступники перегружают системы запросами от множества компьютеров, которые объединяются в гигантские бот-сети. При использовании таких компьютерных сетей генерируется больше трафика, чем при простых DoS-атаках, которые осуществляются только с одной системы. DDoS-атаки имеют серьезные последствия для всех участников, и надежда найти источник атаки, как правило, весьма призрачна. Злоумышленники, создающие подобные ботнеты, помещают специальные программные агенты на недостаточно защищенные компьютеры. Затем эти компьютеры используются для управления ими без ведома владельца. Иногда «заражение» происходит за несколько месяцев до начала реальных DDoS-атак.

Определение: DDoS (распределенный отказ в обслуживании)

DDoS (Distributed Denial of Service) в информационных технологиях описывает недоступность услуги из-за очень большого количества запросов. Подобный отказ в обслуживании обычно вызван концентрированной атакой, также известной как DDoS-атака. DDoS также может быть результатом временной, непреднамеренной перегрузки ресурсов.

Как выглядит DDoS-атака?

Основой каждой DDoS-атаки является большая сеть компьютеров. Теоретически, эта группа может принадлежать атакующему. Однако на практике это, как правило, вышеупомянутые сети ботов, состоящие из сотен тысяч компьютеров. Соответствующие компьютеры заражаются вредоносным ПО, которое позволяет киберпреступникам получить удаленный доступ незаметно для владельца компьютера. В последнее время все чаще используются устройства IoT (Интернет вещей), такие как маршрутизаторы, камеры наблюдения или цифровые видеорегистраторы, которые также могут быть использованы в качестве ботов.

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

Какие существуют типы DDoS-атак?

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

  • перегрузка пропускной способности
  • перегрузка системных ресурсов
  • эксплуатация ошибок в программном обеспечении и пробелов в системе безопасности

Перегрузка полосы пропускания

Цель перегрузки полосы пропускания — сделать компьютер недоступным. DoS- и DDoS-атаки направлены непосредственно на сети и соответствующие соединяющие их устройства. Маршрутизатор может одновременно обрабатывать только определенный объем данных. Если эта пропускная способность будет превышена в результате атаки, соответствующие услуги перестанут быть доступными для других пользователей. Типичной DDoS-атакой, направленной на перегрузку пропускной способности, является атака Smurf.

Атака Smurf: эта DDoS-атака использует преимущества протокола Internet Control Message Protocol (ICMP), который помогает обмениваться информацией и сообщениями об ошибках в компьютерных сетях. Злоумышленник отправляет манипулированные пакеты ICMP Echo Request (Ping) на широковещательный адрес сети и использует IP-адрес цели в качестве адреса отправителя. Затем широковещательный запрос пересылается с маршрутизатора сети на все подключенные устройства, что заставляет их отправить ответ на адрес отправителя (Pong). Поэтому большая сеть с множеством подключенных к ней устройств может значительно снизить пропускную способность целевой сети.

Перегрузка системных ресурсов

DDoS-атака направлена на ресурсы системы; таким образом, злоумышленники используют тот факт, что веб-сервер может установить только ограниченное количество соединений. Если они используются для недействительных запросов, сервер будет фактически заблокирован для обычных пользователей. Это известно как наводнение. Классическими моделями DDoS-атак на системные ресурсы являются ping flood, SYN flood и UDP flood.

  • HTTP flood: это самый простой вариант DDoS-атаки на перегрузку ресурсов. Атакующий заваливает веб-сервер цели большим количеством HTTP-запросов. Для этого нужно просто получить доступ к любым страницам целевого проекта, пока сервер не рухнет от количества запросов.
  • Ping flood: когда речь идет об этом типе атаки, киберпреступники перегружают сервер пакетами ICMP Echo Request. Эти запросы обычно массово рассылаются ботнетами. Поскольку на эти запросы (ping) необходимо ответить пакетом данных от целевой системы (pong), медленные системы в итоге оказываются под угрозой ping flood.
  • SYN flood: эта атака злоупотребляет трехсторонним рукопожатием соединения TCP. TCP (Transmission Control Protocol) — это сетевой протокол, который вместе с IP обеспечивает бесперебойную передачу данных через Интернет. TCP-соединение всегда осуществляется в трехэтапном процессе аутентификации, который начинается с того, что клиент посылает серверу пакет синхронизации (SYN). Затем он принимается сервером, который подтверждает запрос собственным пакетом синхронизации (SYN), а также подтверждением (ACK). Затем процесс соединения завершается подтверждением (ACK) со стороны клиента. Если этот последний шаг не произойдет, система будет парализована, поскольку у сервера не будет окончательного подтвержденного соединения для хранения в рабочей памяти. Если из-за SYN flooding встретится большое количество таких полуоткрытых соединений, доступные ресурсы сервера будут полностью использованы.
     
  • UDP flood: при этих атаках киберпреступники полагаются на протокол User Datagram Protocol (UDP), не требующий подключения. В отличие от передачи данных по протоколу TCP, данные могут передаваться по UDP без необходимости установления соединения. При DoS- и DDoS-атаках UDP-пакеты отправляются на случайные порты целевой системы. Система безуспешно пытается определить, какие приложения ожидают передаваемых данных, и в результате отправляет ICMP-пакет обратно отправителю вместе с сообщением «destination unreachable». Если система испытывает нагрузку от многочисленных запросов такого рода, перегрузка ресурсов может привести к ограничению доступности для обычных пользователей.

Использование ошибок в программном обеспечении и пробелов в системе безопасности

Если хакер обнаружит определенные бреши в безопасности операционной системы или программы, он может спланировать DoS- или DDoS-атаки таким образом, чтобы запросы вызвали крах системы. Примерами такого типа атак являются атаки типа «пинг смерти» и LAND (Local Area Network Denial).

  • Ping of death: цель этой атаки — вызвать сбой системы. Хакеры используют ошибки в реализации интернет-протокола (IP). IP-пакеты обычно отправляются в виде фрагментов. Если для сборки пакета отправлена неверная информация, многие операционные системы могут быть обмануты, считая, что IP-пакет больше максимально допустимого размера в 64 КБ. Это может привести к переполнению буфера, когда программа пытается сохранить в буфере больше данных, чем он может обработать. Дополнительная информация должна куда-то деваться, и она попадает в соседние буферы, что приводит к перезаписи или повреждению хранящейся там информации.
     
  • Атака LAND: во время этого типа атаки злоумышленник посылает SYN-пакет в соответствии с трехсторонним рукопожатием TCP (см. выше). SYN-пакет имеет тот же адрес цели и отправителя, что и соответствующий сервер, который должен быть атакован. Затем сервер отвечает на запрос, посылая себе ответ в виде пакета SYN/ACK. Это можно интерпретировать как новый запрос на соединение, на который снова нужно ответить пакетом SYN/ACK. Это приводит к перегрузке пропускной способности, так как система продолжает многократно отвечать на запросы, что может привести к краху системы.

Как можно предотвратить и уменьшить DDoS-атаки?

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

  • Черный список IP-адресов: черные списки позволяют идентифицировать критические IP-адреса и отклонять пакеты данных. Эти меры безопасности могут быть реализованы вручную или автоматизированы с помощью динамических черных списков через брандмауэр.  
  • Фильтрация: чтобы отфильтровать нерегулярные пакеты данных, можно определить ограничения на объем данных за определенный период. Следует обратить внимание на прокси-серверы, которые могут означать, что многие клиенты зарегистрированы с одним и тем же IP-адресом на сервере и потенциально могут быть заблокированы.    
  • Куки SYN: Куки SYN направлены на устранение брешей в безопасности TCP-соединения. Если эти меры безопасности реализованы, информация о SYN-пакете больше не будет сохраняться на сервере, а будет отправлена клиенту в виде криптографического cookie. Атаки SYN flood занимают определенную мощность компьютера, но не перегружают память целевой системы.  
  • Балансировка нагрузки: эффективной мерой борьбы с перегрузкой является распределение нагрузки на различные системы, что становится возможным благодаря балансировке нагрузки. Здесь аппаратная мощность доступного сервиса распределяется между несколькими физическими машинами. Именно таким образом DoS- и DDoS-атаки могут быть в определенной степени перехвачены.
Совет

Хотите обеспечить максимальную безопасность для своего сайта? Прочитайте о SSL-сертификатах от IONOS и о том, как они повышают доверие к вашему сайту.

Оцените статью
cdelat.ru
Добавить комментарий