Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал:
https://er.chdtu.edu.ua/handle/ChSTU/5850Повний запис метаданих
| Поле DC | Значення | Мова |
|---|---|---|
| dc.contributor.advisor | Палагіна, Олена Анатоліївна | - |
| dc.contributor.author | Калашніков, Руслан Володимирович | - |
| dc.date.accessioned | 2025-07-08T14:19:43Z | - |
| dc.date.available | 2025-07-08T14:19:43Z | - |
| dc.date.issued | 2023 | - |
| dc.identifier.uri | https://er.chdtu.edu.ua/handle/ChSTU/5850 | - |
| dc.description.abstract | Об’єктом дослідження є системи виявлення та прогнозування мережевих вторгнень в комп’ютерних мережах та системах. Предметом дослідження є моделі, методи та засоби нейромережевого машинного навчання для систем IDS. Метою роботи є створення моделей та методів нейромережевого машинного навчання виявлення вторгнень для підвищення безпечної роботи в Інтернеті. З розширенням технологій інформаційних систем та широким використанням комп'ютерних мереж для передачі даних, збільшуються можливості втрати або пошкодження інформації через незаконний доступ до мережі. Мережеві вторгнення (network intrusions) є серйозною загрозою для інформаційної безпеки. В роботі було проведено аналіз, надана їх класифікація та потенційні ризики, які вони можуть створити. Досліджено питання забезпечення безпеки комп'ютерних мереж та виявлення можливих вторгнень на ранніх стадіях за допомогою сучасних методів машинного навчання, зокрема при застосуванні нейромережевих моделей. В роботі застосований підхід, який базується на застосуванні аномальних методів виявлення мережевих вторгнень на основі технологій нейромереж машинного навчання. Запропоновані та проаналізовані три різних нейромережевих структури, зокрема проста нейромережа, повнозв’язна нейромережа та нейромережа на основі CNN структури. Аналіз роботи нейромереж показав приблизно однакову їх ефективність по правильній класифікації безпеки мережевого трафіку в межах 0.97-0.98, що є досить високим показником. | uk_UA |
| dc.language.iso | uk | uk_UA |
| dc.subject | виявлення мережевих вторгнень | uk_UA |
| dc.subject | технологія нейромережевого машинного навчання | uk_UA |
| dc.subject | методи виявлення вторгнень | uk_UA |
| dc.title | Побудова та аналіз нейромережевої системи виявлення вторгнень | uk_UA |
| dc.type | Master Thesis | uk_UA |
| Розташовується у зібраннях: | 125 Кібербезпека та захист інформації (Безпека інформаційних і комунікаційних систем) | |
Файли цього матеріалу:
| Файл | Опис | Розмір | Формат | |
|---|---|---|---|---|
| М_125_Калашніков_Палагіна.pdf Restricted Access | 3.76 MB | Adobe PDF | Переглянути/Відкрити Запит копії |
Усі матеріали в архіві електронних ресурсів захищено авторським правом, усі права збережено.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
ФАКУЛЬТЕТ ЕЛЕКТРОННИХ ТЕХНОЛОГІЙ,
АВТОТРАНСПОРТУ ТА МАШИНОБУДУВАННЯ
КАФЕДРА РОБОТОТЕХНІЧНИХ І ТЕЛЕКОМУНІКАЦІЙНИХ СИСТЕМ
ТА КІБЕРБЕЗПЕКИ
До захисту допущено
завідувач кафедри РТСК
д.т.н., професор
_______________ В.В. Палагін
"_____" _____________ 2023 року
Пояснювальна записка
до дипломного роботи
магістра
(освітньо-кваліфікаційний рівень)
на тему Побудова та аналіз нейромережевої системи виявлення вторгнень
Виконав: студент 2 курсу, групи БІ-021
Спеціальності 125 – «Кібербезпека та захист
інформації» ,
(шифр і назва спеціальності)
освітньої програми «Безпека інформаційних і
комунікаційних систем»
(назва освітньої програми)
Калашніков Р.В.
(прізвище та ініціали)
Керівник Палагіна О.А.
(прізвище та ініціали)
Рецензент
(прізвище та ініціали)
Черкаси – 2023 року
Форма № Н-9.01
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ
Факультет електронних технологій, автотранспорту та машинобудування
Кафедра робототехнічних і телекомунікаційних систем та кібербезпеки
Освітньо-кваліфікаційний рівень магістр
Спеціальність 125 – Кібербезпека
Освітня програма – Безпека інформаційних і комунікаційних систем
ЗАТВЕРДЖУЮ
Завідувач кафедри В.В. Палагін
“_____” ___________________ 2023 року
ЗАВДАННЯ
НА ВИПУСКНУ РОБОТУ СТУДЕНТУ
Калашніков Руслан Володимирович _
(прізвище, ім’я, по батькові)
1. Тема проекту (роботи) Побудова та аналіз нейромережевої системи виявлення
вторгнень
керівник проекту (роботи) Палагіна Олена Анатоліївна
(прізвище, ім’я, по батькові, науковий ступінь, вчене звання)
затверджені наказом вищого навчального закладу від «10» жовтня 2023 року № 271/04
2. Термін здачі студентом закінченої роботи «11» грудня 2023 року_________
3. Вихідні дані до роботи: застосування моделей машинного навчання для виявлення
мережевих вторгнень на основі нейромережевих структур: простої нейромережі,
повнозв’язної нейромережі глибинного навчання, нейромережі CNN. Побудова моделі
аналізу даних та прогнозу рішень, мова програмування – Python.
4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити)
Вступ; Аналіз ризиків мережевих вторгнень та методи їх усунення в комп’ютерних
мережах; Виявлення мережевих вторгнень на основі нейромережевих структур;
Застосування deep learning для виявлення мережевих вторгнень; Висновки; Список
використаних джерел; Додатки.
5. Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень, плакатів):
Схематичні представлення різновидів та класифікація мережевих вторгнень;
Архітектури систем машинного навчання для виявлення мережевих вторгнень;
Застосування класифікаторів машинного навчання для аналізу даних; Показники якості
моделі машинного навчання; Попередня підготовка даних для побудови моделі ML;
Дослідження моделей машинного навчання виявлення мережевих вторгнень; Скріншоти
роботи програми; Мультимедійна презентація.
.
6. Консультанти з проекту (роботи) із зазначенням розділів проекту, що їх стосуються
Прізвище, ініціали та посада Підпис, дата
Розділ консультанта завдання завдання
видав прийняв
7. Дата видачі завдання 04 вересня 2023 року
КАЛЕНДАРНИЙ ПЛАН
№ Назва етапів дипломного Строк виконання
з/п проекту (роботи) етапів проекту Примітка
(роботи)
1. П ошук і аналіз інформації по заданій темі 04.09.2023-
16.09.2023
2. Н аписання 1-го розділу: Аналіз ризиків 17.09.2023-
мережевих вторгнень та методи їх усунення в 29.09.2023
комп’ютерних мережах
3. Н аписання 2-го розділу: Виявлення мережевих 30.09.2023-
вторгнень на основі нейромережевих структур 20.10.2023
4. Н аписання 3-го розділу: Застосування deep 21.10.2023-
learning для виявлення мережевих вторгнень 09.11.2023
5. Н аписання вступу і висновків, складання 10.11.2023-
списку літератури 22.11.2023
6. О формлення пояснювальної записки 23.11.2023-
05.12.2023
7. О формлення плакатів презентації 01.12.2023-
09.12.2023
Студент Калашніков Р.В.
( підпис ) (прізвище та ініціали)
Керівник проекту (роботи) Палагіна О.А.
( підпис ) (прізвище та ініціали)
ЗМІСТ
ВСТУП 5
РОЗДІЛ 1. АНАЛІЗ РИЗИКІВ МЕРЕЖЕВИХ ВТОРГНЕНЬ ТА
7
МЕТОДИ ЇХ УСУНЕННЯ В КОМП’ЮТЕРНИХ МЕРЕЖАХ
1.1. Загорози та небезпеки мережевих вторгнень в комп’ютерних 7
мережах
1.2. Різновиди та аналіз мережевих вторгнень 12
1.3. Аналіз методів виявлення вторгнень в мережу (IDS - Intrusion
Detection System) 24
1.4. Аналіз програмного забезпечення для виявлення та протидії
мережевим вторгненням 28
1.5. Машинне навчання як іструмент для реалізації систем IDS 32
1.6. Висновки 34
РОЗДІЛ 2. ВИЯВЛЕННЯ МЕРЕЖЕВИХ ВТОРГНЕНЬ НА ОСНОВІ
36
НЕЙРОМЕРЕЖЕВИХ СТРУКТУР
2.1. Застосування машинного навчання для аналізу мережевого трафіку 36
2.2. Принципи побудови нейронних мереж для застосування в 43
машинному навчанні
2.3. Застосування технології глибинного навчання для побудови систем 54
виявлення мережевих вторгнень
2.5. Висновки 62
РОЗДІЛ 3. ЗАСТОСУВАННЯ DEEP LEARNING ДЛЯ ВИЯВЛЕННЯ
64
МЕРЕЖЕВИХ ВТОРГНЕНЬ
3.1 Попередній аналіз та обробка даних 64
3.2 Побудова простої нейромережевої структури виявлення мережевих 74
вторгнень
БІ021.023.22189.248 ПЗ
Змн. Арк. № докум. Підпис Дата
Розроб. Калашніков Р. Літ. Арк. Акрушів
Побудова та аналіз
Перевір. Палагіна О. 3
нейромережевої системи
Реценз.
Н. Контр. Палагін В. виявлення вторгнень ЧДТУ
Затверд.
3.3 Побудова глибинної нейромережевої структури виявлення 76
мережевих вторгнень
3.4 Побудова структури виявлення мережевих вторгнень на основі CNN 78
3.5. Висновки 81
ВИСНОВКИ 83
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ 85
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата
ВСТУП
Перспективи розвитку комп'ютерних мереж та інформаційно-
телекомунікаційних технологій не перестають вражати та демонструють
стрімке технологічне зростання. Вдосконалення існуючих мереж та
розгортання мереж наступного покоління (5G) супроводжується
розширенням функціональних можливостей та додатковими сервісами,
створює нові можливості для моніторингу, автоматизації та оптимізації
різноманітних процесів. Хмарні технології продовжують розвиватися,
надаючи більше можливостей для зберігання та обробки даних в хмарних
обчислювальних центрах. Це полегшує доступ до великих обсягів
обчислювальних ресурсів і забезпечує високу доступність для користувачів.
Разом з тим постають питання кібербезпеки таких мереж завдяки
збільшенню кількості підключень і обсягу даних. З кожним роком
збільшується кількість пристроїв, підключених до Інтернету, і обсяг даних,
які ці пристрої обробляють. Це створює більше можливостей для
зловмисників використовувати слабкі точки для здійснення вторгнень.
Розширення Інтернету речей означає, що багато побутових пристроїв, які
підключені до Інтернету, можуть стати вразливішими точками для атак.
Зловмисник використовують передові методи вторгнень, постійно
розвивають свої навички та методики, щоб обходити заходи безпеки. Вони
використовують розумний соціальний інжиніринг, використовують
вразливості програмного забезпечення та виконують складні атаки на
мережеві системи. Такі дії безумовно призведуть до значних економічних
збитків для компаній, організацій та навіть держав. Вони можуть призвести
до втрати конфіденційної інформації, порушити роботу бізнесу і завдати
шкоди репутації.
Розробники мереж та компанії з кібербезпеки повинні постійно
вдосконалювати існуючи методи та розвивати нові інструменти для захисту
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 5
від вторгнень в мережу, викрадення та спотворення даних та інших
кіберзагроз.
В представленій роботі було проведено аналіз мережевих вторгнень
(network intrusions), надана їх класифікація та потенційні ризики, які вони
можуть створити. Досліджено питання забезпечення безпеки мережі та
виявлення можливих вторгнень на ранніх стадіях за допомогою сучасних
методів машинного навчання, зокрема при застосуванні нейромережевих
моделей машинного навчання для виявлення та протидії вторгненням.
Метою роботи є створення моделей та методів нейромережевого
машинного навчання виявлення вторгнень для підвищення безпечної роботи
в Інтернеті.
Для досягнення поставленої мети в роботі розв’язані наступні задачі:
● аналіз, класифікація кіберзагроз та мережевих вторгнень в комп’ютерних
системах;
● аналіз побудови систем захисту від мережевих вторгнень;
● огляд загальних підходів застосування і практичної реалізації методів
машинного навчання в задачах виявлення та протидії мережевим
вторгненням;
● побудова моделей та методів нейромережевого машинного навчання для
виявлення та прогнозування мережевих вторгнень (IDS - Intrusion Detection
System).
Об’єктом дослідження є системи виявлення та прогнозування
мережевих вторгнень в комп’ютерних мережах та системах.
Предметом дослідження є моделі, методи та засоби нейромережевого
машинного навчання для систем IDS.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 6
1. АНАЛІЗ РИЗИКІВ МЕРЕЖЕВИХ ВТОРГНЕНЬ ТА МЕТОДИ ЇХ
УСУНЕННЯ В КОМП’ЮТЕРНИХ МЕРЕЖАХ
1.1. Загрози та небезпеки мережевих вторгнень в комп’ютерних
мережах
Використання комп'ютерних та інформаційно-телекомунікаційних
систем та мереж має величезне значення в сучасному світі. Такі системи та
мережі сприяють забезпеченню зв'язку та обміну інформацією між людьми
на великі відстані, полегшують спілкування, співпрацю та обмін даними як
на особистому, так і на професійному рівнях. Також важливою перевагою є
можливість доступу до значних обсягів інформації та ресурсів через
Інтернет, що робить отримання необхідних знань, ресурсів, розваг і послуг
надзвичайно простим і доступним засобом. Компанії активно
використовують комп'ютерні мережі для автоматизації своїх процесів,
підвищення ефективності та розширення географії свого бізнесу. Це сприяє
розвитку економіки та створює нові можливості для інновацій. Також
важливо відзначити, що використання комп'ютерних мереж в сфері освіти
допомагає студентам та учням отримувати доступ до навчальних матеріалів,
відкритих курсів та можливостей дистанційного навчання. Комп'ютерні
мережі дозволяють людям спільно працювати над проектами, навіть коли
вони знаходяться на різних континентах. Це полегшує спільну роботу в
глобальному масштабі та сприяє інноваціям.
Разом з розвитком технологічного прогресу з’являються нові загрози і
ризики, які раніше не існували. В даному випадку мова йде про так звані
мережеві атаки або мережеві вторгнення.
Мережеві вторгнення (network intrusions) - це незаконні або
несанкціоновані спроби отримати доступ до комп'ютерних мереж, систем або
ресурсів. Це включає в себе будь-яку діяльність, яка має на меті порушення
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 7
безпеки мережі, нанесення шкоди інформації або здобуття
несанкціонованого доступу до даних чи ресурсів.
Мережеві вторгнення є серйозною загрозою для інформаційної безпеки
та приватності в комп'ютерних мережах і системах, цілісності (integrity),
конфіденційності (confidentiality) та доступності (availability) даних, як
основних аспектів захисту інформації (рис.1.1).
Рис.1.1. Основні аспекти захисту інформації
Ось декілька ключових небезпек, пов'язаних із мережевими
вторгненнями.
Втрата конфіденційної інформації. Зловмисники можуть отримати
доступ до конфіденційних даних, таких як особисті дані користувачів,
фінансова інформація, комерційні секрети, важливі документи тощо.
Порушення цілісності даних. Зловмисники можуть внести зміни в дані
або використовувати шкідливе програмне забезпечення для пошкодження
або зміни інформацію, що може призвести до втрати довіри до даних.
Відмова в обслуговуванні (DoS атака - Denial of Service) або розподілена
відмова в обслуговуванні (DdoS атака). Зловмисники можуть завдати атаки,
які призводять до втрати доступу до мережі або послуг для легітимних
користувачів. Під час DoS атаки зловмисники намагаються перевантажити
систему, наприклад, надсилаючи велику кількість запитів на сервер або
використовуючи інші методи для перекриття доступу. Це може призвести до
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 8
тимчасової або навіть тривалої відмови в обслуговуванні для користувачів,
внаслідок чого вони не можуть отримувати доступ до важливих ресурсів або
послуг.
До прикладів атак DoS можна віднести переповнення мережі запитами,
флуд веб-сервера запитами, переповнення буфера, відправку великих обсягів
надлишкових даних і багато інших методів. Атаки DoS можуть бути
спрямовані на окремий сервер або ресурс, або ж на велику мережу або
систему.
DDoS (Distributed Denial of Service) - це розподілена атака на відмову в
обслуговуванні. Це тип кібератаки, при якій зловмисники використовують
багато комп'ютерів для одночасного надсилання великої кількості запитів або
трафіку на цільовий сервер або мережу з метою перевантаження її ресурсів.
Основна відмінність між DDoS і звичайним DoS полягає в розподіленості
атаки. У DDoS атаках задіяні кілька або навіть тисячі комп'ютерів, які
можуть знаходитися в різних частинах світу, працюють разом для здійснення
атаки. Це ускладнює виявлення та захист від таких атак, оскільки важко
визначити джерело атаки і блокувати її.
Мета DDoS атаки може бути різною, від вимагання викупу до завдання
шкоди бізнесу або просто задоволення жорстокості. Основні цілі атак DDoS
включають веб-сервери, мережеві ресурси, онлайн-ігри, хмарні служби та
будь-який ресурс або послугу, яка потребує доступу через Інтернет.
Захист від DoS і DDoS атак включає в себе використання брандмауерів,
систем виявлення вторгнень, обмеження кількості запитів від одного
користувача та інші методи, спрямовані на запобігання перебоїв у роботі
системи під час атаки.
Такий вид атак може призвести до великих фінансових втрат і
негативного впливу на репутацію.
Витоки даних. Зловмисники можуть вкрасти чутливу інформацію і
розповсюдити її або використовувати для шантажу.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 9
Поширення вірусів та іншого шкідливого програмного забезпечення.
Зловмисники можуть використовувати вторгнення для введення в систему
вірусів, троянців або іншого шкідливого програмного забезпечення для
поширення інфекції.
Шантаж. Зловмисники можуть намагатися вимагати викуп,
загрожуючи розголошенням конфіденційної інформації або відновленням
послуг після атаки.
Порушення законодавства. Власники мереж і систем можуть бути
юридично відповідальними за несанкціонований доступ до інформації або
атаки на інші системи, оскільки можуть мати певні зобов’язання перед
своїми клієнтами щодо забезпечення безпеки даних та інформації.
Мережеві атаки на критичну інфраструктуру, таку як енергетичні
системи, транспортні мережі, телекомунікації, водопостачання тощо, можуть
мати серйозні наслідки та створювати значні збитки та ризики, зокрема це:
припинення постачання послуг - вразливість або атака на критичну
інфраструктуру може призвести до припинення постачання послуг та
ресурсів, що може призвести до значних збитків для господарства, комфорту
мешканців і безпеки держави в цілому;
економічні збитки - перерви в роботі критичної інфраструктури
можуть коштувати суспільству мільярди доларів у втрачених доходах,
ремонту та відновленні систем;
порушення безпеки - можливість доступу до критичних систем може
призвести до порушення безпеки, яке може вплинути на національну безпеку
та загрожувати життю та здоров'ю громадян;
втрата довіри - мережеві атаки можуть призвести до втрати довіри до
державних та комерційних організацій, які відповідають за критичну
інфраструктуру. Це може вплинути на імідж і репутацію цих організацій;
наслідки для громадського здоров'я - критична інфраструктура включає
в себе системи водопостачання та лікування, транспортні системи,
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 10
електроенергетику тощо. Атаки на ці системи можуть призвести до
небезпеки для громадського здоров'я та життя людей.
Забезпечення безпеки та захисту критичної інфраструктури від
мережевих атак стає надзвичайно важливим завданням для держав та
організацій. Спеціальні заходи безпеки, моніторинг та реагування на
потенційні загрози є критичними для зменшення ризиків і мінімізації збитків
у разі атак.
Існує безліч причин для мережевих атак, зокрема це фінансова вигода
чи жадібність: Існують злочинні синдикати, зацікавлені в отриманні ваших
даних та їх подальшого продажу з метою отримання прибутку.
Мережеві атаки часто можна пов’язати з політикою та тероризмом.
Відомо, що існують хакерські групи, які фінансуються різними державами,
або борються за якусь ідеологію і т.п. Ці групи часто націлені на будь-кого,
хто виступає проти їхніх спонсорів або їхньої справи.
Промислове шпигунство є окремою категорією атак, де хакерам
платять за викрадення комерційної таємниці або порушення роботи
підприємств.
Людський фактор у даному виді кіберзагроз пов'язаний з прагненням
деяких хакерів до слави, здобутої шляхом знищення веб-сайтів або мереж.
Роблячи це, вони можуть заслужити визнання колег-хакерів.
Для запобігання цим небезпекам і виявлення мережевих вторгнень
важливо застосовувати ефективні методи кібербезпеки, включаючи
використання систем виявлення вторгнень (IDS) і інших заходів безпеки для
відслідковування та реагування на підозрілу активність в мережах.
1.2. Різновиди та аналіз мережевих вторгнень
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 11
Комп’ютерні мережі мають кілька важливих переваг перед окремими
комп’ютерами. Найважливішими з них є поширення даних, поширення
ресурсів і підвищення надійності системи.
Разом з ти відомо, що в комп’ютерних мережах існують ризики
високого рівня безпеки через так звані мережеві атаки, які залежать від
використовуваних технологій. Основними цілями атак є перехоплення даних,
обмін даними, доступ до мережі, переповнення мережі.
Мережеві атаки можна класифікувати за різними ознаками, такими як
метод атаки, ціль атаки, мета атаки, вразливість, яку використовує атака, та
багато інших. Найбільш поширені різновиди атак відображені на (рис.1.2), де
виділяється чотири найбільші категорії атак:
- атака на браузер «browser» – 36% (вразливості браузерів для
отримання несанкціонованого доступу або виконання шкідливого коду
на комп'ютері користувача);
- метод грубої сили «brute force» - 19% (це метод атаки на захищену
систему, в якому атакуючий намагається вгадати паролі або
ідентифікатори, шляхом послідовного перебору всіх можливих
комбінацій. Ця атака є однією з найпростіших і найбільш трудомістких
способів отримання несанкціонованого доступу до системи, оскільки
вона включає в себе безпосередні спроби вгадати паролі);
- відмова в доступі «denial of service» - 16% (це тип мережевої атаки, в
якій атакуючий намагається зробити службу, мережу, комп'ютерну
систему або веб-сайт недоступними для легальних користувачів,
завершуючи нормальну роботу цільового об'єкта або перевантажуючи
його ресурси);
- атака SSL 11% - це загальна назва для різних видів атак або
вразливостей, які можуть виникнути під час використання SSL або TLS
протоколів.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 12
Рис.1.2. Найбільш поширені мережеві атаки
Важливо враховувати, що багато атак можуть належати до кількох
категорій одночасно, і класифікація може бути дещо умовною. Нижче
наведені деякі загальні категорії мережевих атак та їх різновиди.
Засліплюючі атаки (DoS - Denial of Service).
Це такий різновид атак, коли споживаються всі ресурси (Resource
Exhaustion Attacks). Наприклад, атаки на заповнення буферів, використання
багато процесорного часу або мережевих ресурсів. Вони мають на меті
перешкодити нормальній роботі системи, сервісу чи мережі, роблячи їх
недоступними для легальних користувачів. Такі атаки можна класифікувати
на:
фізичні атаки - включають атаки на фізичну інфраструктуру, такі
як обрізання мережевих кабелів або атаки на обладнання;
атаки на рівні мережі - наприклад, SYN-флуд атаки, UDP-флуд,
ICMP-флуд тощо;
атаки на рівні застосунків - включають атаки на програмне
забезпечення і сервери, такі як HTTP-флуд або Slowloris атаки;
аmplification аttacks - деякі DoS-атаки використовують велику
кількість ампліфікаційного трафіку, що робить їх більш
потужними. Наприклад, NTP або DNS ампліфікаційні атаки;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 13
DDoS (Distributed Denial of Service) - в DDoS-атаках зловмисники
використовують багато комп'ютерів (часто в мережі-ботнеті) для
виконання DoS-атаки (рис.1.3). Це робить атаки ще потужнішими
та важкозрозумілими.
Рис.1.3. Виконання DoS і DDoS атак
Захист від DoS-атак може бути реалізований на рівні мережі
(наприклад, за допомогою файерволів), моніторингу мережі для виявлення
надмірного трафіку та аномалій, захист від DDoS-атак за допомогою служб
CDN (Content Delivery Network) та WAF (Web Application Firewall),
налаштування алгоритмів для відхилення атак та автоматичного блокування
IP-адрес атакуючих.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 14
Атаки на конфіденційність та цілісність даних.
Перехоплення даних (Data Interception). Прикладом є атаки типу "Man-
in-the-Middle" (MitM) - рис.1.4.
Рич.1.4. Атака Man-in-the-Middle.
Атака "Data Interception" (в перекладі з англійської - "перехоплення
даних") відноситься до видів кібератак, під час яких зловмисники
перехоплюють та отримують доступ до конфіденційних або чутливих даних
під час їх передачі через мережу або зберігання на пристроях. Ця атака може
призвести до розкриття особистої інформації, фінансових даних,
комерційних секретів, паролів та інших конфіденційних даних.
Основні характеристики атаки "Data Interception" включають :
Перехоплення комунікації - зловмисники можуть спостерігати або
перехоплювати передачу даних між двома точками в мережі, такими як
клієнт та сервер, використовуючи шпигунське програмне забезпечення або
інші методи;
Man-in-the-Middle, MITM – зловмисник встановлює контакт між двома
точками обміну даними і перехоплює передачу інформації, непомітно для
користувачів;
Атаки на безпеку мережі - це може включати в себе атаки на безпеку
Wi-Fi мереж, злам безпеки SSL/TLS з'єднань та інші методи;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 15
Використання шкідливого програмного забезпечення - зловмисники
можуть використовувати шпигунське або зловмисне програмне забезпечення
для перехоплення даних на пристроях користувачів або серверів.
Модифікація даних (Data Modification). При такій атаці відбувається
зміна даних під час їх передачі.
Спам (Spam). Надсилання небажаної пошти або повідомлень.
(переважно електронних листів) на велику кількість адресатів, які не
виражали цікавості в отриманні таких повідомлень. Повідомлення, що
розсилаються при атаці Spam, зазвичай містять рекламу, спам, фішинг-
спроби, шахрайські схеми або інші небажаний вміст.
Захист від атаки "Data Interception" включає в себе використання
шифрування для захисту даних під час їх передачі, використання безпеки на
рівні мережі, моніторинг мережі на виявлення незвичайної активності та
використання безпечних практик управління доступом до даних. Регулярні
оновлення та патчі програмного забезпечення також допоможуть запобігти
атакам на безпеку даних.
Аутентифікаційні та авторизаційні атаки.
Перехоплення паролів (Password Cracking). Мережева атака "Password
Cracking" (ламання паролів) - це процес намагань зловмисників вгадати чи
відкрити пароль для доступу до комп'ютерної системи, облікового запису,
мережевого ресурсу або іншого об'єкта, що захищений паролем.
Зловмисники використовують різні методи та програми для перебору паролів
з метою отримати несанкціонований доступ до інформації чи ресурсів.
Основні характеристики мережевої атаки "Password Cracking"
включають:
- перебір паролів - зловмисники випробовують різні комбінації символів,
слова та фрази, намагаючись вгадати пароль. Цей процес може бути
виконаний вручну або автоматизовано за допомогою спеціальних
програм для ламання паролів;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 16
- словники і словники з паролями -зловмисники використовують
словники (списки слів) та словники з паролями для перевірки на
наявність слабких чи стандартних паролів;
- Brute Force атаки - це метод ламання паролів, при якому атакуючий
випробовує всі можливі комбінації символів для вгадування паролю.
Цей метод може вимагати багато часу і значних обчислювальних
ресурсів.
Групи паролів: Зловмисники можуть спрямовувати атаки на групи
користувачів, намагаючись вгадати паролі для кількох облікових записів
одночасно.
Для захисту від атаки "Password Cracking" важливо використовувати
безпечні паролі, які складні для вгадування, і вимагати від користувачів
використовувати додаткові заходи безпеки, такі як двофакторна
аутентифікація. Також важливо обмежити кількість спроб введення паролів
та блокувати облікові записи після певної кількості невдалих спроб.
Фішинг (Phishing) – це спроби виманити конфіденційну інформацію від
користувачів. Це вид мережевої атаки, в якому зловмисники намагаються
обманути користувачів та отримати їхню конфіденційну інформацію, таку як
логіни, паролі, кредитні картки або інші особисті дані. Ця атака зазвичай
використовує підроблені повідомлення або веб-сторінки, які схожі на
легітимні, щоб переконати користувачів надати свої особисті дані (рис.1.5).
Основні характеристики атаки Phishing включають:
- соціальний інженірінг - зловмисники використовують психологічні та
маніпуляційні техніки, щоб переконати користувачів у легітимності
своїх запитів і вимагань;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 17
Рис.1.5. Приклад застосування підробленого веб-сайту Facebook для
фішингової атаки
- підроблені повідомлення і веб-сайти - зловмисники створюють
електронні листи, текстові повідомлення або веб-сторінки, що імітують
легітимні джерела, такі як банки, компанії, соціальні мережі чи сервіси
електронної пошти;
- споживацька інформація - зловмисники можуть запитувати особисті
дані, такі як логіни та паролі, номери кредитних карток, соціальні
страхові номери, відповіді на секретні питання тощо;
- залякування зловмисники можуть намагатися спонукати користувачів
до негайних дій, посилаючись на негайну необхідність або небезпеку
(наприклад, заблокування облікового запису);
- фішинг через електронну пошту - використання фішингових листів, в
яких користувачі надають свої дані на фішингових веб-сайтах.
Захист від атаки Phishing включає в себе уважність користувачів при
отриманні підозрілих повідомлень, непереходження за посиланнями з листів
із сумнівних джерел, перевірку URL-адрес та доменів, встановлення
програмного забезпечення для фільтрації спаму та фішингу, та надання
інструкцій користувачам про те, як виявляти і уникати фішингових атак.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 18
Атаки на вразливість програмного забезпечення.
Атаки на вразливості програмного забезпечення (Software Vulnerability
Attacks). Атаки на вразливості програмного забезпечення включають в себе
різні види кібератак, які використовують вразливості або слабкі сторони в
програмному забезпеченні для незаконного доступу до системи або
розкриття конфіденційної інформації. Ці атаки спрямовані на використання
недоліків та слабкостей у програмах або операційних системах для завдання
шкоди, викрадення даних або виконання незаконних операцій. Ось деякі
типи атак на вразливості програмного забезпечення:
- використання слабких місць у програмах - зловмисники можуть знайти
та використовувати вразливості, такі як буферні переповнення, SQL-
ін'єкції, перехоплення сеансів, щоб отримати доступ до системи або
бази даних;
- використання вразливостей в операційних системах - зловмисники
можуть спрямовувати атаки на служби та службові програми
операційних систем з метою незаконного доступу або отримання
підвищених прав;
- використання вразливостей в веб-додатках - атаки на вразливості веб-
додатків можуть включати фішинг, XSS (Cross-Site Scripting), CSRF
(Cross-Site Request Forgery) та інші методи для отримання доступу до
користувачів або системи;
- використання вразливостей в схемах безпеки - деякі атаки можуть
використовувати слабкість в аутентифікації, авторизації та інших
аспектах безпеки для обходу захисту;
- використання недоліків в мережевих протоколах - деякі атаки можуть
використовувати вразливості в мережевих протоколах для викрадення
даних або перехоплення комунікації.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 19
На рис.1.6. наведені типові поширені атаки на безпеку на прикладі
моделі рівня OSI, де можна бачити всі вище згадані атаки на різних рівнях
реалізації мережевої моделі.
Рис.1.6. Поширені атаки на безпеку в моделі рівня OSI
Захист від атак на вразливості програмного забезпечення включає в
себе постійне вдосконалення програмного забезпечення та систем, виявлення
та виправлення вразливостей, встановлення захисних бар'єрів та фільтрів,
шифрування даних, використання систем моніторингу та аналізу журналів
для виявлення аномалій і швидкого реагування на атаки.
Атаки на вразливості мережевого обладнання (Network Device
Vulnerability Attacks) - це атаки на різноманітні мережеві пристрої, такі як
маршрутизатори, комутатори, файєрволи, мережеві сервери, мережеві
принтери і т.д., з метою зловживання їхніми вразливостями. Ці атаки можуть
бути спрямовані на отримання несанкціонованого доступу до мережі,
викрадення конфіденційної інформації, завдання шкоди мережеві або іншим
цілям.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 20
Деякі типові приклади атак на вразливості мережевих пристроїв
включають:
- використання вразливостей програмного забезпечення - зловмисники
можуть використовувати вразливості в програмному забезпеченні
мережевих пристроїв для виконання коду, завдання шкоди або
отримання доступу до пристрою;
- атаки на служби та службові порти - зловмисники можуть
спробувати використовувати слабкі паролі або вразливості в мережевих
службах та службових портах, щоб надалі атакувати пристрій або
мережу;
- атаки на маршрутизатори - зловмисники можуть намагатися змінити
таблиці маршрутизації на маршрутизаторах для перенаправлення
трафіку через свій контрольований вузол або в інший манер;
- атаки на комутатори - можуть спрямовуватися на заборону
відомостей про мережу, спуфінг мережевих пакетів або навіть
отримання доступу до трафіку між пристроями на локальній мережі
(рис.1.7).
Рис.1.7. Приклад підробки ІР адреси для реалізації ІР спуфінгу
Захист від атак на вразливості мережевих пристроїв включає в себе
регулярне оновлення програмного забезпечення пристроїв, налаштування
безпеки мережі, моніторинг мережевої активності, використання сильних
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 21
паролів та інші заходи безпеки. Також важливо слідкувати за
повідомленнями про вразливості та патчами від виробників мережевих
пристроїв та швидко застосовувати необхідні виправлення.
Соціальна інженерія (Social Engineering).
Імперсонація (Impersonation). Підробка іншої особи або сутності.
Обман (Deception). Використання маніпуляції або обману для
отримання інформації або доступу.
Атаки типу Social Engineering - це методи атак, при яких зловмисники
спробують використовувати маніпуляцію та переконування людей, замість
використання технічних аспектів атаки, для отримання несанкціонованого
доступу до інформації, систем або ресурсів. Ці атаки базуються на
психологічних та соціальних техніках, спрямованих на переконання людей
розкрити конфіденційну інформацію або виконати певні дії, що корисні для
атакуючих.
Деякі типові приклади атак соціального інженірінгу включають:
- фішинг - зловмисники надсилають листи або повідомлення, які схожі
на офіційні листи від банків, компаній або інших організацій, і просять
отримати конфіденційну інформацію, таку як паролі чи номери
кредитних карт;
- видавати себе за інших осіб - зловмисники можуть видавати себе за
довірених осіб, наприклад, працівників підтримки, інформаційних
технологій або інших, і просять доступ до системи або інформації;
- перехоплення - зловмисники можуть перехоплювати розмови або
повідомлення через соціальні мережі або інші комунікаційні засоби;
- техніка "природного агента" - атакуючі можуть виглядати як
незалежні сторони, такі як кур'єри або контрактори, щоб отримати
доступ до об'єкта атаки.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 22
Узагальнення причин атак типу «Соціальна інженерія» приведено на рис.1.8,
де можна бачити людський фактор, недостатність кваліфікації персоналу,
наявність нових невідомих видів атак та ін.
Рис.1.8. Причини виникнення атак типу «Соціальна інженерія»
Для захисту від атак соціального інженірингу важливо навчати
персонал, співробітників та користувачів бути обережними і не розкривати
конфіденційну інформацію або не виконувати сумнівні дії під час
спілкування з незнайомцями або навіть знайомими. Також важливо
встановлювати політики безпеки та регулярно нагадувати персоналу про
правила безпеки в контексті соціального інженірингу.
Атаки на безпеку мережі (Network Security Attacks).
Такий тип атак пов'язаний з атаками на мережеві протоколи (Network
Protocol Attacks, наприклад на протоколи TCP/IP. Можуть також виникати
атаки на безпеку бездротових мереж (Wireless Network Security Attacks).
Наприклад, атаки на Wi-Fi мережі.
Залежно від контексту і специфікації, атаки можуть виявлятися різними
способами та мати власні характеристики. Для захисту від мережевих атак
важливо розуміти їхні типи та приймати відповідні заходи безпеки.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 23
1.3. Аналіз методів виявлення вторгнень в мережу (IDS - Intrusion
Detection System)
IDS (Intrusion Detection System) - це система виявлення мережевих
вторгнень, комп'ютерна програма або апаратний пристрій, який призначений
для моніторингу мережі або системи з метою виявлення незвичайної або
підозрілої активності, яка може свідчити про потенційний кібернапад або
порушення безпеки. IDS допомагає вчасно виявляти можливі загрози і
сповіщати адміністраторів або виконавців процесу про ці події.
Системи виявлення вторгнень відіграють життєво важливу роль у
дослідженнях і розробках із збільшенням атак на комп’ютери та мережі.
Системи виявлення вторгнень відстежують події, що відбуваються в
комп’ютерній системі чи мережах, для аналізу моделей вторгнень. IDS
перевіряє хост або мережу, щоб виявити потенційні вторгнення. Системи на
базі хосту досліджують системні виклики та ідентифікатори процесів,
пов’язані в основному з даними операційної системи. З іншого боку,
мережеві системи аналізують пов’язані з мережею події, такі як обсяг
трафіку, IP-адреса, порти обслуговування та використовуваний протокол.
Системи виявлення вторгнень призначені для:
аналізу та контролю роботи системи та користувачів;
оцінювання цілісності критично важливих файлів системи та даних;
забезпечення статистичного аналізу моделей діяльності.
Існують два типи IDS (рис.1.9):
- системи виявлення вторгнень на основі підписів (Signature-Based IDS) -
ці системи використовують підписи або шаблони відомих атак, щоб
виявляти подібні атаки в мережі або системі. Якщо паттерн атаки
відповідає відомому підпису, система сповіщає процесорів про
потенційну загрозу;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 24
- системи виявлення вторгнень на основі аномалій (Anomaly-Based IDS) -
ці системи порівнюють активність мережі або системи зі стандартними
індикаторами, шукаючи незвичайну або підозрілу активність. Якщо
виявляються аномалії, система видає сповіщення.
Рис.1.9. Два різновиди системи IDS: Signature-Based та Anomaly-Based.
Signature-Based IDS використовує розпізнані шаблони. Ці шаблони
описують підозрілу сукупність послідовностей дій або операцій, які можуть
бути шкідливими та зберігаються в базі даних. IDS використовує чітко
визначені моделі атак, які використовують слабкі місця в системі. Час,
витрачений на збіг із шаблонами, що зберігаються в базі даних, мінімальний.
Ключовою перевагою цих систем є те, що шаблони або сигнатури можна
легко розробити та зрозуміти поведінку мережі, якщо вони знайомі.
Ефективніше справлятися з атаками, шаблони яких уже зберігаються в базі
даних.
Основним обмеженням цих підходів на основі сигнатур є те, що вони
можуть виявляти лише вторгнення, шаблони атак яких уже збережені в базі
даних. Для кожної атаки створюється її підпис. Атаки, шаблони яких відсутні
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 25
в базі даних, не можуть бути виявлені. Таку техніку можна легко обдурити,
оскільки вона залежить від певного набору виразів і відповідності
рядків. Крім того, підпис добре працює лише проти фіксованих моделей
поведінки; вони не справляються з атаками з людським втручанням або
атаками з притаманними самомодифікованими характеристиками поведінки.
Ці системи виявлення також неефективні у випадках, коли клієнт
працює на нових технологічних платформах. Ефективність систем на основі
підписів знижується через необхідність створення динамічних підписів для
різних варіацій. Зі збільшенням обсягу сигнатур продуктивність виявлення
вторгнень також може знизитися. Розробники IDS розробляють нові
сигнатури до того, як зловмисники розроблять рішення, щоб запобігти будь-
яким новим типам атак на систему.
Anomaly-Based IDS – оперують параметрами поведінки системи, яка
може відрізнятися від звичайної. Якщо поведінка мережі відповідає
попередньо визначеній поведінці, тоді мережева транзакція приймається,
інакше вона запускає попередження в системі виявлення
аномалій. Прийнятна продуктивність мережі може бути заздалегідь
визначена або отримана за допомогою специфікацій або умов, визначених
адміністратором мережі.
Вирішальним етапом визначення поведінки є здатність механізму
системи виявлення працювати з кількома протоколами на кожному
рівні. Механізм IDS повинен розуміти процес протоколів і його
мету. Незважаючи на те, що аналіз протоколу є дуже дорогим з точки зору
обчислень, такі переваги, як збільшення набору правил, допомагають
зменшити кількість хибно-позитивних тривог.
Визначення наборів правил є одним із ключових недоліків виявлення
аномалій. Ефективність системи залежить від ефективного впровадження та
тестування наборів правил на всіх протоколах. Крім того, різноманітність
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 26
протоколів, які використовуються різними постачальниками, впливає на
правило, що визначає процес.
На додаток до вищесказаного, користувальницькі протоколи також
ускладнюють процес визначення правил. Для точного виявлення вторгнень
адміністратор мережі повинен чітко розуміти прийнятну поведінку
мережі. Однак за умови чіткого включення правил і протоколу процедура
виявлення аномалії, швидше за все, працюватиме ефективніше.
Однак, якщо зловмисна поведінка підпадає під прийняту поведінку, за
таких умов вона може залишитися непоміченою. Основною перевагою
системи виявлення аномалій є можливість виявлення нових атак. Цей тип
підходу до виявлення вторгнень також може бути здійсненним, навіть якщо
відсутність шаблонів сигнатур збігається, а також працює в умовах, які
виходять за межі звичайних шаблонів трафіку. Техніку Anomaly-Based IDS
можна прокласифікувати згідно діаграми, яка наведена на рис.1.10.
Рис.1.10. Класифікація Anomaly-Based IDS.
На рис.1.10 наведений один з напрямків побудови IDS – це
застосування технології машинного навчання (Machine Learning based) для
виявлення мережевих вторгнень, яке буде розглянуто детально в наступних
розділах робот.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 27
IDS може бути важливою частиною загальної системи безпеки мережі
або системи, оскільки вони допомагають вчасно виявляти потенційні атаки та
інциденти безпеки. Після виявлення підозрілої активності, інформація з IDS
може бути використана для подальшого розслідування та відновлення
безпеки в мережі або системі.
1.4. Аналіз програмного забезпечення для виявлення та протидії
мережевим вторгненням
Після виявлення потенційної атаки система IDS може активувати
заходи для запобігання або обмеження цієї атаки. Реакція на виявлення атаки
є ключовою частиною системи виявлення атак і полягає в прийнятті
відповідних заходів після виявлення потенційної атаки або загрози для
безпеки мережі або системи. Для розв’язання подібних задач існує ряд добре
відомих програмних продуктів, які вирішують ці завдання. Існує багато
різновидів програмного забезпечення для виявлення і протидії мережевим
вторгненням. Наведемо деякі з популярних інструментів і систем IDS та
надамо їх коротку характеристику.
SolarWinds Security Event Manager (SEM) - поєднує програмне
забезпечення системи виявлення вторгнень із засобами запобігання
вторгненням, є простим у використанні, здатним реагувати на події. Цей
надзвичайно універсальний інструмент максимально позбавляє виявлення
вторгнення від труднощів і складності (рис.1.11).
SEM використовує високоінтелектуальний підхід до виявлення загроз.
Збираючи системні журнали виявлення мережевих вторгнень, SEM порівнює
інформацію про типи та кількість атак. Потім ця інформація інтегрується з
іншими журналами інфраструктури, створюючи широку мережу даних для
виявлення загроз.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 28
Рис.1.11. Зовнішній вид додатку SEM
Ці дані постійно оптимізують системи безпеки та процеси IDS або
інформують про створення більш ефективних процедур, краще обладнаних
для захисту в мережі. За допомогою SEM можна ідентифікувати проблемні
пристрої в мережі, використовувати дані для створення звітів про оцінку
ризиків для зацікавлених сторін і визначати високорозвинені загрози, перш
ніж вони спричинять хаос у системі.
Основні функції SolarWinds Security Event Manager включають:
збір і агрегація подій – додаток може збирати та агрегувати дані з
різних джерел, таких як журнали подій, файли журналів, мережевий трафік
та інші джерела інформації;
виявлення вторгнень - при допомозі аналізу подій і використання
правил може виявляти потенційні атаки та загрози для безпеки;
кореляція подій - проводить аналіз подій і спрямовує увагу на зв'язки
між різними подіями, що допомагає виявляти складні атаки та загрози;
аналіз та звітність - надає інструменти для аналізу та створення звітів
щодо подій та активності в мережі, що допомагає виявляти аномалії та
проводити аудит безпеки;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 29
запобігання вторгненням - може реагувати на виявлені загрози і атаки
шляхом виконання встановлених заходів, таких як блокування атакувальних
IP-адрес або відправлення сповіщень адміністраторам.
Kismet - це програмне забезпечення для безпровідного моніторингу та
аналізу мереж Wi-Fi. Воно призначене для виявлення та аналізу бездротових
мереж, і його основною функцією є надання інформації про доступні Wi-Fi
мережі, включаючи їхні характеристики та аналіз мережевого трафіку
(рис.1.12).
Рис.1.11. Зовнішній вид додатку Kismet.
Основні функціональні можливості Kismet включають:
сканування Wi-Fi мереж - Kismet може сканувати доступні Wi-Fi
мережі, виявляючи їхні імена (SSID), MAC-адреси точок доступу та інші
параметри;
збір інформації про мережі - програма збирає детальну інформацію
про мережі, включаючи рівень сигналу, типи шифрування, канали і інші
характеристики;
моніторинг мережевого трафіку - Kismet може аналізувати та
реєструвати мережевий трафік, що пересилається через бездротові мережі;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 30
виявлення прихованих мереж - програмне забезпечення може виявляти
навіть ті мережі, які приховують свій SSID;
підтримка GPS - Kismet може інтегрувати дані з GPS-пристроїв, що
дозволяє відображати мережі на мапі;
підтримка різних форматів запису даних - дані, зібрані Kismet, можуть
зберігатися в різних форматах, що дозволяє аналізувати їх пізніше.
Kismet є потужним інструментом для аналізу бездротових мереж і
використовується як інструмент для виявлення безпеки, так і для діагностики
мережі та адміністрування бездротового обладнання. Це допомагає
адміністраторам мереж і дослідникам безпеки зрозуміти стан бездротових
мереж і виявляти можливі загрози.
Окрім того, існують і інші типи програмного забезпечення, які
відіграють роль IDS:
Snort - це відкрите програмне забезпечення для системи виявлення
вторгнень (IDS) і системи запобігання вторгненням (IPS). Snort здатний
виявляти та реагувати на різні види атак;
Suricata - інший відкритий IDS та IPS, який надає важливий захист
мережі від потенційних загроз і вторгнень;
Bro/Zeek - це інструмент, який працює на рівні пакетів і надає
можливість аналізувати мережевий трафік для виявлення аномалій та
потенційних атак;
FireEye - це комерційна платформа для виявлення і відповіді на
загрози, яка надає інтегрований підхід до захисту мереж та систем;
Cisco Firepower - інтегрована система для виявлення вторгнень і
запобігання вторгненням, яка надає захист на рівні мережі;
Palo Alto Networks - інтегрована система безпеки, яка включає в себе
засоби виявлення і відповіді на загрози, а також функції налаштування
правил для запобігання атак.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 31
Це лише кілька прикладів програмного забезпечення для виявлення і
протидії мережевим вторгненням. Вибір конкретної системи залежить від
потреб мережі та безпеки.
1.5. Машинне навчання як інструмент для реалізації систем IDS
Відомі різні методи та стратегії щодо побудови та реалізації
ефективних систем виявлення мережевих вторгнень (IDS). Застосування
машинного навчання (ML) для побудови систем виявлення вторгнень (IDS)
має великий потенціал і важливі переваги для підвищення якості та
ефективності цих систем. Серед різноманітних методів IDS на основі
аномалій, таких як IDS на основі машинного навчання (ML-IDS), IDS на
основі знань (K-IDS), IDS на основі аналізу даних (DM-IDS), IDS на основі
статистичних аномалій (SA-IDS), найбільш перспективний є ML-IDS,
оскільки він здатний поступово покращувати свою продуктивність шляхом
навчання (рис.1.12).
Рис.1.12. Загальний підхід щодо класифікації методів IDS.
Основні аспекти і позитивні сторони застосування машинного навчання
для IDS полягають в наступному:
виявлення нових загроз - машинне навчання дозволяє створювати
моделі, які можуть виявляти навіть нові та невідомі атаки. Традиційні
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 32
правила виявлення важко охоплюють такі атаки, в той час як алгоритми
машинного навчання можуть виявляти аномалії в активності мережі;
зменшення хибних рішень - машинне навчання дозволяє створювати
моделі, які можуть виявляти атаки з більш точністю і зменшувати кількість
хибних рішень, що допомагає адміністраторам мережі зосередитися на
реальних загрозах;
адаптивність до змін - машинне навчання може автоматично
адаптувати моделі до змін у мережевій активності і нових атак, що робить
систему IDS більш гнучкою та ефективною в довгостроковому плані;
аналіз великих обсягів даних - машинне навчання дозволяє ефективно
обробляти великі обсяги даних, що надходять в мережу, і виявляти зміни в
активності, які можуть свідчити про атаки;
поєднання з іншими методами - машинне навчання може
використовуватися разом із традиційними методами виявлення вторгнень,
створюючи комплексні системи IDS з більш високою надійністю;
попередження атак "нуль-дня" - машинне навчання може бути
використане для виявлення атак "нуль-дня", тобто атак, які використовують
вразливості, про які раніше не було відомо. Алгоритми машинного навчання
можуть виявити аномалії в мережевій активності, які свідчать про подібні
атаки;
раннє виявлення загроз - машинне навчання дозволяє виявляти загрози
на більш ранній стадії, що дозволяє адміністраторам мережі реагувати
швидше і запобігати потенційним атакам;
аналіз зав’язків між подіями - машинне навчання допомагає
встановлювати зв'язки між різними подіями в мережі, що допомагає виявити
складні атаки та загрози;
оптимізація ресурсів - використання машинного навчання може
допомогти оптимізувати використання ресурсів, так як система IDS може
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 33
фокусувати увагу на найбільш важливих або підозрілих подіях, що зменшує
навантаження на сервери та мережеве обладнання;
зменшення людського втручання - ефективна система IDS, побудована
на машинному навчанні, може автоматично реагувати на певні типи загроз,
зменшуючи потребу в постійному втручанні адміністраторів;
виявлення внутрішніх загроз - машинне навчання може бути
використане для виявлення аномальної активності користувачів всередині
мережі, що може свідчити про внутрішні загрози або недостойну поведінку
співробітників.
Загалом, машинне навчання вносить суттєвий внесок в розвиток систем
виявлення вторгнень і грає важливу роль в боротьбі з постійно зростаючими
загрозами для безпеки мереж і систем. Ефективні системи IDS на основі
машинного навчання можуть бути важливим компонентом стратегії
забезпечення інформаційної безпеки.
1.6. Висновки
Дослідження мережевих вторгнень та створення ефективних систем
виявлення вторгнень (IDS) на сьогоднішній день є актуальним завданням в
галузі інформаційної безпеки. Ця актуальність обумовлена зростанням числа
різноманітних загроз і постійним розвитком зловмисників, які
вдосконалюють свої методи та тактики для усунення захисту. Тому
проведення досліджень в сфері мережевих вторгнень та аналізу систем IDS
має вирішальне значення для виявлення та протидії таким загрозам.
Мережеві атаки набувають все більшої складності та вишуканості, що
ускладнює завдання створення сучасних та досконалих систем IDS. Такі
системи повинні не лише реагувати на відомі атаки, але й впізнавати нові,
невідомі загрози, включаючи атаки "нуль-дня" та атаки, які маскуються під
нормальну активність.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 34
Обсяги даних, які обробляються в мережах і системах, зараз вражаюче
великі, і це ставить перед нами виклик в галузі виявлення вторгнень. Це
вимагає розробки ефективних методів аналізу великих обсягів інформації.
На сьогодні існує багато програмних продуктів, які розв’язують задачі
IDS. Проте тільки комплексний підхід і застосування нових методів аналізу,
таких як методи машинного навчання та штучного інтелекту, можуть суттєво
підвищити якість таких систем щодо виявлення та протидії мережевим
вторгненням, сприяє розвитку більш ефективних систем IDS. Тому в даній
кваліфікаційній роботі велика увага буде приділятися саме цьому аспекту для
створення високоякісних та результативних систем IDS на основі
нейромережевих структур.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 35
2. ВИЯВЛЕННЯ МЕРЕЖЕВИХ ВТОРГНЕНЬ НА ОСНОВІ
НЕЙРОМЕРЕЖЕВИХ СТРУКТУР
2.1. Застосування машинного навчання для аналізу мережевого трафіку
Мережева безпека є однією з найбільш швидкозростаючих галузей
завдяки збільшенню кількості та складності атак. Дані вважаються одними з
найцінніших активів любої компанії. Кібератаки зазвичай здійснюються
проти мережі користувача та полягають у використанні вразливості для
несанкціонованого використання електронних даних. Сучасні мережі
стикаються з розповсюдженими та все більш витонченими атаками. Тому
захист мережі від кібератак є надзвичайно важливим.
Системи виявлення вторгнень (IDS) розгортаються в сценаріях
поглибленого захисту щоб захистити мережі від різних типів атак. Залежно
від розташування пристрою та того, чи намагається він запобігти атакам,
система може діяти також як система запобігання вторгненню (IPS).
Загалом IDS відстежує мережевий трафік для пошуку сигнатур
зловмисної діяльності або порушень правил, створених на основі політик
безпеки. Методи на основі сигнатур і на основі аномалій є двома основними
підходами, які використовуються для створення таких систем. Сигнатура
являє собою індикатор компрометації, створений на основі раніше
ідентифікованих (відомих) загроз. У разі невідомих загроз або атак нульового
дня більш доречними є системи виявлення аномалій.
Недоліки IDS на основі аномалій включають вищий рівень хибних
спрацьовувань (класифікація звичайного трафіку як атаки) і хибних негативів
(дозволяє поширювати зловмисний трафік). Для побудови системи виявлення
аномалій можна використовувати різні методи: порогове виявлення, статичне
або евристичне; статистичні заходи; заходи, засновані на правилах; і
машинне навчання (ML).
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 36
Хоча IDS на основі сигнатур є більш поширеними, останні розробки
IDS на основі аномалій використовують алгоритми машинного навчання.
Модель IDS використовує один або кілька алгоритмів, щоб навчитися
розпізнавати зловмисну діяльність. Кожна модель створена з використанням
певного набору функцій, доступних для певного набору даних. Точність IDS
машинного навчання з тестовими наборами даних може перевищувати 90%,
що демонструє високий показник якості функціонування IDS на такій основі.
Машинне навчання (Machine Learning, ML) - це галузь штучного
інтелекту (АІ) (рис.2.1), яка займається розробкою алгоритмів та моделей, які
навчаються на основі даних і можуть виконувати завдання без явного
програмування. Основна ідея машинного навчання полягає в тому, щоб
створити систему, яка може адаптуватися до нових даних і вдосконалювати
свою продуктивність з часом.
Рис.2.1. Машинне навчання та його місце в AI.
Машинне навчання використовує велику кількість даних для створення
моделей. Ці дані можуть бути використані для навчання алгоритмів
розпізнавати патерни і залежності в даних. Моделі машинного навчання
можуть бути використані для прийняття рішень на основі даних без
необхідності програмування конкретних правил. Це допомагає вирішувати
завдання великої складності.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 37
На основі застосування технології машинного навчання можна
вирішувати самі різні задачі, зокрема класифікації, регресії, кластеризації,
зменшення розмірності та ін. (рис.2.2).
Рис.2.2. Типові задачі машинного навчання.
Існує кілька основних способів класифікації машинного навчання
(ML), які допомагають розуміти його різні підходи та методи (рис.2.2).
Зокрема, можна виділити такі основні підходи до застосування ML.
За типом завдань.
Навчання з учителем (Supervised Learning). Моделі навчаються на
основі пар даних (вхідні дані та відповіді) і використовуються для
прогнозування відповідей для нових даних. Приклади задач: класифікація,
регресія.
Навчання без учителя (Unsupervised Learning). Моделі навчаються без
надання відповідей, і їх завданням є виявлення структури або групування
даних. Приклади задач: кластеризація, пониження розмірності.
Навчання з підкріпленням (Reinforcement Learning). Моделі навчаються
через взаємодію з середовищем та отримують винагороди за певні дії. Вони
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 38
навчаються вибирати дії, які максимізують суму винагороди в тривалому
періоді.
За типом вихідних даних.
Класифікація (Classification). Моделі передбачають категорію або клас,
до якого належить вхідний об'єкт.
Регресія (Regression). Моделі передбачають числове значення або
неперервну величину на основі вхідних даних.
За методами навчання.
Символьне навчання (Symbolic Learning). Використовує символьні
правила та символічний аналіз для розв'язання завдань.
Засноване на інстансах (Instance-Based). Використовує інформацію про
конкретні приклади даних для вирішення задач.
Засноване на імітації (Simulation-Based). Використовує імітацію
процесів або середовища для навчання.
Засноване на структурах (Structure-Based). Використовує структурні
характеристики даних, такі як графи, для навчання та прийняття рішень.
За типом обчислень.
Офлайн (Batch Learning). Моделі навчаються на всьому наборі даних
одного разу і потім використовуються для прогнозування.
Онлайн (Online Learning). Моделі навчаються поступово, приймаючи
нові дані в режимі реального часу.
За типом завдань та задач.
Класифікація тексту (Text Classification). Класифікація текстових
даних на категорії або класи.
Аналіз зображень (Image Analysis). Робота з візуальними даними для
завдань, таких як розпізнавання об'єктів.
Рекомендації (Recommendation Systems). Розробка систем рекомендацій
для користувачів на основі їхніх взаємодій з продуктами або послугами.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 39
Ці класифікації надають загальний уявлення про різноманітність
методів та завдань в машинному навчанні. Конкретний вибір методу
залежить від типу даних конкретних цілей.
В даному випадку для реалізації системи IDS потрібно реалізувати
задачу класифікації, при якій буде побудована модель пошуку аномальної
поведінки системи при мережевій атаці. При такій постановці задачі буде
використано підхід навчання з учителем, коли модель для свого навчання має
розмічений набір даних і навчається на ньому.
В кваліфікаційній роботі буде застосований підхід на основі навчання з
учителем (Supervised Learning), який схематично представлений на рис.2.3.
Рис.2.3. Представлення технології ML на основі Supervised Learning.
Supervised Learning (навчання з учителем) - це один з типів машинного
навчання, де алгоритм навчається на основі вхідних даних та відповідних
(міток) відповідей, з метою навчити модель прогнозувати відповіді для нових
вхідних даних. В основі навчання з учителем навчання лежить навчання з
учителем, як учитель надає моделі приклади правильних відповідей для того,
щоб модель могла навчитися визначати правильні відповіді для невідомих
даних.
Основні характеристики навчання з учителем:
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 40
наявність розмітки: у супервізованому навчанні для кожного вхідного
прикладу надається відома мітка або відповідь. Наприклад, у задачі
класифікації, для кожного вхідного зображення може бути мітка, що
позначає клас, до якого воно належить (наприклад, нормальний чи
аномальний);
цільова функція - метою навчання з учителем є мінімізація помилки
моделі, тобто відстані між передбаченими відповідями та правильними
мітками. Ця відстань визначається за допомогою цільової функції, яка може
бути різною для різних типів задач (наприклад, середньоквадратична
помилка для регресії або крос-ентропія для класифікації);
навчання на тренувальних даних - модель навчається на тренувальних
даних, в яких відомі вхідні дані та відповіді. Після навчання модель може
бути використана для прогнозування відповідей для нових, раніше невідомих
даних;
загальність - навчання з учителем дозволяє моделі вивчати загальні
закономірності з тренувальних даних, щоб робити прогнози для нових даних.
Застосування навчання з учителем включає в себе задачі класифікації,
регресії, виявлення об'єктів, розпізнавання мови, рекомендації та багато
інших. Важливо визначити вірну цільову функцію та зібрати якісні
тренувальні дані для успішного навчання.
Для задачі класифікації і побудови IDS можуть бути використані різні
відомі методи, деякі з них наведені нижче.
K-Nearest Neighbors (KNN) - це один з алгоритмів навчання з учителем
в машинному навчанні, який використовується для класифікації і регресії.
KNN є найпростішим методом, що базується на припущенні, що подібні
об'єкти повинні бути близькими в просторі ознак. Реалізація алгоритму K-
найближчих сусідів відбувається при застосуванні класу KNeighborsClassifier
з бібліотеки sklearn.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 41
Дерево рішень (Decision Tree) - це популярний алгоритм машинного
навчання, який використовується як для класифікації, так і для регресії. Цей
алгоритм представляє собою структуру у вигляді графа-дерева, де кожен
вузол представляє рішення, яке базується на певному атрибуті (ознаці) даних.
Дерева рішень використовуються для прийняття рішень на основі аналізу
ознак даних та побудови логічних правил. Реалізація алгоритму Decision Tree
відбувається при застосуванні класу DecisionTreeClassifier з бібліотеки
sklearn.
Випадковий ліс (Random Forest) - це ансамбльний алгоритм
машинного навчання, який базується на деревах рішень. Він
використовується для задач класифікації та регресії і є одним із
найефективніших методів для покращення точності прогнозувань. Алгоритм
випадкового лісу — це контрольований алгоритм машинного навчання, який
широко використовується в задачах класифікації та регресії. Він будує дерева
рішень з різними вибірками та обчислює мажоритарний клас для
класифікації та середній прогноз для регресії. Реалізація алгоритму Random
Forest відбувається при застосуванні класу RandomForestClassifier з
бібліотеки sklearn.
SVM або машина опорних векторів (Support Vector Machine) - це
алгоритм машинного навчання, який використовується для задач
класифікації та регресії. SVM розроблений для вирішення завдань, де
необхідно розділити дані на два або більше класи (для класифікації) або
побудувати модель для передбачення числових значень (для регресії).
Машина опорних векторів (SVM) — це дуже потужна та універсальна
модель машинного навчання, здатна виконувати лінійну або нелінійну
класифікацію, регресію та виявлення викидів. Реалізація алгоритму SVM
відбувається при застосуванні класу SVM з бібліотеки sklearn.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 42
Існує багато інших алгоритмів для задач класифікації і виділення
аномалій, серед яких окреме місце займають нейронні мережі.
Нейронні мережі (Neural Networks) - це потужний клас алгоритмів
машинного навчання, який був інспірований структурою та функцією
людського мозку. Нейронні мережі використовуються для вирішення
різноманітних завдань, включаючи класифікацію, регресію, генерацію
тексту, розпізнавання зображень, обробку природної мови та багато інших.
Нейронні мережі, які також називають штучними нейронними мережами
(ANN) або імітованими нейронними мережами (SNN), є підгрупою моделей
машинного навчання та є основою алгоритмів глибокого навчання.
2.2. Принципи побудови нейронних мереж для застосування в
машинному навчанні
Як було сказано вище, машинне навчання (ML) є перспективним і
ефективним інструментом реалізації сучасної системи IDS. Разом тим, при
побудові таких систем можна реалізовувати технологію класичного
машинного навчання на основі алгоритмів і методів, описаних в п.2.1, або
застосувати більш гнучкий і функціональніший механізм на основі
нейромережевих структур або так зване глибинне навчання (Deep Learning -
DL). Реалізація процесу побудови моделі виявлення загроз фактично схожа
як для класичного ML, так і для DL (рис.2.4). Але отримані моделі будуть
відрізнятися властивостями, функціональними можливостями та областю
застосування. Застосування DL має ряд своїх переваг та полегшує роботу
інженера для побудови моделі прогнозування. Окрім того, значно
полегшується така процедура при побудові моделі, як оптимальний пошук
фітчів (ознак) або реалізація так званої інженерії ознак.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 43
Рис.2.4. Реалізація процесу загальної побудови моделі машинного навчання
при застосуванні ML та DL.
Системи IDS, розроблені із застосуванням методів ML і DL, зазвичай
передбачають виконання трьох основних кроків, як показано на рис.2.4,
тобто (i) етап попередньої обробки даних, (ii) етап навчання та (iii) етап
тестування. Для всіх запропонованих рішень набір даних спочатку
попередньо обробляється (Data Preprocessing), щоб перетворити його у
формат, придатний для використання алгоритмом. Цей етап зазвичай
включає кодування та нормалізацію. Іноді набір даних вимагає очищення з
точки зору видалення записів із відсутніми даними та повторюваних записів,
що також виконується на цьому етапі. Потім попередньо оброблені дані
випадковим чином діляться на дві частини: навчальний набір даних (Training
Phase) і тестовий набір даних (Testing Phase). Як правило, навчальний набір
даних складається з майже 70% - 80% вихідного розміру набору даних, а
решта 20% - 30% формує набір даних для тестування. Алгоритм ML або DL
потім навчається за допомогою навчального набору даних на етапі навчання.
Час навчання алгоритму залежить від розміру набору даних і складності
запропонованої моделі. Зазвичай час навчання для моделей DL вимагає
більше часу навчання через їх глибоку та складну структуру. Коли модель
навчена, її перевіряють за допомогою тестового набору даних і оцінюють на
основі зроблених передбачень. У випадку моделей IDS будемо мати на увазі,
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 44
що екземпляр мережевого трафіку належить або до безпечного (нормального
- Bening), або до класу атаки (Attacks).
Глибинне навчання (Deep Learning) - це галузь машинного навчання,
яка використовує нейронні мережі з багатьма прихованими шарами (глибокі
нейронні мережі) для вирішення складних завдань.
Глибинне навчання набуло великої популярності завдяки здатності
автоматично витягати важливі ознаки з великих обсягів даних та розв'язувати
завдання, які раніше були складні для класичних методів.
Основні властивості і можливості глибинного навчання для задач IDS
можна описати наступним чином:
автоматичне виявлення аномалій - глибинні нейронні мережі можуть
навчатися моделювати нормальну поведінку комп’ютерної мережі і
автоматично виявляти аномалії або незвичайні події. Вони можуть виявляти
вторгнення, які не були відомі раніше, що робить їх ефективними для
виявлення нових загроз;
аналіз великих обсягів даних - IDS повинні обробляти великі обсяги
мережевого трафіку та журналів подій. Глибинні нейронні мережі можуть
автоматично витягати корисні ознаки з цих даних та аналізувати їх
ефективно без проведення ручної роботи інженерії ознак (рис.2.5);
виявлення витоків інформації - глибинне навчання може
використовуватися для виявлення витоків конфіденційної інформації шляхом
відстеження звичайних або незвичайних патернів передачі даних;
швидкість реакції - глибинні нейронні мережі можуть працювати в
режимі реального часу, що дозволяє виявляти вторгнення миттєво та
реагувати на них негайно;
зменшення кількості помилкових спрацювань - глибинні моделі можуть
бути налаштовані таким чином, щоб мінімізувати помилкові спрацювання,
тобто виявлення нормальної активності як аномалії;
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 45
автоматичне навчання - глибинні нейронні мережі можуть навчати
себе на нових даних, що дозволяє системам IDS адаптуватися до змінних
загроз і нових векторів атак.
Рис.2.5. Автоматичний фітч інжинірінг при застосуванні DL.
Загалом, глибинне навчання має великий потенціал для покращення
систем виявлення вторгнень та забезпечення кращої безпеки мереж та
систем.
Як працює глибоке навчання. Основою функціонування будь-якої
нейронної мережі є перцептрон, де проводяться математичні обчислення.
Перцептрон представляє собою простий тип штучного нейрона або базової
одиниці нейронних мереж. Він є фундаментальним компонентом для
багатьох архітектур нейронних мереж. Задачею перцептрона є розв'язання
бінарних класифікаційних завдань, таких як визначення класу вхідного
об'єкта або розпізнавання образів (рис. 2.6).
Рис.2.6. Представлення функціонування перцепрона
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 46
Принцип роботи перцептрона базується на імітації роботи нейронів у
людському мозку. Основні етапи праці перцептрона включають:
вхідні дані (Inputs) - перцептрон приймає на вхід вектор даних, який
представляє собою числові або бінарні значення. Ці дані представляють
характеристики або ознаки об'єкта, який підлягає аналізу;
ваги (Weights) - для кожного входу встановлюються ваги, які
визначають важливість кожного входу для роботи перцептрона. Ваги
визначають, наскільки великим чином кожен вхід впливає на вагову суму;
вагова сума (Weighted Sum) - вхідні дані множаться на відповідні ваги, і
всі отримані добутки сумуються разом, формуючи вагову суму. Це
представляє собою лінійну комбінацію вхідних даних і ваг;
функція активації (Activation Function або Step Function) - вагова сума
проходить через функцію активації, яка визначає вихідний сигнал
перцептрона. Функція активації може приймати різні форми, такі як
сигмоїдальна функція або функція Хевісайда (функція кроку) та ін. (рис.2.7);
Рис.2.7. Деякі поширені функції активації в ML
бінарний вихід (Binary Output) - зазвичай вихід перцептрона - це
бінарне значення, яке вказує на клас або категорію, до якої належить вхідний
об'єкт. Вихід визначається пороговим значенням функції активації;
навчання (Learning): процес навчання перцептрона включає
коригування ваг з метою мінімізації помилки класифікації. Під час навчання
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 47
ваги оновлюються відповідно до різниці між фактичним та очікуваним
виходом.
Цей простий алгоритм дозволяє перцептрону вчитися і адаптуватися до
вхідних даних, навчаючи його визначати взаємозв'язки та робити
класифікації. За допомогою комбінації ваг і функції активації перцептрон
може навчатися вирішувати різноманітні завдання, включаючи класифікацію
об'єктів, прогнозування, розпізнавання образів та інші.
Нейронні мережі (neural networks - NN) глибокого навчання, або штучні
нейронні мережі (artificial neural networks - ANN), намагаються імітувати
людський мозок за допомогою комбінації вхідних даних, ваг і зміщення. Ці
елементи працюють разом, щоб точно розпізнавати, класифікувати та
описувати об’єкти в даних.
Глибокі нейронні мережі складаються з кількох шарів
взаємопов’язаних вузлів (перцептронів), кожен з яких будується на
попередньому шарі для уточнення й оптимізації прогнозу або категоризації
(рис.2.8).
Рис.2.8. Принцип побудови багатошарових перцептронних моделей
мереж.
Цей хід обчислень через мережу називається прямим поширенням.
Вхідний (Input Layer) і вихідний шари (Output Layer) глибокої нейронної
мережі називаються видимими шарами, на відміну від прихованих (Hidden
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 48
Layer). Вхідний рівень – це місце, де модель глибокого навчання отримує
дані для обробки, а вихідний рівень – це місце, де робиться остаточний
прогноз або класифікація.
Інший процес, який називається зворотним розповсюдженням (back
propagation), використовує алгоритми, такі як градієнтний спуск та ін., для
обчислення помилок у передбаченнях, а потім коригує ваги та зміщення
функції, переміщаючись назад через шари, щоб навчити модель. Разом пряме
та зворотне поширення дозволяють нейронній мережі робити прогнози та
відповідно виправляти будь-які помилки. З часом алгоритм стає точнішим, а
самі етапи проходження навчання називають епохами (рис.2.9).
Рис.2.9. Реалізація процедури зворотного розповсюдження - back
propagation
Є кілька основних типів нейронних мереж, і їх можна класифікувати за
різними критеріями. Ось деякі розповсюджені типи нейромереж.
Згорткові нейронні мережі (Convolutional Neural Networks, CNN), які
використовуються для обробки зображень та відео, ефективні в розпізнаванні
образів та паттернів, мають шари згортки, пулінгу та повністю зв'язані шари.
Багатошарові перцептрони (Multilayer Perceptrons, MLP) -
складаються з вхідного, прихованих та вихідних шарів. Використовуються
для класифікації та регресії. Здатні вивчати складні взаємозв'язки між
ознаками.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 49
Рекурентні нейронні мережі (Recurrent Neural Networks, RNN) -
підходять для обробки послідовних даних, таких як текст або часові ряди.
Мають здатність запам'ятовувати попередні інформаційні стани.
Самоорганізуючі карти конкурентного навчання (Self-Organizing
Maps, SOM) - використовуються для кластеризації та візуалізації даних.
Створені для відображення взаємозв'язків між ознаками в просторі.
Мережі Кохонена (Kohonen Networks) - також використовуються для
навчання без учителя та кластеризації. Ефективні в розпізнаванні
взаємозв'язків у великих наборах даних.
Мережі довготривалої та короткотривалої пам'яті (Long Short-
Term Memory, LSTM). Використовуються в RNN для роботи з великими або
довгими послідовностями даних. Мають покращені можливості управління
пам'яттю та уникнення проблем вивчення довготривалих залежностей.
Це лише кілька основних типів, існують багато інших модифікацій та
комбінацій для різних завдань та варіацій задач машинного навчання
(Рис.2.10).
Рис.2.10. Деякі різновиди нейромережевих структур.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 50
В роботі будуть розглянуті і запропоновані повно зв’язні
нейромережеві структури (fully connected neural network, dense neural
network), як один із найпростіших і поширених видів.
Багатошарові перцептрони (Multilayer Perceptrons, MLP) або
повнозв'язні мережі - це один із основних типів нейронних мереж, які
включають в себе кілька шарів нейронів, де кожен нейрон у попередньому
шарі пов'язаний з кожним нейроном у наступному шарі (рис.2.8). Наведемо
основні риси повно зв’язних мереж.
Архітектура MLP - складаються з вхідного шару, одного або декількох
прихованих шарів та вихідного шару. Кожен нейрон у шарі пов'язаний з
кожним нейроном у наступному шарі. Такий тип нейромережі здатний
навчатися та моделювати складні взаємозв'язки в даних, що робить їх
універсальними для різних завдань, таких як класифікація, регресія та інші.
Функції активації - кожен нейрон використовує функцію активації для
визначення виходу на основі вагової суми його входів. Популярні функції
активації включають сигмоїду, гіперболічний тангенс, та Rectified Linear Unit
(ReLU) та ін (рис.2.7).
Навчання в повно зв’язних мережах зазвичай виконується за
допомогою алгоритму зворотного розповсюдження помилок
(Backpropagation – рис.2.9), де ваги нейронів оновлюються так, щоб
мінімізувати помилку прогнозу.
Разом з тим, необхідно відміти існування проблеми перенавчання,
особливо при наявності великої кількості параметрів та невеликої кількості
навчальних прикладів.
Проблема перенавчання - це явище, коли модель нейронної мережі
навчається на навчальних даних настільки добре, що вона втрачає
здатність узагальнювати та робити правильні прогнози на нових, раніше не
бачених даних. Тобто, модель стає занадто специфічною для конкретного
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 51
набору даних, і це може призвести до погіршення її ефективності на нових
задачах (рис.2.11).
Рис.2.11. Ілюстрація побудови моделі з властивістю перенавчання –
overfitting.
Основні причини проблеми перенавчання:
надмірна складність моделі - якщо модель надто складна, вона може
"запам'ятовувати" шум або випадкові закономірності в навчальних даних, що
не є реальними залежностями;
недостатня кількість навчальних прикладів - якщо кількість доступних
навчальних даних дуже мала, модель може надто адаптуватися до
конкретних прикладів, не забезпечуючи загальної універсальності;
навчання на шумі або викидах - якщо модель навчається на даних, які
містять шум або викиди, вона може неправильно узагальнювати ці аномалії;
недооцінка регуляризації - недостатнє використання методів
регуляризації, таких як dropout або L1/L2 регуляризація, може призвести до
перенавчання.
Регуляризація Dropout - це метод, який використовується в глибинному
навчанні для запобігання перенавчанню та покращення універсальності
моделі. Суть регуляризації Dropout, аргументом якої є значення від 0 до 1
полягає в тому, що під час навчання випадковим чином вимикаються
(викидаються) деякі нейрони та їх зв'язки в мережі на кожній ітерації
навчання (рис.2.12).
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 52
Рис.2.12. Стандартна повно зв’язна мережа (а) і мережа після
виконання регуляризації Dropout().
Основні кроки регуляризації Dropout можуть бути наступними:
випадкове вимикання нейронів - на кожній ітерації навчання кожен
нейрон має певну ймовірність бути вимкненим. Це означає, що ваги, які
призначені цим нейронам, не оновлюються, і вони не беруть участь у
навчанні на даному етапі;
випадкове вимикання зв'язків - окрім вимикання нейронів, випадково
можна вимикати зв'язки між нейронами, щоб уникнути занадто сильної
залежності між ними;
ймовірність Dropout - ймовірність вимикання нейрону визначається
параметром dropout (зазвичай варіюється від 0.2 до 0.5). Наприклад, якщо
dropout = 0.3, то кожен нейрон має ймовірність 30% бути вимкненим на
кожній ітерації.
Переваги використання Dropout полягають у зменшення перенавчання
та підвищення універсальності моделі, мережа стає менше залежною від
конкретних нейронів чи зв'язків, що поліпшує її здатність узагальнення на
нові дані, збільшує рівномірність відповідальності між нейронами,
допомагаючи уникнути перекосу ваг.
Застосування Dropout допомагає покращити стійкість моделі та сприяє
більшій універсальності у різних задачах.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 53
Якщо модель перенавчається, її точність може бути високою на
навчальних даних, але вона буде низькою на нових, тестових даних. Для
подолання проблеми перенавчання важливо використовувати адекватні
методи регуляризації, використовувати достатню кількість навчальних
прикладів та утримуватися від використання занадто складних моделей,
якщо це необхідно.
Повно зв’язні мережі можуть бути дуже потужними інструментами для
вирішення різних задач, в тому числі для побудови ефективних систем IDS.
2.3. Застосування технології глибинного навчання для побудови систем
виявлення мережевих вторгнень
Для побудови системи IDS виявлення мережевих вторгнень на основі
глибокого машинного навчання (Deep ML) скористаємося підходом,
структура якого зображена на рис.2.13. На основі побудови моделі
машинного навчання можна в майбутньому її застосовувати і прогнозувати
на основі трафіку мережі про її нормальну (normal) або аномальну (anomaly)
поведінку.
Рис.2.13. Структурна схема побудови моделі машинного навчання на основі
застосування Deep ML.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 54
Побудова глибокої моделі нейронної мережі зазвичай включає кілька
етапів обробки даних для підготовки їх до використання в навчанні моделі.
Основні етапи побудови і використання такої моделі складаються з
наступних кроків (рис.2.13).
1.Збір та завантаження даних (Input Traffic):
- зібрати необхідні дані для вашого завдання;
- завантажити дані відповідно до формату, який може бути легко
оброблений. Цей етап відбувається на основі завантаження, вже як правило,
готового і розміченого датасета, яких є багато в мережі і вони спеціально
підготовлені та оновлюються для таких задач.
2.Очистка даних (Preprocessing):
виявити та виправити аномалії, втрати або неправильні значення в
даних;
нормалізувати дані для забезпечення стабільності та ефективності
навчання, отримання більш адекватної моделі з узагальнюючими
властивостями.
3.Інженерія та кодування ознак (Feature Engineering):
- виділити важливі ознаки з наявних даних;
- використання методів обробки даних та створення нових ознак, які
будуть покращувати ефективність моделі.
4. Кодування та Категоризація (Coding and Categorization):
- кодування категоріальних ознак у числові значення, наприклад, за
допомогою техніки One-Hot Encoding;
- нормалізація або стандартизація числових ознак для уніфікації
масштабу.
5. Розділення на навчальні (Training) та тестові (Testing) набори:
- розділення даних на навчальний та тестовий набори для оцінки
ефективності моделі на нових даних.
6. Створення та навчання моделі (Detection Model):
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 55
побудова та налаштування архітектури глибокої нейронної мережі;
вибір функції втрат, оптимізатора та метрик для навчання моделі;
використання навчального набору для тренування моделі.
Такі етапи, як Feature Engineering і побудова моделі (Build Detection
Model) складають специфіку нейромережевої моделі.
Зазначені етапи допомагають підготувати дані та створити зручні
умови для ефективного навчання глибокої моделі.
Окрім етапів підготовки і створення моделі є ряд параметрів і
характеристик, які є важливими при побудові нейромережевої моделі даних.
Наведемо короткий опис деяких з них.
Функція втрат і оптимізатор — це ключові компоненти при
тренуванні глибоких нейронних мереж.
Функція втрат (Loss Function) - це функція, яка вимірює, наскільки
вдало модель вирішує завдання. Вона обчислює різницю між
прогнозованими значеннями моделі та фактичними значеннями. Мета
полягає в тому, щоб зменшити цю різницю під час навчання.
Для класифікаційних задач часто використовуються функції, такі як
категоріальна крос-ентропія, а для регресійних задач - середньоквадратична
помилка MSE (або L2 (Ridge) Loss) (рис.2.14).
Рис.2.14. Ілюстрація середньоквадратичної помилки MSE між істинним
значенням і прогнозованим.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 56
Оптимізатор (Optimizer) - це алгоритм, який використовується для
налаштування параметрів моделі з метою зменшення значення функції втрат.
Оптимізатор визначає, яким чином адаптувати ваги мережі в процесі
навчання.
Популярні оптимізатори включають SGD (стохастичний градієнтний
спуск), Adam, RMSprop тощо (рис.2.15).
Рис.2.15. Ілюстрація залежності функції втрат (cost) від зміни
параметра ваги коефіцієнта w нейромережі.
Важливо вибирати функції втрат та оптимізатори відповідно до
конкретного завдання та характеристик даних. Добре налаштовані функції
втрат та оптимізатори сприяють ефективному та швидкому навчанню моделі.
Ще один важливий параметр при навчанні нейромережі – це Learning
rate (швидкість навчання). Це гіперпараметр в глибокому навчанні, який
визначає розмір кроку або швидкість, з якою модель навчається під час
тренування. Цей параметр впливає на те, наскільки швидко або повільно
модель змінює свої ваги під час оптимізації.
Якщо встановити великий Learning Rate, то модель може швидко
навчитися, але існує ризик "перестрибування" оптимального рішення, і навіть
може не збігтися до оптимуму, може спричинити коливання або
нестабільність під час навчання (рис.2.16.а). Якщо встановити малий learning
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 57
rate - навчання може бути більш точним і стабільним, але процес може бути
повільним. Може виникнути ризик у локальному оптимумі, де модель
застрягає в мінімумі, який не є глобально оптимальним.
Важливо експериментувати з різними значеннями Learning Rate для
забезпечення ефективного та стабільного навчання моделі. Оптимальне
значення може залежати від конкретного завдання та характеристик даних.
а) б)
Рис.2.16. Ілюстрація великих (а) і достатніх (б) значень параметра
Learning Rate при навчанні.
Важливим параметром при навчанні моделі є поняття «Епохи». Епоха в
глибокому навчанні - це один прохід через усі навчальні дані під час
тренування моделі нейронної мережі. У процесі навчання нейронної мережі
дані розділяються на партії (батчі), і кожна епоха включає багато цих партій
для того, щоб модель бачила всі дані навчання один раз.
Наприклад, якщо є 1000 записів у навчальному наборі і ми тренуємо
модель з партією розміром 100, то одна епоха буде включати 10 ітерацій
(1000 / 100 = 10). Після завершення цієї епохи модель пройде через усі 1000
записів навчання.
Зазвичай, під час тренування моделі величина епохи обирається вручну
або встановлюється автоматично. Після кожної епохи можна оцінити
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 58
результати моделі на валідаційному наборі для визначення якості навчання та
виявлення ознак перенавчання чи недонавчання (рис.2.17).
Зазвичай, більше епох не завжди означає кращий результат. Занадто
багато епох може вести до перенавчання, коли модель "запам'ятовує"
тренувальні дані, але не може ефективно узагальнювати на нові дані.
а)
б)
Рис.2.17. Залежність значення функції втрат а) і точності моделі б) від
кількості епох навчання (epoch).
2.4. Параметри якості нейромережевої моделі
В машинному навчанні та оцінці продуктивності нейромережевої
моделі існує ряд показників, які використовуються для їх оцінювання на
навчальних і тестових даних. Вибір конкретних показників залежить від типу
завдання (класифікація, регресія і т. д.) та характеристик даних. Ось деякі з
найбільш поширених показників ефективності моделей для задач
класифікації, яка і підходить при побудові системи IDS:
Точність (Accuracy) - відсоток правильних класифікацій;
Точність (Precision) - відсоток об'єктів, правильно визначених як
позитивні серед усіх об'єктів, визначених як позитивні.
Повнота (Recall) - відсоток позитивних об'єктів, які були правильно
визначені моделлю серед усіх позитивних об'єктів;
F1-міра (F1-Score) - гармонічне середнє між точністю та повнотою,
забезпечуючи збалансованість обох показників.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 59
Графічне та математичне уявлення цих термінів можна представити на
рисунку 2.18, де TP = істинні позитивні результати, TN = істинні негативні
результати, FP = хибні позитивні результати та FN = хибні негативні
результати.
Рис.2.18. Основні показники ефективності в машинному навчанні
Accuracy (точність) - це ключовий показник, що використовується для
оцінки продуктивності класифікаційних моделей у машинному навчанні.
Вона визначає відсоток правильних прогнозів моделі серед всіх прогнозів і
обчислюється за допомогою наступної формули:
Accuracy=Кількість правильних прогнозів/Загальна кількість прогнозів.
Для визначення точності спочатку фіксуються наступні показники.
Кількість правильних прогнозів - це кількість об'єктів, які були вірно
класифіковані моделлю, де передбачені класи збігаються з фактичними
класами.
Загальна кількість прогнозів - це загальна кількість об'єктів, для яких
модель зробила класифікаційні прогнози.
Після отримання цих значень вони вводяться в формулу для
розрахунку точності.
Зазначені параметри будуть використані для оцінювання ефективності
отриманої нейромережевої моделі.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 60
Наприклад, нехай є модель, яка була випробувана на 100 об'єктах.
Припустимо, що вона правильно класифікувала 90 з них, то точність моделі
буде:
Accuracy=90/100=0.90.
Отже, точність в цьому випадку складає 90%. Ця метрика важлива для
загальної оцінки якості класифікаційної моделі. Разом з тим, потрібно
розглядати інші метрики у випадках дисбалансу класів (коли кількість одного
класу значно відрізняється від іншого). Для цього потрібні такі оцінки, як
точність (precision), повнота (recall) і F1-міра.
Precision (точність) - це критерій, що використовується для оцінки
ефективності класифікаційної моделі в машинному навчанні, зокрема в
завданнях класифікації. Цей показник визначає відсоток об'єктів, які були
вірно визначені як позитивні серед усіх об'єктів, які модель визначила як
позитивні. Точність вказує на те, наскільки "точними" чи "чистими" є
класифікації позитивних об'єктів моделі.
Формула для розрахунку точності (precision) така:
Precision=Кількість правильно визначених позитивних об’єктів/Загаль
на кількість об’єктів, визначених як позитивні.
Наприклад, нехай при класифікації 100 об'єктів модель визначила 95
об'єктів як позитивні. З цих 95 позитивних об'єктів 80 були правильно
визначені моделлю. Тоді точність буде:
Precision=80/95=0.84.
Точність складає 84%. Висока точність означає, що модель мало
помиляється при визначенні позитивних об'єктів.
Recall (повнота) - це метрика, що використовується для оцінки якості
класифікаційної моделі в машинному навчанні, зокрема в задачах
класифікації. Вона вимірює відсоток позитивних об'єктів, які були правильно
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 61
визначені моделлю серед усіх фактичних позитивних об'єктів. Повнота
допомагає визначити, наскільки "комплексним" є визначення позитивних
об'єктів моделлю.
Формула для розрахунку повноти (recall) така:
Recall=Кількість правильно визначених позитивних об’єктів/Загальна к
ількість фактичних позитивних об’єктів
Припустимо, що при класифікації 100 об'єктів модель визначила 90
об'єктів як позитивні. Загальна кількість фактичних позитивних об'єктів
становить 95, з яких визначила лише 85. Тоді повнота буде:
Recall=85/95=0.89.
F1-міра (F1-Score) - це гармонічний середній показник, який комбінує
точність (precision) і повноту (recall) для оцінки якості класифікації моделі в
машинному навчанні, зокрема в завданнях класифікації:
f1=(2×Precision×Recall) / (Precision+Recall)
Таким чином, описані показники будуть використані для оцінки
ефективності отриманої нейромережевої моделі.
2.5. Висновки
Машинне навчання відіграє важливу роль у вирішенні завдань
виявлення мережевих вторгнень (Intrusion Detection System, IDS). Основна
мета IDS полягає у виявленні незвичайної чи агресивної активності в
комп'ютерних мережах або системах та вчасній реакції на потенційні загрози
для безпеки. Використання глибокого машинного навчання спрощує цей
процес, забезпечуючи автоматизацію та підвищуючи точність виявлення
загроз.
Побудова моделі машинного навчання для виявлення мережевих
вторгнень (IDS) включає кілька ключових етапів, які можна узагальнити
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 62
наступним чином: збір і підготовка даних; вибір ознак (feature selection);
інженерія ознак (feature engineering); кодування та нормалізація даних;
розбиття набору даних; вибір алгоритму машинного навчання; навчання та
налаштування моделі; оцінка моделі; аналіз результатів та їх вдосконалення.
Цей ітеративний процес вимагає багатьох експериментів та аналізу
даних для досягнення оптимальних результатів у виявленні мережевих
вторгнень.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 63
3.ЗАСТОСУВАННЯ DEEP LEARNING ДЛЯ ВИЯВЛЕННЯ
МЕРЕЖЕВИХ ВТОРГНЕНЬ
3.1. Попередній аналіз та обробка даних
Для побудови моделі виявлення мережевих вторгнень на основі
застосування машинного навчання необхідно скористатися датасетом –
набором даних. Датасет представляє собою колекцію даних, яка
використовується для тренування, валідації або тестування моделей
машинного навчання. Цей набір даних містить вхідні приклади і відповідні
їм виходи, які модель намагатиметься вивчити. Призначення датасету для
машинного навчання полягає в тому, щоб навчити модель виконувати
конкретне завдання класифікації в контексті виявлення мережевого
вторгнення. Датасет служить як вихідна інформація для моделі, допомагаючи
їй вивчати закономірності і залежності між вхідними і вихідними даними.
Чим більше та репрезентативне навчальне середовище, тим краще модель
може виконувати прогнози або робити висновки на нових даних.
Існують різні набори даних з різних джерел, зокрема з джерела
Canadian Institute for Cybersecurity (https://www.unb.ca/cic/about/index.html),
де фігурують різні данні для різних платформ і задач. Канадський інститут
кібербезпеки (CIC) — це комплексний міждисциплінарний навчальний,
науково-дослідний і підприємницький підрозділ, який спирається на досвід
дослідників у соціальних науках, бізнесі, інформатиці, інженерії, праві та
науці. Ця установа є першою у своєму роді, яка об’єднує дослідників і
практиків з усього академічного спектру для обміну інноваційними ідеями,
створення проривних технологій і проведення новаторських досліджень
найактуальніших проблем кібербезпеки. Набори даних Канадського
інституту кібербезпеки використовуються в усьому світі університетами,
приватними підприємствами та незалежними дослідниками.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 64
В даній роботі представлено набір даних з 25192 записів і містить 42
колонки різноманітних ознак, в тому числі і розмітку як «class», з якої можна
робити висновок про нормальний чи аномальний мережевий трафік (рис.3.1).
Рис.3.1. Фрагмент датасету для попереднього аналізу і побудови моделі
машинного навчання.
Перелік всіх ознак в даному датасеті наведений на рис.3.2.
Рис.3.2. Перелік ознак датасета для проведення аналізу і побудови
моделі машинного навчання.
На рис.3.3. представлений опис основних ознак датасета, які
використовуються для побудови моделі машинного навчання. Такий набір
включає такі характеристики, як «duration» - тривалість з’єднання в
секундах, «protocol_type» - тип протоколу з’єднання, «service» - тип
мережевого сервісу та інші характеристики.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 65
Рис.3.3. Опис основних ознак датасета для аналізу даних
Ефективна побудова моделей машинного навчання для виявлення
мережевих вторгнень вимагає ретельної попередньої підготовки даних у
датасеті. Оскільки дані про вторгнення мають свої унікальні властивості,
процес попередньої підготовки складається з декількох етапів.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 66
Після збирання вхідних даних з різних джерел, таких як бази даних,
журнали, сенсори тощо, проводиться очищення даних від помилок, відсутніх
значень та аномалій, включаючи видалення дублікатів.
Важливим етапом є зменшення розмірності представлених ознак через
видалення непотрібних, які можуть бути неінформативними для моделі.
Після цього може виникнути необхідність у нормалізації або шкалюванні
даних, особливо, якщо алгоритми машинного навчання чутливі до масштабу
ознак. В даному випадку буде використовуватися нейромережева модель
обробки даних, яка чутлива до розкиду даних. Тому нормалізація даних в
датасеті є обов’язковою процедурою.
Якщо в даних присутні категоріальні ознаки, такі як назва сервісів або
інших параметрів, то вони піддаються кодуванню у числовий формат,
наприклад, за допомогою кодування «one hot encoding» або «Label Encoding».
Після попередньої очистки і аналізу датасета проводиться його
розділення на навчальний та тестовий набір для моделювання та оцінки
якості отриманої моделі.
Важливо також балансувати класи в разі незбалансованих даних,
застосовуючи методи oversampling або undersampling. Інші додаткові
операції, такі як видалення викидів, створення нових ознак або ін. можуть
також входити в процес попередньої підготовки.
Правильна попередня підготовка даних гарантує, що модель
машинного навчання працюватиме ефективно і вивчатиме корисну
інформацію, уникнувши можливих неправильних результатів та погіршення
її продуктивності.
В процесі попередньої обробки даних було проаналізовані і
візуалізовані ознаки з метою їх подальшої обробки. Наприклад, на рис.3.4.
представлено ознаку «protocol_type» по всім можливим її категоріям і
наведенням їх числових характеристик. Як видно з аналізу ознаки
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 67
«protocol_type» - вона складається з трьох різних значень: tcp (20526
значень), udp (3011 значень), icmp (1655 значень).
Рис.3.4. Представлення ознаки «protocol_type» по всім можливим її
категоріям і наведенням числових характеристик
Аналогічно представлено ознаку «service», яка характеризується досить
великим різноманіттям, зображеним на рис.3.5 та рис.3.6.
Рис.3.5. Представлення ознаки «service» по всім можливим її
категоріям і наведенням числових характеристик
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 68
Рис.3.6. Представлення складових ознаки «service».
Важливим моментом в аналізі даних датасета є його збалансованість
стосовно цільової функції, в якості якої виступає ознака «class» (рис.3.7.). Як
видно з отриманих даних, датасет є досить збалансованим і не вимагає
додаткових маніпуляцій, оскільки містить 13449 міток категорії нормального
мережевого трафіку і 11743 – аномального мережевого трафіку, що є майже
співрозмірними між собою.
Рис.3.7. Представлення цільової функції «class» та її характеристики.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 69
За результатами аналізу датасета з’ясовано, що він не містить
дублікатів записів, що також не потребує додаткових маніпуляцій по їх
видаленню (рис.3.8.)
Рис.3.8. Аналіз дублікатів в датасеті.
Важливим моментом в побудові якісної моделі машинного навчання є
видалення тих ознак в датасеті, які досить сильно корелюють між собою.
Таке видалення зменшує розмірність моделі і покращує її точність. Аналіз
таких кореляційних зв’язків наведено на рис.3.9, де світлі ділянки поля
відповідають збільшеній кореляції між відповідними ознаками і можуть бути
видалені без погіршення якості моделі.
Рис.3.9. Представлення кореляційних зв’язків різноманітних ознак датасета
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 70
Перетворення категоріальних ознак є важливим етапом у машинному
навчанні. Застосування кодування категоріальних ознак дозволяє підвищити
точність моделі, дозволяючи їй виявляти зв'язки та закономірності в даних,
які можуть залишитися непоміченими при використанні некодованих
категорій.
Існує кілька методів для кодування категоріальних ознак, таких як
кодування hot encoding, Label Encoding та інші. Вибір конкретного методу
залежить від характеру категоріальної ознаки, вимог задачі та особливостей
вибраного алгоритму машинного навчання. Кодування сприяє трансформації
категоріальних даних у формат, придатний для аналізу та моделювання, що
варто розглядати у контексті конкретної задачі. Наприклад, ознака
«protocol_type» має 3 унікальні значення, «service» - 66 та «flag» - 11
(рис.3.10).
Рис.3.10. Представлення категоріальних ознак «protocol_type»,
«service» та «flag».
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 71
В результаті застосування функції кодування Label Encoding отримаємо
наступний результат, представлений на рис.3.11, де категоріальні ознаки
мають свій цифровий номер.
Рис.311. Представлення перетворених категоріальних ознак
Нормалізація та шкалювання даних в машинному навчанні визнаються
як важливі аспекти обробки даних з метою покращення стабільності
алгоритмів та оптимізації ефективності моделей. Це обумовлено
необхідністю забезпечення стійкості алгоритмів обробки даних, щоб вони
були менш чутливими до різниці в масштабах даних. Відсутність цих
процесів може спричинити викривлення у вагах або недооцінку функцій
через різницю в масштабах.
Функція StandardScaler є одним із методів нормалізації та шкалювання
даних в машинному навчанні. Цей метод входить в склад бібліотеки, такої як
scikit-learn в Python, і використовується для приведення ознак до
стандартного нормального розподілу.
Функція StandardScaler перетворює дані так, щоб вони мали середнє
значення 0 і стандартне відхилення 1. Це дозволяє отримати дані, які подібні
до стандартного нормального розподілу.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 72
Застосування StandardScaler допомагає зменшити вплив різниці в
масштабах між різними ознаками. Це особливо важливо для алгоритмів, які
враховують відстані між точками, таких як метод k-найближчих сусідів чи
метод опорних векторів.
Використання в пайплайнах: Функцію StandardScaler часто
використовують в складі пайплайнів обробки даних в машинному навчанні.
Це дозволяє автоматизувати процеси нормалізації та шкалювання під час
побудови та валідації моделей.
Використання StandardScaler може допомагати уникнути проблем
перенавчання, коли ваги моделі занадто високі через великі значення вхідних
ознак. Виконання нормалізації даних та розділення датасета на тренувальний
і тестовий набір представлено у фрагменті програми на рис.3.12.
Тренувальний набір даних складається з 17634 записів, а Тестовий – 7558
записів.
Рис.3.12. Виконання функції нормалізації даних та виділення
тренувального і тестового набору даних.
Приведення даних до стандартного нормального розподілу є
рекомендованим етапом в підготовці даних для багатьох моделей машинного
навчання, особливо для тих, що базуються на лінійних алгоритмах чи
методах, що використовують градієнтні методи оптимізації.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 73
3.2. Побудова простої нейромережевої структури виявлення мережевих
вторгнень
Для побудови нейромережевої моделі класифікації режимів
мережевого трафіку використаємо просту структуру, яка буде складатися з
вхідного шару розміром, який визначається кількістю ознак вхідної таблиці.
Після попередньої обробки і видалення корельованих значень, серед 41
ознаки залишилася 31 ознака. Кількість вузлів у вихідному шарі буде
дорівнювати кількості можливих значень виходу, тобто два значення:
нормальний трафік чи аномальний. Внутрішній шар візьмемо з кількістю
вузлів - 64. Таким чином описана нейромережева структура представлена на
рис.3.13.
Рис.3.13. Представлення простої нейромережевої структури.
Процес навчання нейромережі представлений на рис.3.14, де за
результатами 10 епох досягається ефективність на рівні 0.98, що є досить
високим показником.
Рис.3.14. Процес навчання простої нейромережі на прикладі 10 епох.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 74
На рис.3.15 представлена інформація про структуру простої
нейромережі, яка налічує 2178 параметрів.
Рис.3.15. Інформація про структуру та кількість параметрів простої
нейромережевої структури.
На рис.3.16. представлена залежність точності простої нейромережевої
моделі для тренувального і тестового наборів даних від кількості епох
(ітерацій) навчання.
Рис.3.16. Залежність точності простої моделі нейромережі для
тренувального і тестового наборів даних від кількості епох.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 75
3.3. Побудова глибинної нейромережевої структури виявлення
мережевих вторгнень
Не дивлячись на те, що за попередніми результатами отримана досить
висока ефективність простої нейромережевої моделі, розглянемо збільшення
її складності на прикладі реалізації повно зв’язної структури глибинного
навчання (рис.3.17). Така модель, окрім описаних вище вхідних і вихідних
вузлів, буде мати в своєму складі 5 прихованих шарів.
Рис.3.17. Представлення глибинної нейромережевої структури.
Процес навчання глибинної нейромережі представлений на рис.3.18, де
за результатами 10 епох досягається ефективність на рівні 0.98, що є досить
високим показником.
Рис.3.18. Процес навчання глибинної нейромережі на прикладі 10 епох.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 76
На рис.3.19 представлена інформація про структуру глибинної
нейромережі, яка налічує 730178 параметрів, що набагато більше від
попередньої простої моделі.
Рис.3.19. Інформація про структуру та кількість параметрів глибинної
нейромережевої структури.
На рис.3.20. представлена залежність точності глибинної
нейромережевої моделі для тренувального і тестового наборів даних від
кількості епох (ітерацій) навчання.
Рис.3.20. Залежність точності глибинної моделі нейромережі для
тренувального і тестового наборів даних від кількості епох.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 77
3.4. Побудова структури виявлення мережевих вторгнень на основі CNN
Проведений аналіз двох попередніх моделей продемонстрував високі
показники ефективності щодо класифікації мережевих вторгнень. Разом з
тим, жодна модель не показала ефективність на рівні 1.0. Тому збільшимо
складність нейромережевої структури на рівні застосування CNN. Структура
такої моделі представлена на рис.3.21.
Рис.3.21. Представлення нейромережевої CNN структури.
Процес навчання CNN нейромережі представлений на рис.3.22, де за
результатами 10 епох досягається ефективність на рівні 0.97, що є також
високим показником.
На рис.3.23 представлена інформація про структуру глибинної
нейромережі, яка налічує 481648 параметрів для навчання.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 78
Рис.3.22. Процес навчання CNN нейромережі на прикладі 10 епох.
Рис.3.23. Інформація про структуру та кількість параметрів CNN
нейромережевої структури.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 79
На рис.3.24. представлена залежність точності глибинної
нейромережевої моделі для тренувального і тестового наборів даних від
кількості епох (ітерацій) навчання.
Рис.3.24. Залежність точності CNN моделі нейромережі для тренувального і
тестового наборів даних від кількості епох.
Результати перевірки представлених моделей на тестовому наборі
даних представлений на рис.3.25.
Рис.3.25. Результати перевірки ефективності запропонованих
нейромережевих моделей на тестовому наборі даних.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 80
Як видно з результатів тестування, всі три нейромережеві моделі
показали високі результати ефективності на рівні 0.97-0.98. З врахуванням
того, що перша модель є найпростішою і займає менше часу для навчання,
можна зробити висновок про рекомендацію її застосування для
прогнозування мережевого трафіку на предмет аналізу мережевих вторгнень.
3.5. Висновки
Системи виявлення вторгнень (IDS) є ключовим елементом
забезпечення мережевої інформаційної безпеки та застосовуються для
виявлення незаконних або небажаних активностей у мережах та системах.
Вони служать для ідентифікації потенційних вторгнень, атак, аномалій та
інших загроз, а також для надання реакції на них. Системи виявлення
вторгнень поділяються на два основних типи: системи на основі сигнатур та
системи виявлення аномалій. Останній підхід, що базується на аналізі
аномалій, стає важливим напрямком в дослідженнях і використовує переваги
машинного навчання перед існуючими методами.
У даному розділі висвітлено застосування технології машинного
навчання для виявлення мережевих вторгнень на основі застосування
нейромережевих структур різної складності. В якості набору даних для
тренування та тестування моделі машинного навчання було взято датасет,
який включає 25,192 записів з 41 якісною та кількісною ознакою, що
дозволяє виділити ключові властивості для аналізу мережевих з’єднань, які
визначаються як аномальні (мережеві вторгнення) та звичайні з’єднання.
Проведено аналіз представленого датасету на предмет наявності
відсутніх записів та їх дублікатів. Здійснено підготовку даних, виділення
тренувального і тестового наборів для подальшого аналізу моделей.
В роботі було проаналізовано три варіанти нейромережевих структур,
які відрізняються своєю складністю, кількістю параметрів і часом навчання.
Аналіз їх роботи показав приблизно однакову ефективність по правильній
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 81
класифікації мережевого трафіку в межах 0.97-0.98, що є досить високим
показником. Такі результати пояснюються тим, що датасет містить такий
набір ознак, які досить легко розрізняються і класифікуються за ознакою
нормальної і аномальної активності мережі.
Таким чином, отримана нейромережева модель, навіть при самій
простій її реалізації, дозволяє проводити прогнози мережевого трафіку на
високому рівні.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 82
ВИСНОВКИ
В роботі проведено аналіз потенційних загроз від мережевих вторгнень
та розроблено моделі для їх виявлення. Системи виявлення вторгнень (IDS)
визначаються як важливий компонент інформаційної безпеки, спрямований
на розпізнання незаконних чи небажаних активностей у мережах та системах.
Вони служать для виявлення потенційних вторгнень, атак, аномалій та інших
загроз, а також для надання можливості ефективно реагувати на ці ситуації.
Зазвичай використовуються два основних підходи до систем виявлення
вторгнень: системи на основі сигнатур і системи виявлення аномалій. Підхід,
що базується на аналізі аномалій, відкриває обширні можливості у сфері
машинного навчання.
Використання технології машинного навчання для виявлення
мережевих вторгнень має численні переваги порівняно з іншими методами,
включаючи автоматизацію, адаптивність та здатність до навчання на основі
історичних даних. Це особливо важливо для виявлення нових видів
вторгнень.
В роботі розглянуті та застосовані три різних нейромережевих
структури, зокрема проста мереже з одним прихованим шаром, повнозв’язна
нейромережа з 5 прихованим шарами, та набагато складніша нейромережа на
основі CNN структури.
Результати аналізу отриманих моделей показали приблизно однакову їх
високу ефективність на рівні 0.97-0.98, що є досить високим показником і
пояснюється специфікою датасета і підбором відповідних ознак. Тестування
різних отриманих нейромережевих моделей підтвердив їх високу
ефективність.
Таким чином можна зробити висновок, що запропоновані
нейромережеві моделі виявлення мережевих вторгнень мають високу
ефективність по класифікації режимів роботи мережевого трафіку і для
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 83
практичного застосування можна рекомендувати просту структуру із
забезпеченням високих експлуатаційних показників.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 84
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ
1. Толюпа С.В., Плющ О.Г., Пархоменко І.І. Побудова систем виявлення
атак в інформаційних мережах на нейромережевих структурах /
Толюпа С.В., Плющ О.Г., Пархоменко І.І.// К.:К1БЕРБЕЗПЕКА: освіта,
наука. Техніка № 2 (10), 2020. С.169-181.
2. Лук’яненко Т.Ю., Поночовний П.М., Легомінова С.В. Методика
виявлення мережевих вторгнень і ознак комп'ютерних атак на основі
емпіричного підходу // Сучасний захист інформації No 2 (50) 2022,
с.15-22.
3. Завада А.А. Аналіз сучасних систем виявлення атак і запобігання
вторгненням / А.А. Завада, О.В. Самчишин, В.В. Охрімчук //
Інформаційні системи. Житомир: Збірник наукових праць ЖВІНАУ,
2012. Т. 6, No 12. С. 97-106.
4. Andrei-Grigore Mari, Daniel Zinca, Virgil Dobrota. Development of a
Machine-Learning Intrusion Detection System and Testing of Its
Performance Using a Generative Adversarial Network. Sensors 2023, 23(3),
1315; https://doi.org/10.3390/s23031315.
5. Mbona, I.; Eloff, J.H.P. Detecting Zero-Day Intrusion Attacks Using Semi-
Supervised Machine Learning Approaches. IEEE Access 2022, 10, 69822–
69838.
6. Buczak, A.L.; Guven, E. A Survey of Data Mining and Machine Learning
Methods for Cyber Security Intrusion Detection. IEEE Commun. Surv.
Tutor. 2016, 18, 1153–1176.
7. Aldweesh, A.; Derhab, A.; Emam, A.Z. Deep learning approaches for
anomaly-based intrusion detection systems: A survey, taxonomy, and open
issues. Knowl.-Based Syst. 2020, 189, 105124.
8. Olouhal, O.U.; Yange, T.S.; Okerekel, G.E.; Bakpol, F.S. Cutting Edge
Trends in Deception Based Intrusion Detection Systems-A Survey. J. Inf.
Secur. 2021, 12, 250–269.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 85
9. Asharf, J.; Moustafa, N.; Khurshid, H.; Debie, E.; Haider, W.; Wahab, A. A
Review of Intrusion Detection Systems Using Machine and Deep Learning
in Internet of Things: Challenges, Solutions and Future
Directions. Electronics 2020, 9, 1177.
10. Prashanth, S.K.; Shitharth, S.; Praveen Kumar, B.; Subedha, V.; Sangeetha,
K. Optimal Feature Selection Based on Evolutionary Algorithm for Intrusion
Detection. SN Comput. Sci. 2022, 3, 439.
11. Sheikh, M.S.; Peng, Y. Procedures, Criteria, and Machine Learning
Techniques for Network Traffic Classification: A Survey. IEEE
Access 2022, 10, 61135–61158.
12. Dua, S.; Du, X. Data Mining and Machine Learning in Cybersecurity;
Auerbach Publications: Boca Raton, FL, USA, 2016.
Лист
БІ021.023.22189.248 ПЗ
Змін. Лист № докум. Підпис Дата 86