DDoS-атака – это кибератака, при которой злоумышленники искусственно создают рост запросов к серверу, сайту или сети, чтобы перегрузить их и сделать недоступными для реальных пользователей. Для этого они заражают множество устройств вредоносным программным обеспечением. Это относится и к компьютерам, и к ноутбукам, и к роутерам, и к смартфонам, и к умным устройствам. В результате устройства становятся ботнетами, то есть сетью ботов, управляемых общим ботмастером. По команде управляющего сервера все устройства одновременно начинают осуществлять запросы на требуемый сайт.
По сути, это поток трафика, который поначалу кажется вполне легитимным, то есть распознать атаку бывает тяжело. Сами по себе запросы не являются целесообразными. Их задача — только создать дополнительную нагрузку и вывести из строя сайт (сервер).
У любого сервера или канала связи есть предел пропускной способности. Когда запросов становится слишком много, ресурсы исчерпываются: и память и процессорное время, и многое другое. В результате сайт начинает работать медленно или полностью «ложится», то есть реальные пользователи не могут на него зайти.
Цели у атакующих бывают разные. Чаще всего они экономические или политические. То есть устранение конкурентов, вымогательство (за прекращение DDoS-атаки), информационная война или протест. Но бывает, что злоумышленники действуют из личной неприязни или для развлечения. То есть они проверяют свои силы, мстит за что-то (это обычная практика для обиженных сотрудников или неудовлетворенных клиентов). Но есть и более опасные цели, например, DDoS может маскировать другую атаку, посерьезнее. Например, атака на сайт для взлома базы данных и кражи информации.
Как обнаружить DDoS-атаку на сервер
Обнаружение DDoS-атак – это процесс выявления аномалий в сетевом трафике, указывающих на целенаправленную попытку перегрузить сайт излишними запросами (как правило, тысячными и миллионными). Сервер попросту не в состоянии обработать все, поэтому начинает сначала замедляться, а потом и полностью перестает отвечать. Чем быстрее DDoS-атака будет обнаружена, тем проще ее нейтрализовать.
Какие методы и инструменты помогают при атаках:
- мониторинг метрик. Требуется регулярно отслеживать ключевые показатели. Это и объем трафика, и время отклика, и загрузка CPU, и память, и количество ошибок. Для верности следует установить базовые показатели трафика в спокойное время (когда потенциальных клиентов и вообще пользователей не так много). Это позволит вовремя заметить отклонения и защитить сайт;
- анализ логов. Надо изучать серверные логи, искать и исключать повторяющиеся паттерны, замечать всплески соединений от отдельных IP и аномальные статусы ответов;
- системы анализа трафика. Они собирают протоколы и порты в режиме реального времени. В них внедрены также алгоритмы, в том числе и машинное обучение, что позволяет найти более сложные аномалии;
- пороговая фильтрация. Можно настроить правила: если трафик или количество запросов с одного IP превышает заданный порог, система предупреждает о подозрительной активности и блокирует запросы;
- обнаружение на основе сигнатур. Некоторые системы сравнивают текущий трафик с шаблонами DDoS-атак. И, соответственно, они срабатывают при совпадении. Но этот метод эффективен в основном против известных угроз. Если угрозы относительно новые или слишком сложные, то такой способ может не сработать;
- поведенческий анализ. Системы строят профили поведения реальных пользователей, клиентов или протоколов, а затем отслеживают любые отклонения. Это особенно полезно против DDoS-атак, имитирующих легитимную активность;
- SIEM-системы. Они агрегируют данные из разных источников (например, из метрик и логов) и помогают выявлять сложные аномалии.
Важные нюансы
Во-первых, не нужно пользоваться одним методом. Лучше всего подойдет комбинация: это дает более полную картину атаки на сайт и снижает риск так называемых ложных срабатываний. Да и к самим ложным тревогам надо быть готовым, поскольку даже продвинутые и инновационные системы могут ошибаться. Тут надо настроить правила так, чтобы минимизировать блокировку легитимного трафика, то есть не заблокировать реальных пользователей. Во-вторых, настроить оповещения (автоматические уведомления на почту и мессенджеры), чтобы сразу получать сигналы об аномалиях и оперативно на них реагировать. В-третьих, проводить регулярный аудит.
Основные признаки DDoS-атак на сервер
Признаки, по которым можно понять, что началась атака на сайт:
- резкий и ничем не мотивированный всплеск трафика. Внезапное увеличение числа запросов и посещений без явной причины. Например, если нет рекламной кампании, то это выглядит подозрительно;
- замедление работы сайта. Он загружается с сильной задержкой, возникают ошибки (502, 503 и другие);
- необычные паттерны запросов. Проще говоря, это многочисленные однотипные запросы. Или попытки соединиться с ресурсами, которые не существуют;
- смена географии трафика. Поступление запросов из регионов или с IP-адресов, которые не относятся к целевой аудитории. Например, с других часовых поясов или стран;
- аномалии в логах. Рост числа ошибок, всплеск соединений с отдельных подозрительных IP-адресов или ботнетов.
Конечно, эти признаки по отдельности не всегда однозначно указывают на DDoS-атаку. Они могут быть вызваны и другими факторами (например, вирусом или сбоем в работе оборудования). Но когда их слишком много сразу, нужно провести комплексный анализ.
Методы обнаружения DDoS-атак
Их можно разделить на две основные категории: пассивные (мониторинг трафика без вмешательства) и активные (с вмешательством в трафик).
Пассивные методы:
- анализ любых аномалий, даже незначительных. Система строит модель нормального поведения сети и выявляет отклонения;
- обнаружение на основе сигнатур. Это сравнение текущего трафика с базой известных шаблонов атак на сайт;
- поведенческий анализ. Выявление нетипичного поведения пользователей, клиентских приложений и сетевых протоколов;
- энтропийный анализ. Измерение случайностей в различных аспектах сетевого трафика.
Активные методы:
- пороговая фильтрация. При превышении порога (лимита) система активирует защитные меры;
- изоляция вредоносного трафика. Система блокирует подозрительный трафик и изолирует его от основной сети.
Отдельно следует выделить машинное обучение и ИИ. Системы используют искусственный интеллект для классификации трафика в реальном времени и фильтрации вредоносной активности. Это отличный вариант для блокировки новых и сложных угроз.
Для обнаружения атак на сервер используются как базовые инструменты, так и специализированные решения. Базовые нужны для захвата и анализа пакетов, для мониторинга соединений и для визуализации нагрузки. К специализированным решениям относятся межсетевые экраны (файрволы), системы управления информацией и системы обнаружения вторжений. Еще немаловажную роль играют облачные сервисы защиты от DDoS-атак.
Как реагировать в случае обнаружения атаки
Первое и главное, действовать надо максимально быстро, но при этом не хаотично, а собранно и по заранее спланированному алгоритму. Это поможет минимизировать нанесенный злоумышленниками ущерб. Сначала нужно проверить и убедиться, что это действительно DDoS-атака, а не, например, временный сбой. Затем следует сдержать атаку на сайт.
Как сдержать атаку на сервер:
- изолировать все критические системы для сохранения ресурсов ключевых бизнес-функций;
- переключиться на резервные линии связи. Или, как вариант, запросить временное увеличение лимита напрямую у провайдера;
- перенаправить текущий трафик. Для этого использовать облачные сервисы защиты;
- настроить фильтрацию, то есть ограничить количество запросов с одного IP-адреса;
- заблокировать известные вредоносные адреса;
- активировать WAF (Web Application Firewall);
- включить автоматическое масштабирование или добавить серверы для оптимального распределения нагрузки.
После сдерживания атаки следует перейти к ее детальному анализу. Во-первых, определить источник и тип (с какого уровня идет атака на сайт, каков ее масштаб). Во-вторых, оценить последствия и выявить цели DDoS-атаки (какие сервисы были атакованы и что вышло из строя). В-третьих, проверить инфраструктуру. То есть атака должна быть именно атакой, а не, например, прикрытием для кражи данных или других действий злоумышленников.
Восстановление работы сайта должно быть постепенным. Сервисы включаются по приоритетам (сначала критически важные, затем все остальные). Далее настраивается кеширование, оптимизируются базы данных, внедряется балансировка нагрузки между разными дата-центрами.
Когда работа восстановлена, специалист должен провести аудит: проверить конфигурационные файлы и возможные изменения в них, права доступа (остались прежними или изменились), наличие вредоносного программного обеспечения. Все действия обязательно документируются, чтобы в дальнейшем можно было реагировать более оперативно и профессионально на DDoS-атаки.
Несколько важных правил для пользователей:
- не вступать в переговоры с атакующими. Они могут требовать денег за остановку атаки на сайт, шантажировать и так далее. Ни в коем случае нельзя вестись на это;
- действовать спокойно и по заранее подготовленному плану (каналы связи с провайдером, сервисы защиты, распределение ролей в команде специалистов);
- не публиковать заявления об атаке на сайт. Это может стать хорошей стимуляцией для злоумышленников, чтобы продолжить действия;
- обязательно держать включенными инструменты мониторинга. Это нужно для отслеживания принятых мер и их эффективности.
После инцидента обязательно нужно скорректировать план реагирования для дальнейшей работы с сайтом.