Abstract: Some machine learning methods are analyzed. Various artificial intelligence (AI) algorithms are considered that allow the recognition of network attacks based on data obtained from network traffic. A comparative analysis of these algorithms is presented.
Keywords: network traffic, intrusion, network traffic anomalies, artificial intelligence algorithms, NSL-KDD set.
Введение
Мониторинг сетевого трафика с каждым годом становится все более важной отраслью обслуживания сетевой инфраструктуры. Существует множество специализированных инструментов для онлайн-мониторинга сетевого трафика, которые могут защищать от типичных (известных) типов атак, немедленно блокируя некоторые части трафика. Однако в сетевом трафике могут обнаруживаться неизвестные атаки, связанные с изменением трафика, которое, вероятно, не сможет быть обнаружено интерактивными инструментами. Тем не менее, это изменение можно обнаружить при помощи методов интеллектуального анализа данных, бурное развитие которых в последние годы послужило мотивацией для написания настоящей работы. Объектом исследования являются различные алгоритмы искусственного интеллекта (ИИ), которые позволяют выполнить распознавание сетевых атак по данным, полученным из сетевого трафика. Предметом исследования является сравнительный анализ этих алгоритмов.
Основная часть
Многие методы контроля сети имеют свои ограничения и не могут обезвредить все атаки из-за их постоянной эволюции, не говоря уже о разработанных злоумышленниками инструментах для обхода систем безопасности. Эти ограничения побудили разработчиков найти новый подход к борьбе с сетевыми вторжениями. Вторжением называется действие, при котором злоумышленник пытается взломать чью-либо систему. Оно обнаруживается и перехватывается с помощью системы обнаружения вторжений (англ. Intrusion Detection System, IDS). IDS анализирует трафик в сети и мониторит сеть на предмет любых видов вредоносной активности. Каждый раз, когда IDS находит какую-либо несанкционированную активность, она автоматически отправляет предупредительный сигнал лицу, ответственному за принятие мер по обеспечению безопасности. IDS становится важным методом защиты сетей от разного рода угроз и неправомерного использования.
Этот инструмент наиболее эффективен для защиты сети или компьютерной системы от атак еще до того, как они начнутся. Это связано с его способностью распознавать вторжения или попытки вторжений путем отслеживания аномального поведения пользователя или путем распознавания атаки из потока сетевых данных. Однако следует отметить важность других механизмов безопасности.
Процесс обнаружения вторжений основан на сборе информации путем наблюдения за рядом событий, благодаря которому система может анализировать и обрабатывать собранные данные. Анализ и обработка имеют препятствие, которое любой подход, предлагаемый в этой области, должен учитывать и пытаться преодолеть – временные ограничения. Любая операция, выполняемая для обнаружения вторжений, должна выполняться в условиях реального времени с оптимальной скоростью и точностью выявления сетевых атак. Важно отметить, что не каждая обнаруженная аномалия может быть опасной, однако такие результаты должны быть использованы для дальнейшего расследования, которое приведет к окончательному решению о том, представляла ли выявленная аномалия собой угрозу или нет.
Обычно традиционные IDS основаны на правилах, которые описывают определенные зависимости как идентификаторы угроз. Такими правилами являются, например, описание типичного поведения систем и пользователей или сигнатуры (шаблоны) типичных угроз. На основе правил традиционные системы обнаруживают ранее идентифицированные и описанные угрозы. Если система обнаруживает отклонение от нормальных (безопасных) условий, одновременно определяется характер этого отклонения, например, увеличение количества попыток протоколирования, сканирование компьютерных портов в сети, связь с использованием нетипичных портов, ошибки в структуре пакетов.
Недостаток таких решений заключается в необходимости заранее идентифицировать и охарактеризовать угрозы – без этого системы были бы беспомощны. Отсутствие защиты от новых и неизвестных типов атак является серьезной проблемой и может привести к опасным ситуациям, особенно когда атака направлена на конкретную отрасль промышленности или конкретное техническое решение.
Решением этой проблемы могут быть системы, которые обнаруживают аномалии с использованием собственных шаблонов, основанных на предыдущем анализе веб-трафика (проводимом, когда атака не происходит) [1]. Такой подход позволяет автоматически создать профиль функционирования сети, специфичный для данного клиента, а затем попытаться обнаружить нетипичное поведение (атаки). Благодаря автоматическому формированию структуры трафика система становится самообучающейся и адаптируется к изменениям в работе сети и поведению ее пользователей. В таких решениях можно использовать алгоритмы искусственного интеллекта (ИИ) и экспертные системы, задачей которых будет предварительная оценка и классификация обнаруженных аномалий. Однако важно отметить, что такой подход непрост, поскольку он потребует выбора правильных алгоритмов и ключевых параметров. Примером такого ключевого параметра может быть временное окно для анализа данных и частота анализа [2]. Исследователями машинного обучения проделан невероятный объем работы в области IDS для выявления различных атак в сети. Подходы на основе алгоритмов ИИ широко используются для разработки IDS, поскольку они способны обрабатывать огромное количество данных, и, соответственно, администраторы могут принять адекватные меры для предотвращения вторжений.
В качестве основного источника данных в рамках исследования был выбран набор NSL-KDD. Учитывая успех предыдущих достижений, связанных с применением методов машинного обучения в том числе и на этом наборе данных, в рамках данной работы предлагается выполнить эксперимент по обучению и тестированию методов машинного обучения на расширенном множестве атрибутов данных NSL-KDD. Такой подход позволит обобщить модель с лучшими результатами и на другие данные, аналогичные рассматриваемым.
Набор данных NSL-KDD был выпущен как новая и улучшенная версия набора данных KDD’99 [3]. Он используется в качестве эталонных данных для оценки различных методов обнаружения вторжений в современных сетевых системах. Набор данных состоит из файлов «KDDTrain+» и «KDDTest+», которые содержат данные для обучения и тестирования соответственно. Оба файла состоят из записей интернет-трафика, обнаруженных реальной системой обнаружения вторжений. Самым популярным типом записей в наборе является метка «normal», которая обозначает отсутствие атаки.
Всего в наборе данных имеется 36 типов атак, которые являются частью четырех различных категорий атак. На рисунке 1 проиллюстрирована гистограмма распределения типов атак в наборе данных.
Рисунок 1 – Частота встречаемости атак в наборе данных NSL-KDD [4]
Кроме того, эти тип атак могут быть разделены на четыре основных категории, а именно: DoS-атаки, атаки зондированием (Probe), атаки на повышение привилегий (Privilege) и атаки доступа (Access) [3]. Классификацию атак иллюстрирует рисунок 2. DoS-атаки являются наиболее популярной категорией сетевых атак.
Рисунок 2 – Распределение типов атак по категориям с указанием числа записей, относящихся к конкретной категории [3]
Таким образом, решение задачи распознавания атак состоит в классификации входных записей, полученных из сетевого трафика. Всего имеется пять классов, четыре из которых связаны с той или иной категорией атаки.
В общем случае набор данных, необходимых для обнаружения аномалий, может быть выделен при помощи специальных утилит, выполняющих мониторинг и анализ сетевого трафика. Одним из таких инструментов является Wireshark – свободное распространяемое программное обеспечение, которое используется в том числе для захвата и выделения данных в используемом наборе данных [4]. При этом для классификации сигналов используются методы на основе искусственного интеллекта.
Большинство систем обнаружения аномалий в сетевом трафике традиционно были основаны на признаках. Такими признаками могут быть номера портов, статические подписи, статистические характеристики и т. д. Сложность идентификации сетевых атак заключается в том, чтобы выделить соответствующие им признаки – этот процесс может занять большое количество времени. Кроме того, существующие подходы недействительны для неизвестных протоколов. Чтобы решить возникающие проблемы, чаще всего используются подходы, основанные на машинном и глубоком обучении.
В ходе проведения экспериментов методы машинного обучения были обучены и протестированы на наборе данных [4] как по отдельности, так и в рамках ансамбля – для сравнительного анализа был выделен список моделей, включавший в себя модель на основе правил, простейший персептрон, многослойный персептрон, логистическую регрессию, а также ансамбль из последних трех классификаторов.
Результаты сравнения классификаторов на тестовых наборах данных приведены на рисунке 3.
Рисунок 3 – Сравнение алгоритмов машинного обучения в задаче распознавания сетевых атак
Таким образом, итоговые показатели точности на неизученных данных демонстрируют превосходство модели многослойного персептрона (98%) по сравнению с остальными используемыми методами.
Заключение
В работе выполнен сравнительный анализ некоторых методов машинного обучения. Результаты показывают, что более современные алгоритмы хорошо работают в области обнаружения аномалий в данных, и по этой причине могут быть использованы в полноценных системах обнаружения вторжений как средство распознавания и классификации сетевых атак. Используемая для сравнения конфигурация нейронной сети на основе многослойного персептрона состоит из одного скрытого слоя из пяти нейронов. Поэтому можно говорить о том, что полученный результат еще может быть улучшен, например, за счет использования более современных и сложных нейросетевых моделей, основанных на алгоритмах глубокого обучения.
References
1. Bin, Y. Application of AI technology in big data network security de-fense. – Computer products and circulation, 2019 (03): p.142.2. Ning, W. Application of big data and artificial intelligence technology in computer network. – Electronic technology and software engineering, 2019 (08): p.12.
3. Nancy, P., Muthurajkumar, S., Ganapathy, S., Kumar, S., Selvi, M., Arputharaj, S. Intrusion detection using dynamic feature selection and fuzzy temporal decision tree classification for wireless sensor networks, IET Commununications, vol. 14, no. 5, pp. 888-895, 2020.
4. NSL-KDD. Kaggle. [Электронный ресурс]. Режим доступа: https://www.kaggle.com/hassan06/nslkdd (дата обращения: 26.04.2023)