Устройства интернета вещей (IoT) стали неотъемлемой частью нашей жизни, но они также стали объектом сетевых атак. Это связано с тем, что многие устройства IoT имеют слабые механизмы защиты и уязвимости, которые могут быть использованы злоумышленниками для получения доступа к устройствам и сбора конфиденциальной информации. Вопрос безопасного применения IoT технологий стоит очень остро. Актуальность темы обусловлена серьезностью материальных и репутационных последствий сетевых атак для владельцев данных устройств.
Поэтому в настоящее время наиболее актуальной является задача быстрого выявления сетевых атак для устройств, входящих в Интернет вещей. Рассматривается как задача бинарной классификации (нормальный и вредоносный трафик) и как задача многоклассовой классификации с определение класса сетевой атаки.
Применение методов машинного обучения
Наибольший научный и практический интерес для выявления аномального сетевого трафика приобрели методы машинного обучения, которые обладают способностью к самообучению и выявлению новых типов атак.
Большое количество научных работ уделено использование методов машинного обучения для выявления и классификации атак в сети. В статье [1] предложено использовать нейронную сеть на основе многослойного персептрона с двумя скрытыми слоями для обнаружения DDoS-атак. Исследование проводилось на наборе данных NSL-KDD. Точность классификации составила 97,87 %. В статье [2] рассматривается классификация атак с помощью методов машинного обучения: k-ближайших соседей, опорных векторов, множественная логистическая регрессия, «наивный» Байес, случайный лес, дерево решения, Ada Boost. Исследование так же проводилось на наборе данных «NSL-KDD». Сделан вывод, что используемые методы показали недостаточную эффективность из-за несбалансированности набора данных. Наилучшие результаты у метода случайный лес. В статье [3] проведено сравнение методов машинного обучения из библиотеки scikit-learn языка программирования Python для бинарной и многоклассовой классификации трафика: решающих деревьев, случайного леса, AdaBoost, логистической регрессии, k-ближайших соседей, опорных векторов, ансамблевого метода на основе голосования других классификаторов. Обучение проводилось на наборе данных UNSW-NB15. Лучший результат для определения наличия атаки показал метод случайного леса, для уточнения класса атак — AdaBoost.
Целью данной работы является разработка нейросетевых моделей для многоклассовой и бинарной классификации сетевого трафика.
Выбор средств и описание набора данных
Выбор нейронной сети в качестве метода машинного обучения обусловлен достоинствами, основными из которых является самообучаемость, отказоустойчивость, способность выявлять новые классы и разновидности атак и делать приемлемые выводы на основе неполной и зашумленной входной информации. Из недостатков отметим длительное время обучения нейронной сети.
Для построения моделей используем аналитическую платформу Deductor Studio и датасет, полученный на основе публичного набора данных сетевого трафика UNSW-NB15, предоставленного в бессрочное бесплатное использование для научных исследований и описанного в работе [4]. Необработанные сетевые пакеты набора данных UNSW-NB15 были созданы инструментом IXIA PerfectStorm в лаборатории Cyber Range Университета Нового Южного Уэльса в Канберре для создания гибрида реальных современных нормальных действий и синтетического поведения современных атак.
Датасет состоит из 82 333 записи состояния сетевого трафика. Каждая запись имеет 49 признаков (полей). Набор данных UNSW-NB15, включает нормальный сетевой трафик и девять категорий атак: Fuzzers, Analysis, Backdoors, DoS, Exploits, Generic, Reconnaissance, Shellcode и Worms (Таблица 1).
Таблица 1
Структура набора данных по категориям сетевого трафика
Категория |
Количество записей в наборе данных |
Процент |
Normal |
37000 |
44,94 % |
Generic |
18871 |
22,92 % |
Exploits |
11132 |
13,52 % |
Fuzzers |
6062 |
7,36 % |
Dos |
4089 |
4,97 % |
Reconnaissance |
3496 |
4,25 % |
Analysis |
677 |
0,82 % |
Backdoor |
583 |
0,71 % |
Shellcode |
378 |
0,46 % |
Worms |
44 |
0,05 % |
Всего |
82332 |
100 % |
Необходимо отметить несбалансированность набора данных по количеству записей категорий сетевого трафика, что может стать причиной недообучения алгоритмов и ошибочного определения редких видов атак.
70 % записей (случайная выборка данных) датасета будет использоваться для обучения моделей, а 30 % — для тестирования с целью оценки результативности полученных моделей.
Для оценки результативности моделей определяем показатели точности и ошибки:
Точность рассчитывается как отношение правильно классифицированных объектов к общему количеству объектов набора данных, которые принимали участие в обучении (тестировании), в процентах.
Ошибка (процент ошибочного определения) рассчитывается как отношение неправильно классифицированных объектов к общему количеству объектов набора данных, которые принимали участие в обучении (тестировании), в процентах.
Многоклассовая классификация
Экспериментально определили оптимальные параметры для нейросетевых моделей, произвели сравнительный анализ результатов обучения и тестирования полученных моделей. Параметры свели в таблицу 2.
Таблица 2
Сравнение ошибочного определения сетевого трафика моделями нейросетей
Сравнительный анализ показывает, что при одинаковой обучающей выборке модели имеют близкие показатели ошибочного определения сетевого трафика с незначительными колебаниями в разных классах атак.
Нейросетевая модель 18х35х35х2 показывает по результатам обучения и тестирования процент ошибочного определения почти по всем классам атак ниже результатов других моделей. Построенная модель достаточно хорошо определять шесть типов атак (Analysis, Generic, Backdoor, Dos, Exploits, Worms) и нормальной сетевой трафик.
Дальнейшие преобразования осуществляем с использованием модели нейросети на основе многослойного персептрона 18х35х35х2 с двумя скрытыми слоями по 35 нейронов в каждом, показавшей наилучшие результаты в процессе обучения и тестирования.
При определении класса атак Fuzzers нейросетевые модели допускают наибольший процент ошибок. Построим модель двоичной классификации для определения класса Fuzzers и нормального сетевого трафика. Набор данных для обучения модели содержит 43062 записи: 37 000 записей нормального сетевого трафика и 6 062 записи атаки класса Fuzzers. Набор данных не сбалансирован: записей класса Normal в 6 раз больше записей класса Fuzzers. После завершения обучения модели получили таблицу ошибочного определения классов (Рис.1). Нейронная сеть не смогла правильно определить класс Fuzzers (процент ошибки более 61 %), а нормальное сетевое поведение определяет почти безошибочно.
Рис. 1. Ошибочное определение классов на основе набора данных, состоящего из классов Fuzzers и Normal
Проведем корректировку набора данных, включив в него равное количество записей класса Fuzzers (6 092 записи) и нормального сетевого трафика (6 092 записи). Результате обучения модели на сбалансированном наборе вывели в таблицу (Рис.2).
Рис. 2. Ошибочное определение классов на основе скорректированного набора данных, состоящего из классов Fuzzers и Normal
Нейронная сеть прекрасно справилась с определением классов при обучении на сбалансированном наборе данных.
Бинарная классификация
Построим бинарную нейросетевую модель 18х35х35х2 для выявления сетевых атак. По данным таблиц (Рис.3) произведем расчет показателя ошибочного определения сетевого трафика моделью:
а) обучение б) тестирование
Рис. 3. Количество ошибочного определение сетевого трафика бинарной моделью: а –обучение, б –тестирование
Обучение: 4243/57632*100 % = 7,36 %
Тестирование:1921/24700*100 %=7,78 %
Результаты тестирования модели на тестовой выборке подтвердили результаты обучения. Бинарная модель нейросети хорошо справляется с задачей и выявляет сетевую атаку с точностью 92,22 %.
Заключение
Сложнее всего нейронные сети определяли класс Fuzzers, который по признакам и последствиям близок с другими классами. Так же часто модели нейросетей ошибаются в определении классов Worms и Shellcode. Это связано с небольшим количеством примеров атак этих классов в наборе данных. Для исключения таких ошибок требуется наличие более сбалансированного обучающего набора данных или использование моделей бинарной классификации, которые показывают хорошие результаты при определении наличия сетевой атаки. Наилучшую точность 92,22 % показала бинарная модель нейронных сетей на основе многослойного персептрона с двумя скрытыми слоями по 35 нейронов каждый.
Основное достоинство нейронных сетей — их самообучаемость. Нейросети способны сами обучатся на трафике сети, поэтому модели нейросетей нужно использовать в качестве систем обнаружения вторжений с целью определения разновидностей существующих атак и выявления новых видов сетевых атак.
Таким образом, получены модели нейронных сетей бинарной классификации применимые для системы обнаружения сетевых атак на устройствах, входящие в интернет вещей.
Литература:
1. Воробьёва Ю. Н. и др. Нейросетевая модель выявления DDOS-атак // Вестник технологического университета. 2018. Т. 21, №. 2. С. 94–98. URL: https://elibrary.ru/item.asp?id=32683897 (дата обращения: 02.02.2023).
2. Кажемский М. А., Шелухин О. И. Многоклассовая классификация сетевых атак на информационные ресурсы методами машинного обучения // Труды учебных заведений связи. 2019. Т. 5. № 1. С. 107–115. DOI:10.31854/1813–324X-2019–5–1–107–115
3. Бахарева Н. Ф., Тарасов В. Н., Шухман А. Е., Полежаев П. Н., Ушаков Ю. А., Матвеев А. А. Выявление атак в корпоративных сетях с помощью методов машинного обучения Поволжский государственный университет телекоммуникаций и информатики, г. Самара, Россия 2 Оренбургский государственный университет, г. Оренбург, Россия, 2018. Т. 14 № 3. С. 623–632. DOI: 10.25559/SITITO.14.201803.626–632 — URL:https://cyberleninka.ru/article/n/vyyavlenie-atak-v-korporativnyh-setyah-s-pomoschyu-metodov-mashinnogo-obucheniya (дата обращения: 15.01.2023).
4. Moustafa N., Jill S. UNSW-NB15: a comprehensive data set for network intrusion detection systems (UNSW-NB15 network data set) 2015 Military Communications and Information Systems Conference (MilCIS). Canberra, ACT, pp. 1–6, 2015. DOI: 10.1109/MilCIS.2015.7348942