Отражение волюметрических атак UDP Flood
UDP Flood — это распространенный вектор L4 DDoS-атак, при котором атакующий отправляет огромное количество пакетов UDP (User Datagram Protocol) на случайные или определенные порты целевого сервера. Поскольку UDP является протоколом без установления соединения (stateless), сервер вынужден проверять наличие приложений на портах получателя и отправлять обратно ICMP Destination Unreachable ответы. Это приводит к исчерпанию пропускной способности сети и перегрузке сетевого стека ядра ОС. Часто UDP-флуд организуют с помощью спуфинга (подмены) IP-адреса источника или через отражение (amplification) от публичных служб (DNS, NTP, SSDP).
# Базовые правила iptables для ограничения частоты UDP пакетов на порт
# Создаем цепочку для фильтрации UDP-пакетов
iptables -N UDP_LIMIT
iptables -A INPUT -p udp --dport 5060 -j UDP_LIMIT
# Лимитируем: не более 50 пакетов в секунду с одного IP, всплеск до 100
iptables -A UDP_LIMIT -m hashlimit --hashlimit-name udp_hash --hashlimit-above 50/sec \
--hashlimit-burst 100 --hashlimit-mode srcip -j DROP
# Разрешаем легитимный трафик
iptables -A UDP_LIMIT -j ACCEPT