Защита от DDoS — подготовка, реагирование, восстановление
Введение

DDoS (Distributed Denial of Service) — одна из самых распространённых и затратных угроз для онлайн‑сервисов. Атаки могут привести к финансовым потерям, падению репутации и простойным. Это руководство объясняет отличия DoS и DDoS, показывает практические шаги до, во время и после атаки, а также предлагает шаблоны, чек‑листы и методики для разных ролей.
Важно: в документации и логах могут содержаться персональные данные. Соблюдайте правила конфиденциальности и GDPR при обмене логами с внешними провайдерами.
Понимание DoS и DDoS
Определения в одну строку:
- DoS — атака, при которой одна точка генерирует нагрузку, чтобы исчерпать ресурсы цели.
- DDoS — та же цель, но нагрузку создаёт распределённая сеть взломанных устройств (ботнет).
Ментальная модель: представьте маленькую комнату и толпу людей. Один человек (DoS) уже мешает, но оживлённая толпа (DDoS) делает комнату полностью недоступной.
Механики атак:
- Насыщение полосы пропускания — перегрузка сети объёмом трафика.
- Исчерпание ресурсов сервера — перегрузка CPU, памяти или соединений.
- Амплификация и ретфлексия — использование уязвимых третьих сторон для усиления трафика.
- Многоуровневые комбинации — атаки на прикладной уровень (HTTP) и сетевой одновременно.
Почему IoT уязвимы: у многих устройств слабые пароли и устаревшее ПО. Злоумышленник может собрать десятки тысяч таких устройств в ботнет.
Когда стандартные меры не срабатывают:
- Если защита не покрывает статистику пиковых нагрузок.
- Если отсутствует автоматическая маршрутизация трафика на скраббер.
- При использовании новых векторов (например, QUIC/HTTP3), которые не анализируются старым ПО.
Уровни зрелости защиты (руководство по приоритезации)
- Базовый: брандмауэр, обновления ОС, резервные копии.
- Средний: WAF, мониторинг, SLA с ISP, load balancing.
- Продвинутый: специализированные DDoS‑скрабберы, многорегиональная инфраструктура, автоматические переключения, тестирование инцидентов.
- Проактивный: постоянные учения, ретензивные аналитики трафика и threat intelligence подписки.
Что делать до DDoS‑атаки
Оценка критичности сервисов
- Перечислите публично доступные сервисы (веб‑сайты, API, VPN, почтовые шлюзы).
- Классифицируйте по важности: высокий, средний, низкий доступ.
- Определите SLA и допустимое время простоя для каждого сервиса.
Инвентаризация и защита
- Проверьте WAF и применяемые политики: покройте все входящие публичные домены и API.
- Обновите и защитите устройства управления (SSH, RDP): двухфакторная аутентификация, смена паролей по умолчанию.
- Настройте сетевые ACL и rate limiting на крайних точках.
Взаимодействие с провайдерами
- Обсудите с ISP и CSP их DDoS‑возможности и лимиты. Запишите контактные телефоны и SLA.
- Подпишитесь на специализированный DDoS‑скраббер, если это оправдано по риску.
- Распределите инфраструктуру между провайдерами, чтобы избежать единой точки отказа.
Мониторинг и базовые линии
- Соберите метрики: средний/пиковый трафик, количество сессий, CPU/память, задержки.
- Установите аномальные пороги (увеличение трафика, рост ошибок 5xx, падение TPS).
- Настройте оповещения для ответственных лиц.
План реагирования и роли
Подготовьте документ: порядок действий, контакты, эскалации. Назначьте роли:
- Руководитель инцидента — принимает решения и общается с высшим руководством.
- Сетевой инженер — анализирует трафик, применяет сетевые фильтры.
- Инженер приложений — оценивает влияние на приложение и запускает обходы.
- Юрист/коммуникации — готовит внешние и внутренние сообщения.
- Провайдер DDoS — управляет скраббингом и фильтрацией трафика.
Шаблон контактов храните в доступе офлайн и в облаке.
Что делать во время DDoS‑атаки
Признаки атаки:
- Внезапный рост входящего трафика.
- Резкое увеличение числа соединений и ошибок 502/504/503.
- Замедление отклика сервисов или полная недоступность.
Пошаговый план действий (инцидент‑ранбук)
- Объявление инцидента и активация плана. Создайте канал связи (чат, телефон). Назначьте лидера.
- Сбор данных: метрики сети, логи приложений, таблицы соединений, PCAP.
- Связь с ISP/CSP: выясните, наблюдает ли провайдер аномалию и может ли он предложить фильтрацию.
- Включение автоматической или ручной фильтрации: ACL, rate limiting, geo‑блокировка.
- Перенаправление трафика на скраббер (если подключён) или черный‑холл для бесполезных потоков.
- Анализ и подтверждение: изучите PCAP и логи для определения сигнатур атаки.
- Постоянное наблюдение и корректировки до полной стабилизации.
Ключевые действия по сетевым командам (примеры)
- Захват трафика (tcpdump):
# захват 10000 пакетов на интерфейсе eth0, порт 80
sudo tcpdump -i eth0 -c 10000 tcp port 80 -w ddos_capture.pcap- Быстрая статистика по соединениям (Linux):
sudo ss -s
sudo netstat -anp | grep :80 | wc -l- Фильтрация на маршрутизаторе (пример iptables):
# ограничить новые соединения до 50 в минуту
iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW -m limit --limit 50/minute --limit-burst 100 -j ACCEPTВажно: будьте осторожны с глобальными блокировками — можно отрезать легитимных пользователей.
Когда подключать скраббер?
- Если местные фильтры не справляются и нагрузки бьют по пропускной способности канала.
- Если атака использует множество распределённых источников.
Критерии приёмки для мер во время атаки
- Время реакции: оповещение и первые меры в течение 15–30 минут.
- Снижение ошибочных ответов (5xx) на 80% в течение часа после начала мер.
- Поддержание доступности сервисов согласно SLA либо переключение на режим деградации.
Анализ PCAP и логов
- PCAP показывает реальные пакеты, помогает обнаружить ретфлексию и амплификацию.
- Ищите признаки SYN‑flood, UDP‑амплификации, повторяющихся запросов с одинаковых заголовков User‑Agent.
- Сравнивайте IP‑диапазоны и ASN: массовые запросы с одного ASN часто указывают на прокси‑сетку.
Инструменты: Wireshark, tshark, tcpdump, Zeek (Bro), SIEM (Splunk, ELK).
Пример фильтра в tshark для HTTP:
tshark -r ddos_capture.pcap -Y "http.request" -T fields -e ip.src -e http.user_agent | sort | uniq -c | sort -nr | headЧто делать после DDoS‑атаки
Шаги постинцидентного восстановления:
- Закрепление стабильности: проверьте все сервисы, подтвердите корректность конфигураций.
- Сбор и архивирование артефактов инцидента: PCAP, логи, скриншоты мониторинга.
- Полный анализ: root cause, векторы атаки, затронутые компоненты.
- Обновление плана реагирования с учётом уроков инцидента.
- Тестирование: прогоните сценарии восстановления и проверки против новых ясно определённых атак.
Ретроспектива: включите все заинтересованные стороны. Фокусируйтесь на том, что сработало, что не сработало и какие действия сократят время восстановления.
Контрольные вопросы для ретроспективы:
- Достаточно ли быстры были оповещения?
- Была ли коммуникация эффективной между командами и с провайдерами?
- Какие правила фильтрации можно автоматизировать?
- Нужно ли обновить контракт с провайдером или подключить дополнительного поставщика?
Шаблон отчёта об инциденте (краткий)
| Пункт | Описание |
|---|---|
| Дата и время начала | YYYY‑MM‑DD HH:MM UTC |
| Дата и время завершения | YYYY‑MM‑DD HH:MM UTC |
| Тип атаки | UDP/HTTP/SYN/AMP/смешанная |
| Задействованные сервисы | Список хостов и доменов |
| Ключевые меры | Что сделано (фильтрация, скраббинг, блокировки) |
| Влияние | Доступность, потери по SLA, клиенты |
| Рекомендации | Коротко: 3–5 пунктов для улучшения |
Роль‑ориентированные чек‑листы
Сетевой инженер:
- Проверить использование полосы и сессий.
- Включить rate limiting и ACL.
- Захватить PCAP и передать в SOC.
SOC/инцидент‑менеджер:
- Оповестить руководство и провайдеров.
- Координировать блокировки и скраббинг.
- Вести журнал действий и сохранять артефакты.
Руководство/PR:
- Подготовить внешнее заявление при необходимости.
- Информировать клиентов о статусе и ETA восстановления.
Альтернативные подходы и ограничения
- Полностью развернутый локальный скраббер может не справиться, если канал ISP перегружен. В этом случае нужен внешний сервис.
- Geo‑блокировка эффективна при атаке из одного региона, но рисковать блокировкой легитимных пользователей нельзя.
- Ручная фильтрация работает на малых инцидентах; при масштабных атаках требуется автоматизация.
Когда защита может не помочь:
- Если атака превышает ёмкость магистрального канала у провайдера.
- Если атака использует новые протоколы, не поддерживаемые оборудованием.
Практики безопасности и жёсткая защита
- Патчите edge‑устройства и приложения регулярно.
- Минимизируйте публичные адреса и сводите к минимуму открытые порты.
- Применяйте принцип наименьших привилегий для всех сервисов.
- Обновите политики доступа к API и используйте токены с ограниченным временем жизни.
Приватность и соответствие GDPR
- Передаваемые PCAP и логи могут содержать персональные данные. Передайте их внешним подрядчикам только по NDA и с обоснованной целью.
- Храните артефакты инцидента зашифрованными и с контролем доступа.
Быстрая методика тестирования готовности
- Запустите симуляцию (статический тест нагрузки) на нерабочей среде.
- Проверьте оповещения и время реакции команд.
- Отработайте переключение на запасной скраббер и возврат трафика.
- Зафиксируйте уроки и обновите план.
Пример плейбука действий (коротко)
- 00–15 минут: выявление и подтверждение, объявление инцидента.
- 15–60 минут: первичные меры (limit, ACL, провайдеру запрос на фильтрацию).
- 1–4 часа: глубокий анализ, корректировки фильтрации, скраббинг.
4 часов: переход в режим восстановления, ретроспектива.
Решающее дерево для принятия решения
flowchart TD
A[Подозрение на DDoS] --> B{Рост трафика?}
B -- Да --> C{Пиковая нагрузка на канал?}
C -- Да --> D[Связаться с ISP и включить скраббинг]
C -- Нет --> E{Локальные CPU/Conn?}
E -- Да --> F[Применить rate limiting и WAF]
E -- Нет --> G[Дальнейший анализ PCAP]
B -- Нет --> H[Проверить другие причины 'ошибки приложения']Часто задаваемые вопросы
Что такое разница между фильтрацией на уровне провайдера и локальной фильтрацией?
Фильтрация у провайдера удаляет вредоносный трафик до входа в ваш канал и эффективна против перегрузки пропускной способности. Локальная фильтрация уменьшает нагрузку на сервисы, но не спасёт при перегрузке линии.
Как понять, что атака закончилась?
Когда входящий трафик вернулся к базовым уровням, количество ошибок уменьшилось, и сервисы стабильно работают в течение нескольких циклов мониторинга.
Нужно ли уведомлять клиентов о DDoS?
Да. Прозрачная коммуникация снижает недовольство. Сообщите о проблеме, предпринимаемых мерах и ожидаемом времени восстановления.
Краткое резюме
- DDoS — угроза, требующая процедур, инструментов и взаимодействия с провайдерами.
- Подготовьте план, инвентаризируйте сервисы и назначьте роли.
- Во время атаки собирайте данные, применяйте фильтры и работайте с ISP/CSP.
- После атаки проанализируйте причины, обновите план и протестируйте меры.
Важно: регулярные учения и проактивный мониторинг сокращают время восстановления и снижают риск серьёзных потерь.
Похожие материалы
Как настроить границы в Excel для читаемых таблиц
Запуск магазино́го приложения на Appy Pie
Как смотреть Супербоул LVII 2023 онлайн без кабеля
Desktop Stacks в macOS Mojave — включение и использование
Inline-теги в Evernote: обход и советы