Защита от DoS

Защита от DDoS

Определение DDoS

Два способа атаки DoS:

  • Вывести сервис из строя
  • Заблокировать сеть

Типы атак

Тип атакиСпособ атакиСпособ защиты
Распределенная DoSНесколько независимых IP-адресов одновременно атакуют1. Понижение сервиса 2. Черный список 3. Отключение сетевого оборудования
Атака Yo-yo (атака-йо-йо)Для сервисов с возможностью автоматического расширения ресурсов, атакуют в промежутках уменьшения ресурсовЧерный список
Атаки на прикладном уровне (Application layer attacks)Атакуют на определенные функции или особенности, атака LAND относится к этому типуЧерный список
LANSЭтот метод атаки использует специально сформированные TCP SYN-пакеты (обычно используемые для установления нового соединения), заставляя целевую машину открывать пустое соединение с одинаковыми исходными и целевыми IP-адресами, постоянно отвечая сама себе, что приводит к исчерпанию ресурсов системы до сбоя. Этот метод атаки не совпадает с атакой SYN-флуд.Черный список
Продвинутая постоянная DoS (Advanced persistent DoS)Противоразведка/целенаправленные/избегание контрмер/длительные атаки/большая вычислительная мощность/многопоточные атакиПонижение сервиса
Атака медленного POST HTTP (HTTP slow POST DoS attack)Создание легитимного соединения, затем очень медленная отправка большого количества данных, что приводит к исчерпанию ресурсов сервераПонижение сервиса
Атака Challenge Collapsar (CC) (Challenge Collapsar (CC) attack)Частая отправка стандартных легитимных запросов, которые занимают много ресурсов, например, поисковые системы занимают много памятиПонижение сервиса, распознавание контента
ICMP flood (Internet Control Message Protocol) (ICMP flood)Большое количество ping/ошибочных ping-пакетов /Ping of death (поврежденный ping-пакет)Понижение сервиса
Постоянная атака отказа в обслуживании (Permanent denial-of-service attacks)Атака на оборудованиеРаспознавание контента
Отраженная атака (Reflected attack)Отправка запросов третьим сторонам, подделка адресов для перенаправления ответов на настоящих жертвСфера DDoS
Усиление (Amplification)Использование некоторых сервисов в качестве отражателей для усиления трафикаСфера DDoS
Ботнет MiraiИспользование контролируемых IoT-устройствСфера DDoS
Паника SACK (SACK Panic)Использование максимального размера сегмента и избирательного подтверждения, приводящее к повторной передачеРаспознавание контента
Атака Shrew (Shrew attack)Использование уязвимостей механизма повторной передачи TCP для прерывания TCP-соединений на той же линии с помощью кратковременных всплесков синхронного трафикаОтбрасывание по тайм-ауту
Атака медленного чтения (Slow Read attack)Аналогично медленному POST, отправка легитимного запроса, но очень медленное чтение, чтобы исчерпать пул соединений, уведомляя очень маленькое число для размера TCP Receive WindowОтключение по тайм-ауту, понижение сервиса, черный список
SYN flood (SYN洪水)Отправка большого количества TCP/SYN-пакетов, приводящее к полуоткрытым соединениям на сервереМеханизм тайм-аута
Атака TearDrop (TearDrop attacks)Отправка поврежденных IP-фрагментов с перекрывающимися, сверхбольшими полезными нагрузками на целевую машинуРаспознавание контента
Атака TTL истекла (TTL expired attack)Когда маршрутизаторы отбрасывают пакеты из-за истечения TTL, процессор маршрутизатора должен генерировать и отправлять ICMP-ответы о превышении времени. Создание многих таких ответов может перегрузить процессор маршрутизатораОтбрасывание трафика
UPnP атакаОснована на технологии усиления DNS, но механизм атаки - это маршрутизатор UPnP, который пересылает запросы с одного внешнего источника на другой, игнорируя правила поведения UPnPПонижение сервиса
Отраженная атака SSDPМногие устройства, включая некоторые домашние маршрутизаторы, имеют уязвимости в программном обеспечении UPnP, которые злоумышленники могут использовать для получения ответов на выбранный ими целевой адрес с порта 1900.Понижение сервиса, блокировка порта
ARP подменаСвязывание MAC-адреса с IP-адресом другого компьютера или шлюза (например, маршрутизатора), что приводит к перенаправлению трафика, предназначенного для оригинального реального IP, на атакующего, что приводит к отказу в обслуживании.Сфера DDoS

Меры защиты

  1. Идентификация атакующего трафика
    • Разрушение сервиса
      • Идентификация содержимого трафика
    • Заблокирование сервиса
      • Запись времени доступа
  2. Обработка атакующего трафика
    • Отбрасывание атакующего трафика
    • Блокировка атакующего IP
      • IPv4 IP количество ограничено, легко создать черный список
      • IPv6 количество больше, трудно создать черный список. Можно использовать сегменты адресов IPv6, но есть риск ложной блокировки
    • Контроль частоты доступа

Открытые инструменты

Инструменты для атак

Инструменты защиты

Мониторинг трафика

  • https://github.com/netdata/netdata
    • GPL-3.0 лицензия
    • 5.2k форков, 58.3k звезд
    • C
  • https://github.com/giampaolo/psutil
    • BSD-3-Clause лицензия
    • 1.2 форка, 8.2k звезд
    • Python, C
    • Кроссплатформенная библиотека для мониторинга процессов и систем в Python, также мониторинг сети
  • https://github.com/iptraf-ng/iptraf-ng
    • GPL-2.0 лицензия
    • 22 форка, 119 звезд
    • C
    • IPTraf-ng - консольная программа для мониторинга сетевого трафика в Linux, отображающая информацию о IP-трафике.