- BrainTools - https://www.braintools.ru -

Искусственный интеллект против DDoS-атак и бот-активностей

В мире цифровых технологий даже самая незначительная деталь может стать определяющей для успеха или неудачи бизнеса. Безупречная и отказоустойчивая работа ИТ-систем — это не только демонстрация стабильности компании, но и условие выживания на рынке.

В этой статье мы расскажем, как разрабатывать и развертывать системы защиты от DDoS-атак и бот-активностей с применением ИИ-инструментов.

Что такое DDoS атаки и бот-активности

DDoS — распределенная атака, при которой сеть, сервис или сервер подвергаются перегрузке из-за мощного потока нелегитимного трафика, вследствие чего происходит отказ или замедление быстродействия системы и легитимные пользователи теряют доступ к ресурсам. В результате недоступности сервисов происходит простой ИТ-инфраструктуры, что приводит к потере выручки, дополнительно компании сталкиваются с репутационными рисками. Чем дольше продолжается сбой, тем значительнее становятся убытки.

По данным публичных отраслевых отчетов, число таких атак растет. Например, только за 2 квартал 2025 года количество атак на L3-L4 выросло на 43%, а на L7 выросло на 74% по сравнению со 2 кварталом 2024 года — по данным лаборатории Qrator Labs [1]. Наибольшее количество атак по итогам 2024 года пришлось на финтех и электронную коммерцию. Исследования показывают рост убытков от DDoS-атак: за первую половину 2025 года ущерб российского бизнеса утроился по сравнению с 2024 годом по данным лаборатории СБЕРа [2].

Популярные виды DDoS-атак

SYN-флуд — вид DDoS-атаки, при которой злоумышленник отправляет большое количество SYN-сегментов на сервер и не завершает «трехстороннее рукопожатие». SYN-сегменты — первые пакеты в процессе установления TCP-соединения. Служат для установления «трехэтапного рукопожатия», когда клиент сообщает о намерении установить соединение с сервером. Далее полуоткрытые запросы переполняют очередь ожидания на подключение (SYN backlog), и легитимные пользователи не могут установить соединение с ресурсом.

ICMP-флуд — разновидность DDoS-атаки, при которой злоумышленник отправляет большое количество ICMP-пакетов, чаще всего ping-запросы, на адрес жертвы, чтобы перегрузить канал или само устройство. Трафик зачастую генерируется с помощью сети зараженных компьютеров. Для каждого запроса сервер вынужден выделять ресурсы, что приводит к замедлению или выводу сервера из строя.

HTTP-флуд — вид DDoS атаки, при которой злоумышленник создает большое количество запросов, например, GET или POST, на сервер, с целью перегрузить его ресурсы. Масштаб достигается за счет ботнетов, а трафик маскируется под легитимный через ротацию браузерных и TLS‑отпечатков, что осложняет выявление нелегитимной активности.

Бот-активности

Бот — специальная программа, которая выполняет определенные действия на сайте или в приложении, имитируя настоящего пользователя. В отличие от DDoS-атак, прямой целью злоумышленника не является создание нагрузки или ограничение доступа к сайту для пользователей, боты эксплуатируют бизнес-логику приложения для создания ущерба компании.

Примеры бот-активностей:

  • массовое бронирование товаров или услуг с целью навредить конкуренту;

  • массовая регистрация аккаунтов для манипуляции отзывами о товарах или компаниях;

  • накручивание положительных или отрицательных отзывов на товары, услуги или компании;

  • сбор информации о конкурентах, через скрейпинг их сайтов или социальных сетей;

  • массовая регистрация пользователей с двухфакторной аутентификацией, и подтверждением через звонок или SMS — каждое из которых оплачивается компанией;

  • захват учетных записей — подбор или использование украденных учетных данных ботом для входа в систему с целью получить доступ к несанкционированной информации.

Перейдем к методам защиты

Многие типы DDoS-атак, такие как SYN-флуд или ICMP-флуд, зачастую можно отражать и без использования инструментов на основе искусственного интеллекта [3]. Достаточно корректно настроить сетевое оборудование, параметры сервера или методы фильтрации трафика. Например, для защиты от SYN-флуд-атаки достаточно ограничить время ожидания подтверждения «рукопожатия», увеличить размер очереди для новых подключений и установить лимит на число одновременных сессий с одного IP-адреса. Для ICMP-флуд-атаки можно ограничить ICMP-пакеты, а также лимитировать их скорость на уровне маршрутизатора или межсетевого экрана.

Стоит отметить, что не все DDoS-атаки можно эффективно отразить с помощью только ручных правил и «классических» методов. Например, правила на межсетевом экране могут не сработать при сложных, многовекторных атаках — так как злоумышленники постоянно меняют тактику и источники вредоносного трафика. Дополнительно в современных атаках используются боты, которые имитируют разные браузеры, действия человека. Например, заходят на страницы, открывают формы, оставляют заказы и комментарии, стараясь быть максимально похожим на реального пользователя.

Чтобы обнаружить такие атаки, уже недостаточно стандартных способов защиты, необходимо иметь аналитику поведения [4] пользователей, например, скорость перемещения мыши, время и последовательность действий, устройство, с которого пользователь подключается к ресурсу и так далее. Для анализа таких параметров хорошо подходят ИИ-инструменты. Далее будут показаны этапы разработки и развертывания подобных систем.

Стек технологий:

  • для анализа и подготовки данных используем NumPy и pandas;

  • для визуализации — Matplotlib;

  • обучение [5] моделей выполняем с помощью TensorFlow, Keras, PyTorch и scikit‑learn;

  • потоковую обработку реализуем на Apache Kafka;

  • для хранения и аналитики логов используем ClickHouse и Elasticsearch;

  • в роли брокеров очередей используем Redis и RabbitMQ;

  • API‑обвязку выполняем на FastAPI;

  • мониторинг и визуализацию реализуем на Prometheus и Grafana.

Разработка и внедрение ИИ для защиты от бот-активностей содержит несколько основных этапов, далее подробно расскажем про каждый из них.

Подготовка данных

Отбираем максимально полную информацию о пользовательских сессиях: идентификатор пользователя, время визита, конфигурацию браузера, браузерный или сетевой отпечаток, ошибки [6] и исключения, метаданные TLS‑рукопожатия, cookie‑файлы, разрешение экрана, тип устройства, геолокацию, IP‑адрес клиента и подсеть, длительность пребывания на страницах, последовательность действий, метрики нагрузки на backend и другое.

Пример структуры датасета на рисунке ниже включает идентификатор пользователя, время подключения, идентификатор сессии, движок браузера, бренд устройства, разрешение экрана, последовательность действий и местоположение.

Искусственный интеллект против DDoS-атак и бот-активностей - 1

Выполняем проверку данных на выбросы и возможные атаки

На примере длины сессий на рисунке ниже видно, что 75‑й квантиль соответствует 4 действиям, однако максимум превышает 800. Такие экстремальные значения помечаем как подозрительные и выносим на дополнительную проверку. После верификации подтвержденные случаи классифицируем как бот‑активность и исключаем из обучающей выборки, сохраняя их отдельно для валидации и настройки порогов детектора.

Обработка данных на примере длин сессий

Обработка данных на примере длин сессий

Формируем типы входа

Создаем два типа входов — табличные признаки, включая контент сессии, и последовательность событий внутри сессии. Табличные признаки обрабатываем многослойным персептроном с полносвязными слоями MLP, подходящим для задач классификации и регрессии. В полносвязных слоях каждый нейрон [7] слоя соединен со всеми нейронами следующего.

Последовательности обрабатываем LSTM (Long Short-Term Memory), которая учитывает порядок и временные зависимости и смягчает проблему исчезающего градиента благодаря ячейкам памяти [8] и гейтам по сравнению с SimpleRNN. Выходы веток объединяем и подаем на финальные слои.

Оценка качества модели

Качество работы модели оцениваем с помощью метрик: Precision, Recall, F1-score. Выбираем модель с наилучшим F1- score — таким образом мы находим и сохраняем лучшие параметры и веса модели.

Проверка качества эмбеддингов

Эмбеддинги — векторные представления объектов в пространстве. Предположим, что вектор пользователя — это усреднение по векторам его сессий. Мы исходим из предположения, что эмбеддинги сессий, принадлежащих одному пользователю, располагаются в близких областях векторного пространства, тогда как эмбеддинги различных пользователей должны быть существенно разделены. Пользователь должен быть похож сам на себя и не похож на других.

Искусственный интеллект против DDoS-атак и бот-активностей - 3

Среднее расстояние между одним и тем же пользователем (в разных сессиях) получилось 0.0065, между разными — 0.243, как видно на гистограмме, на рисунке выше, распределения почти не пересекаются, расстояние между разными пользователями отличаются примерно в 37 раз, что говорит о том, что модель выбрана правильно и результаты хорошие. Пример построенных эмбеддингов и пример кластеризации сессий (цветами выделены похожие сессии) на рисунках ниже.

Искусственный интеллект против DDoS-атак и бот-активностей - 4
Искусственный интеллект против DDoS-атак и бот-активностей - 5

Задаем пороги аномалий

Опираясь на полученные распределения, задаем пороги аномалий. Если расстояние для текущей сессии заметно выходит за типичный диапазон, помечаем событие как подозрительное и либо разрываем соединение, либо запрашиваем дополнительную проверку для пользователя — например, captcha.

Вспомогательные сервисы

Мы используем RabbitMQ как брокер очередей событий, он обеспечивает устойчивость при повышенной нагрузке, распределение нагрузки и повторную доставку. Redis используем как быстрое хранилище состояний. Logstash, Elasticsearch для хранения, обработки и нормализации логов. Kibana, Grafana обеспечат визуализацию, интерактивный поиск по данным, визуализацию метрик.

Схема размещения L7 AI-агента в инфраструктуре

Схема размещения L7 AI-агента в инфраструктуре

Теперь поговорим о разработке и внедрении ИИ для защиты от DDoS-атак.

Подготавливаем параметры сбора данных

Аналогично защите от бот‑активности подготавливаем параметры сбора данных. Собираем телеметрию из NetFlow, IPFIX, sFlow и других источников и формируем признаки: IP‑адрес источника и назначения, протокол и порты, частота и общее количество пакетов, объем трафика, временные метки, TTL и другие. После первичной очистки нормализуем данные, взятые из нескольких источников, — удаляем дубликаты, синхронизируем время. Важно не только количество данных, но и их разнообразие — это повышает качество обучения модели.

Определение структуры нейронной сети

Выбираем архитектуру модели — для таких задач хорошо подходят автоэнкодеры, LSTM и TCN. Если применяется дообучение предобученной модели, учитываем риск отравления данных, при котором злоумышленник может дообучить модель на нелегитимном трафике. Необходимо предусмотреть строгую валидацию и фильтрацию обучающего трафика, чтобы предотвратить влияние нелегитимных данных на дообучение.

Проверяем качество эмбеддингов

После обучения получаем эмбеддинги объектов трафика. На валидации проверяем качество детектора с помощью F1 (гармоническое среднее precision и recall, метрика, измеряющая точность и полноту модели), ROC‑AUC (метрика, позволяющая понять, насколько хорошо модель разделяет норму и аномалии). Это показывает надежность модели и ее способность работать на новых данных.

Анализируем признаки, которые сильнее всего влияют на обнаружение аномалий, и проводим дополнительную аналитику по этим признакам.

Механизмы реагирования

Проектируем и реализовываем механизмы автоматического реагирования [9]. Реализуем поэтапные меры: мягкое ограничение скорости, tarpitting (временные задержки обработки пакетов), временную блокировку. Настраиваем пороги для определения нелегитимных событий.

Дообучение и мониторинг модели

Важно реализовать мониторинг производительности модели в реальном времени, необходимо оценивать такие метрики, как PR‑AUC, ROC‑AUC, F1, а также долю положительных и отрицательных прогнозов и другие показатели устойчивости модели. Нужно собирать срезы метрик: трафик и сущности, временные срезы. Если будут обнаружены новые виды трафика или атак, модель придется дообучить.

Тестирование системы

Тестирование системы проводим в условиях, близких к боевым. Осуществляем генерацию трафика, имитацию атак, а также проверяем устойчивость модели к противодействию, включая попытки обхода и отравления данных.

Схема размещения L3 AI-агента в инфраструктуре представлена на рисунке ниже. Описание вспомогательных сервисов AI-агента рассказывали ранее.

Искусственный интеллект против DDoS-атак и бот-активностей - 7

Подведем итоги

По мере усложнения цифровой инфраструктуры DDoS‑атаки и бот‑активности становятся многообразнее и изощреннее, в этих условиях традиционных средств защиты уже недостаточно. Для своевременного выявления и подавления многовекторных атак нужна связка сетевых мер и аналитики поведения [10] на основе ИИ. Практика показывает: максимальную устойчивость обеспечивает многоуровневая архитектура, корректная настройка сетевого оборудования и серверной инфраструктуры, фильтрация и очистка трафика, а также поведенческие модели, выявляющие аномалии на уровне пользователей и приложений с помощью ИИ.


Автор:

Никита Пономаренко, инженер направления автоматизации ИБ

Автор: USSC

Источник [11]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/22650

URLs in this post:

[1] Qrator Labs: https://blog.qrator.net/ru/reports/

[2] СБЕРа: https://www.vesti.ru/article/4569033

[3] интеллекта: http://www.braintools.ru/article/7605

[4] поведения: http://www.braintools.ru/article/9372

[5] обучение: http://www.braintools.ru/article/5125

[6] ошибки: http://www.braintools.ru/article/4192

[7] нейрон: http://www.braintools.ru/article/9161

[8] памяти: http://www.braintools.ru/article/4140

[9] реагирования: http://www.braintools.ru/article/1549

[10] поведения: http://www.braintools.ru/article/5593

[11] Источник: https://habr.com/ru/companies/ussc/articles/972282/?utm_source=habrahabr&utm_medium=rss&utm_campaign=972282

www.BrainTools.ru

Rambler's Top100