Защита от 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-трафике.