В этой статье я покажу вам пошаговый процесс предотвращения атак на систему безопасности с помощью машинного обучения K-Means Clustering.

Что такое кластеризация?

Кластеризация — один из наиболее распространенных методов анализа данных. Он используется для получения структуры данных. Это идентификация и группировка похожих точек данных в больших наборах данных.

Что такое кластер K-средних?

Кластеризация K-средних — это простой алгоритм обучения без учителя, который используется для решения проблем кластеризации. Его основная цель состоит в том, чтобы разделить набор наблюдений на несколько кластеров.

Алгоритм K-средних работает следующим образом:

  1. Укажите количество кластеров K.
  2. Инициализируйте центроиды, а затем случайным образом выберите K точек данных для центроидов.
  3. Назначьте все точки данных ближайшему k.
  4. После этого пересчитываются положения k центроидов
  5. Шаги 3 и 4 повторяются до тех пор, пока положения центроидов не перестанут двигаться.

Что такое атака на безопасность (DDoS)?

Распределенная атака типа «отказ в обслуживании» — это кибератака, при которой злоумышленник пытается сделать компьютер или сетевой ресурс недоступным для предполагаемых пользователей, временно или на неопределенный срок прервав работу служб хоста, подключенного к Интернету.

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

Шаг, чтобы следовать:

Создайте систему, которая будет полезна для сервера с точки зрения следующих функций:

  1. Эта система будет вести журнал информации о клиенте или запросе к серверу, например, мы можем получить файл журнала веб-сервера по адресу /var/log/httpd/

2. Эти данные журнала клиентов будут использоваться для поиска необычного шаблона клиентского запроса.

Теперь нам нужно создать программу для кластеризации данных.

Приведенный ниже код получит журнал и преобразует его в формат CSV с помощью библиотеки pandas.

Приведенный ниже код прочитает журнал, получит столбцы IP и Status_code, удалит ненужные столбцы и преобразует их в кадр данных pandas.

В приведенном ниже коде мы будем масштабировать данные в фиксированном диапазоне.

Вот основная часть, в которой мы собираемся создать кластеры разных IP-адресов с разными кодами состояния, используя алгоритм K-Means, который поможет нам заблокировать атакующие IP-адреса.

Создание точечной диаграммы для визуализации IP-адреса и кода состояния в виде кластеров.

Создание гистограммы для визуализации того, с какого IP приходит MAX запросов

Github Repo для полного кода — https://bit.ly/3Big5YN

до сих пор мы обсуждали вариант использования кластеризации методом k-средних.

Еще один вариант использования кластеризации K-средних —

~ Подробный анализ записи звонков

~ Классификация документов

~ Сегментация клиентов

~ Оптимизация магазина доставки

Спасибо, что прочитали эту статью……😊😍