Будь ласка, використовуйте цей ідентифікатор, щоб цитувати або посилатися на цей матеріал: https://er.chdtu.edu.ua/handle/ChSTU/5854
Повний запис метаданих
Поле DCЗначенняМова
dc.contributor.advisorПалагін, Володимир Васильович-
dc.contributor.authorЩербатюк, Олександр Володимирович-
dc.date.accessioned2025-07-08T14:26:13Z-
dc.date.available2025-07-08T14:26:13Z-
dc.date.issued2023-
dc.identifier.urihttps://er.chdtu.edu.ua/handle/ChSTU/5854-
dc.description.abstractОб’єктом дослідження є системи виявлення мережевих вторгнень в інформаційно-телекомунікаційних системах. Предметом дослідження є моделі, методи та засоби машинного навчання для виявлення мережевих вторгнень. Метою роботи є аналіз та протидія мережевим вторгненням на основі розробки моделей та методів машинного навчання для підвищення безпеки роботи в Інтернеті. В кваліфікаційній роботі проведений аналіз мережевих вторгнень (Network Іntrusions), їх класифікація та ризики, які можуть бути причинені такими активностями зловмисників. Розглянуті питання запобігання мережевим вторгненням, в тому числи їх виявлення на ранніх етапах за допомогою сучасних методів машинного навчання. Представлений аналіз сучасних методів виявлення вторгнень в мережу (Detect Network Intrusion - IDS), де виділені сигнатурні і аномальні підходи до виявлення вторгнень. Запропоновано машинне навчання, як сучасний інструмент для аналізу мережевого трафіку. Представлена архітектура системи машинного навчання, яка використана в роботі для побудови IDS. В роботі застосовано ряд класифікаторів, такі як метод найближчих сусідів (K-Nearest Neighbors), дерева рішень (Decision Tree), випадковий ліс (Random Forest), SVM (Support Vector Machine), які продемонстрували високі показники точності на рівні 0.98-0.99. Найкращий результат досягається для методів «Decision Tree» та «Random Forest» на рівні 0.99, що є високим показником ефективності запропонованої моделі для виявлення мережевих вторгненьuk_UA
dc.language.isoukuk_UA
dc.subjectвиявлення мережевих вторгненьuk_UA
dc.subjectмашинне навчанняuk_UA
dc.subjectметоди виявлення вторгненьuk_UA
dc.titleПобудова та аналіз моделей виявлення мережевих вторгнень засобами машинного навчанняuk_UA
dc.typeMaster Thesisuk_UA
Розташовується у зібраннях:125 Кібербезпека та захист інформації (Безпека інформаційних і комунікаційних систем)

Файли цього матеріалу:
Файл Опис РозмірФормат 
М_125_Щербатюк_Палагін.pdf
  Restricted Access
3.18 MBAdobe PDFПереглянути/Відкрити    Запит копії


Усі матеріали в архіві електронних ресурсів захищено авторським правом, усі права збережено.

Extracted text
 
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ 
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
ФАКУЛЬТЕТ ЕЛЕКТРОННИХ ТЕХНОЛОГІЙ, 
АВТОТРАНСПОРТУ ТА МАШИНОБУДУВАННЯ 
КАФЕДРА РОБОТОТЕХНІЧНИХ І ТЕЛЕКОМУНІКАЦІЙНИХ СИСТЕМ  
ТА КІБЕРБЕЗПЕКИ 
 
 
До захисту допущено  
завідувач кафедри РТСК 
д.т.н., професор  
_______________ В.В. Палагін  
"_____" _____________ 2023 року 
 
Пояснювальна записка 
до дипломного роботи 
  магістра   
(освітньо-кваліфікаційний рівень) 
 
 
на тему Побудова та аналіз моделей виявлення мережевих вторгнень 
засобами машинного навчання 
 
Виконав: студент  2  курсу, групи    БІ-021    
Спеціальності         125 – «Кібербезпека та захист 
інформації» , 
(шифр і назва спеціальності) 
 
освітньої програми  «Безпека інформаційних і 
комунікаційних систем»  
                         (назва освітньої програми) 
   Щербатюк О.В.   
(прізвище та ініціали) 
Керівник        Палагін В.В.  
(прізвище та ініціали) 
Рецензент    
(прізвище та ініціали) 
 
 
Черкаси – 2023 року 
 
Форма № Н-9.01 
 
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОГІЧНИЙ УНІВЕРСИТЕТ 
Факультет електронних технологій, автотранспорту та машинобудування 
Кафедра  робототехнічних і телекомунікаційних систем та кібербезпеки  
Освітньо-кваліфікаційний рівень  магістр  
Спеціальність  125 – Кібербезпека  
Освітня програма  – Безпека інформаційних і комунікаційних систем  
 
 
ЗАТВЕРДЖУЮ 
Завідувач кафедри  В.В. Палагін 
“_____” ___________________ 2023 року 
 
ЗАВДАННЯ 
НА ВИПУСКНУ РОБОТУ СТУДЕНТУ 
 
Щербатюк Олександр Володимирович _ 
(прізвище, ім’я, по батькові) 
1. Тема проекту (роботи) Побудова та аналіз моделей виявлення мережевих 
вторгнень засобами машинного навчання 
керівник проекту (роботи)  Палагін Володимир Васильович  
(прізвище, ім’я, по батькові, науковий ступінь, вчене звання) 
затверджені наказом вищого навчального закладу від «10»  жовтня  2023 року № 271/04 
 
2. Термін здачі студентом закінченої роботи  «11»  грудня 2023 року_________ 
 
3. Вихідні дані до роботи: застосування моделей машинного навчання для виявлення 
мережевих вторгнень: метод найближчих сусідів (K-Nearest Neighbors), дерева рішень 
(Decision Tree), випадковий ліс (Random Forest), SVM (Support Vector Machine), 
використати підготовлений датасет з наявними мережевими вторгненнями, мова 
програмування – Python. 
 
4. Зміст розрахунково-пояснювальної записки (перелік питань, що їх належить розробити) 
Вступ; Аналіз мережевих вторгнень та ризиків в інформаційно-телекомунікаційних 
системах; Методи машинного навчання для виявлення мережевих вторгнень; Практична 
реалізація методів машинного навчання для виявлення мережевих вторгнень; Висновки; 
Список використаних джерел. 
 
5.  Перелік графічного матеріалу (з точним зазначенням обов’язкових креслень, плакатів):  
Схематичні представлення різновидів та класифікація мережевих вторгнень; 
Архітектури систем машинного навчання для виявлення мережевих вторгнень; 
Застосування класифікаторів машинного навчання для аналізу даних; Показники якості 
моделі машинного навчання; Попередня підготовка даних для побудови моделі ML; 
Дослідження моделей машинного навчання виявлення мережевих вторгнень; Скріншоти 
роботи програми; Мультимедійна презентація.  
.
6. Консультанти з проекту (роботи) із зазначенням розділів проекту, що їх 
стосуються 
Прізвище, ініціали та посада Підпис, дата 
Розділ консультанта завдання завдання 
видав прийняв 
    
    
    
 
7. Дата видачі завдання  04 вересня 2023 року  
  
 
 
 
КАЛЕНДАРНИЙ ПЛАН  
 
№ Назва етапів дипломного  Строк виконання 
з/п проекту (роботи)  етапів проекту Примітка  
(роботи) 
1. П ошук і аналіз інформації по заданій темі 01.09.2023-  
20.09.2023 
2. Н аписання 1-го розділу: аналіз мережевих 21.09.2023-  
вторгнень та ризиків в інформаційно- 10.10.2023 
телекомунікаційних системах 
3. Н аписання 2-го розділу: методи машинного 11.10.2023-  
навчання для виявлення мережевих вторгнень 21.10.2023 
4. Н аписання 3-го розділу: практична реалізація 22.10.2023-  
методів машинного навчання для виявлення 15.11.2023 
мережевих вторгнень 
5. Н аписання вступу і висновків, складання 16.11.2023-  
списку літератури 21.11.2023 
6. О формлення пояснювальної записки 22.11.2023-  
04.12.2023 
7. О формлення плакатів презентації 05.12.2023-  
10.12.2023 
 
 
 
 
Студент        Щербатюк О.В.  
 ( підпис ) (прізвище та ініціали) 
 
 
Керівник проекту (роботи)  Палагін В.В.  
 ( підпис ) (прізвище та ініціали) 
 
ЗМІСТ 
ВСТУП 5 
 
РОЗДІЛ 1. АНАЛІЗ МЕРЕЖЕВИХ ВТОРГНЕНЬ ТА РИЗИКІВ В 
7 
ІНФОРМАЦІЙНО-ТЕЛЕКОМУНІКАЦІЙНИХ СИСТЕМАХ 
1.1. Аналіз небезпек при реалізації мережевих вторгнень 7 
1.2. Аналіз та класифікація мережевих вторгнень 10 
1.3. Аналіз методів виявлення вторгнень в мережу 18 
1.4. Аналіз заходів системи IDS при виявленні мережевих вторгнень 24 
1.5. Висновки 28 
 
РОЗДІЛ 2. МЕТОДИ МАШИННОГО НАВЧАННЯ ДЛЯ ВИЯВЛЕННЯ 
30 
МЕРЕЖЕВИХ ВТОРГНЕНЬ 
2.1. Машинне навчання як сучасний інструмент для аналізу мережевого 30 
трафіку 
2.2. Побудова архітектури системи машинного навчання для виявлення 36 
мережевих вторгнень 
2.3. Застосування класифікаторів машинного навчання для аналізу 40 
даних  
2.4. Показники якості моделі машинного навчання 52 
2.5. Висновки 56 
 
РОЗДІЛ 3. ПРАКТИЧНА РЕАЛІЗАЦІЯ МЕТОДІВ МАШИННОГО 
59 
НАВЧАННЯ ДЛЯ ВИЯВЛЕННЯ МЕРЕЖЕВИХ ВТОРГНЕНЬ 
3.1 Попередня підготовка даних для побудови моделі 59 
3.2 Аналіз даних та інженерія ознак 68 
БІ021.023.22205.248 ПЗ 
Змн. Арк. № докум. Підпис Дата 
 Розроб. Щербатюк О.. Побудова та аналіз моделей Літ. Арк. Акрушів 
 Перевір. Палагін В. виявлення мережевих 3  
 Реценз.  вторгнень засобами 
 Н. Контр. Палагін В. машинного навчання ЧДТУ 
 
 Затверд.   
 
3.3 Дослідження моделей машинного навчання виявлення мережевих 72 
вторгнень 
3.4. Висновки 77 
  
ВИСНОВКИ 78 
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ 80 
  
 
Лист 
БІ021.023.22205.248 ПЗ 
 
Змін. Лист № докум. Підпис Дата 
 
ВСТУП 
З всебічним розвитком інформаціних технологій і широким 
застосуванням комп’ютерних мереж для передачі інформації зростають 
ризики викрадення або пошкодження даних через дії, які повязані з 
вторгненням в мережу.  
Вторгнення в мережу (network intrusions) — це будь-яка незаконна 
діяльність, яка здійснюється в цифровій мережі. Вторгнення в мережу часто 
спричиняють крадіжку цінних мережевих ресурсів і практично завжди 
ставлять під загрозу безпеку мережі та/або безпеку даних. Організації та їхні 
команди з кібербезпеки повинні мати повне розуміння того, як працюють 
мережеві вторгнення, і впроваджувати системи мережевих вторгнень, 
виявлення та реагування, які розроблені з урахуванням методів атак і методів 
приховування, щоб виявляти мережеві вторгнення та активно реагувати на 
них. 
Існує два типи систем, які можуть допомогти у запобіганні мережевим 
атакам: системи виявлення вторгнень і системи запобігання. 
Система виявлення вторгнень (IDS -  intrusion detection systems) — це 
пасивна система, яка виявляє шкідливу поведінку в мережі, тоді як система 
запобігання вторгненням не лише виявляє, але й блокує ту саму небезпечну 
активність.  
В кваліфікаційній роботі проведений аналіз мережевих вторгнень, їх 
класифікація та ризики, які можуть бути причинені такими активностями 
зловмисників. Розглянуті питання запобігання мережевим вторгненням, в 
тому числи їх виявлення на ранніх етапах за допомогою сучасних методів 
машинного навчання. 
Метою роботи є аналіз та протидія мережевим вторгненням на основі 
розробки моделей та методів машинного навчання для підвищення безпеки 
роботи в Інтернеті.  
Для досягнення поставленої мети в роботі розв’язані наступні задачі: 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  5 
 
● огляд і аналіз кіберзагроз для користувача при мережевих вторгненнях в 
комп’ютерну систему; 
● аналіз методів захисту та попередження від негативного впливу мережевих 
вторгнень; 
● аналіз загальних підходів застосування методів машинного навчання для 
задач виявлення мережевих вторгнень; 
● побудова моделей та методів машинного навчання та їх порівняльний 
аналіз для виявлення мережевих вторгнень. 
Об’єктом дослідження є системи виявлення мережевих вторгнень в 
інформаційно-телекомунікаційних системах. 
Предметом дослідження є моделі, методи та засоби машинного 
навчання для виявлення мережевих вторгнень. 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  6 
 
1. АНАЛІЗ МЕРЕЖЕВИХ ВТОРГНЕНЬ ТА РИЗИКІВ В 
ІНФОРМАЦІЙНО-ТЕЛЕКОМУНІКАЦІЙНИХ СИСТЕМАХ 
 
1.1. Аналіз небезпек при реалізації мережевих вторгнень 
Використання комп'ютерних мереж має величезну важливість і 
актуальність в сучасному світі з багатьма позитивними аспектами, зокрема це 
забезпечення зв'язку та комунікації між людьми на великих відстанях, 
полегшує спілкування, співпрацю та обмін даними як на особистому, так і на 
професійному рівнях. Комп'ютерні мережи надають можливість доступу до 
величезних обсягів інформації та ресурсів через Інтернет. Це робить 
надзвичайно простим отримання необхідних знань, ресурсів, розваг та 
послуг. Компанії використовують комп'ютерні мережи для автоматизації 
процесів, підвищення ефективності та розширення географії свого бізнесу. 
Це сприяє розвитку економіки та створює нові можливості для інновацій. 
Використання комп'ютерних мереж допомагає в освіті, забезпечуючи доступ 
до навчальних матеріалів, відкритих курсів та можливостей дистанційного 
навчання. 
Комп'ютерні мережі є важливим інструментом для проведення 
наукових досліджень, обміну ідеями та співпраці між вченими з усього світу. 
Комп'ютерні мережи використовуються для забезпечення національної та 
корпоративної безпеки, а також для моніторингу та управління критичною 
інфраструктурою. Комп'ютерні мережі дозволяють більш ефективно 
використовувати обчислювальну потужність, зберігати дані в хмарних 
системах та спільно використовувати ресурси. 
Таким чином, комп'ютерні мережи забезпечують зручність та 
доступність до інформації, роблять життя зручнішим і більш доступним, 
дозволяючи використовувати мобільні пристрої та спільні ресурси з будь-
якої точки світу. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  7 
 
У сучасному світі комп'ютерні мережи є невід'ємною частиною нашого 
повсякденного життя і бізнесу, забезпечуючи нам безліч можливостей та 
переваг. 
Разом з тим, можуть існувати зовнішні загрози, які спрямовані на 
комрометацію даних та нанесення матеріальних та моральних збитків як 
фізичним особам, так і юридичним компаніям. Такі загрози пов’язані з 
мережевими вторгненнями в комп'ютерні мережі. 
Вторгнення в мережу (Network Іntrusion) — це несанкціоноване 
проникнення в мережу підприємства або адресу окремого комп’ютера у 
призначеному домені. Вторгнення можуть бути пасивними (при яких 
проникнення здійснюється потай і без виявлення) або активними (під час 
яких відбувається зміна мережевих ресурсів). 
Реалізація мережевих вторгнень в комп'ютерні мережі може призвести 
до різноманітних проблем і загроз. Ось кілька основних проблем та ризиків, 
які можуть виникнути. 
Крадіжка інформації - одним із найбільш бажаних активів для 
зловмисників є особиста інформація споживачів, Їх 
адреси/місцезнаходження, номери телефонів, адреси електронної пошти та 
навіть платіжну інформацію можна використати за допомогою соціальної 
інженерії та інших засобів. Насправді корпорації, які мають доступ до камер 
і контактів, можуть становити набагато більший ризик для своїх 
споживачів. 
Пошкодження даних - величезна кількість запитів або незаконних 
запитів може призвести до пошкодження життєво важливих даних організації 
або клієнтів. Статус замовлень і робочих процесів може змінитися, а 
клієнтські платежі можуть затримуватися. Під час перевірок облікові книги 
та зіпсовані фінансові дані можуть загострити проблеми для бізнесу. 
Підприємствам важливо мати резервну копію даних. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  8 
 
Фінансові втрати для організації - щоб завоювати довіру своїх 
споживачів і зацікавлених сторін, компанії може знадобитися надавати 
винагороди та заохочення. Залежно від серйозності нападу, їм також може 
знадобитися координувати дії зі сторонніми організаціями, які 
оброблятимуть і пом’якшать атаку від їхнього імені. Також імовірно, що 
організація буде оподатковуватися залежно від кількості запитів, що лише 
погіршить ситуацію. Якщо напад відбувається під час сезону або під час 
розпродажі, можливі замовлення також втрачаються, що призводить до 
подальших фінансових втрат. Ремонт пошкодженого майна є додатковими 
витратами на відновлення. Відновлення інфраструктури та даних після 
мережевого вторгнення може призвести до значних фінансових витрат. 
Порушення роботи - щоб відновити роботу після нападу, організація 
може прийняти рішення призупинити операції та дії, доки не відновиться 
працездатність, що спричинить значну затримку в робочих процесах 
операцій. 
Втрата репутації - вразливості в мережі та вразливість до атак можуть 
позначитися на репутації компанії або організації. 
Втрата доступності послуг - DDoS-атаки та інші атаки можуть 
призвести до недоступності важливих послуг та систем. 
Порушення приватності - мережеві вторгнення можуть порушити 
приватність користувачів і спричинити витік конфіденційної інформації. 
Відповідальність та судові справи - за наслідками мережевих 
вторгнень можуть настати судові справи та визнання вини злочинцями. 
Загроза критичній інфраструктурі - кібератаки на критичну 
інфраструктуру (електростанції, водопостачання, транспорт тощо) можуть 
завдати серйозних збитків суспільству. 
Розголошення даних та шантаж - хакери можуть намагатися вимагати 
викуп або вимагати інші види винагороди в обмін на непублічну 
інформацію. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  9 
 
Реалізація мережевих вторгнень становить серйозну загрозу для 
безпеки даних, приватності та стабільності мережі. Тому важливо приділяти 
належну увагу кіберзахисту та приймати заходи для запобігання таким 
проблемам. 
 
1.2. Аналіз та класифікація мережевих вторгнень 
Мережеві вторгнення (Network Іntrusions) можуть приймати різні 
форми та включати в себе такі дії, як: 
- Фішинг - атака, при якій атакуючий намагається видати себе за довірену 
сторону, щоб отримати конфіденційну інформацію, таку як паролі або 
особисті дані; 
- Віруси та інші шкідливі програми - атакуючі можуть розповсюджувати 
віруси, черви, троянці та інші шкідливі програми для зараження 
комп'ютерів і отримання контролю над ними; 
- DDoS-атаки - атаки на відмову в обслуговуванні (DDoS) спрямовані на 
перенавантаження мережі або серверів, щоб зупинити їхню роботу або 
призвести до недоступності для користувачів; 
- Експлойти вразливостей - хакери використовують відомі або нові 
вразливості в програмному забезпеченні для проникнення в систему або 
мережу; 
- Викрадення даних - хакери можуть намагатися викрасти конфіденційну 
інформацію, таку як особисті дані, бізнес-секрети або фінансову 
інформацію. 
Звичайні поодинокі комп’ютерні віруси або хробаки є однією з 
найпростіших і найбільш руйнівних стратегій мережевого вторгнення. 
Хробаки, які часто надсилаються у вигляді вкладень електронної пошти або 
обміну миттєвими повідомленнями, використовують значну кількість 
мережевих ресурсів. Деякі хробаки призначені для отримання певних типів 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  10 
 
секретної інформації, наприклад фінансової інформації або персональних 
даних, пов’язаних із номером соціального страхування, а потім передачі цієї 
інформації зловмисникам, які очікують за межами мережі організації. 
Одним із відомих прикладів атак хробаків був хробак Моріс. Хробак 
Морріса був само відтворюваним комп'ютерним програмним забезпеченням 
(хробаком), створеним студентом Корнельського університету Робертом 
Таппаном Моррісом і розповсюдженим у 1988р. За словами Морріса, метою 
хробака було визначити масштаб ARPANET (мережа агентства передових 
дослідницьких проектів була першою глобальною мережею з комутацією 
пакетів із розподіленим керуванням і однією з перших комп’ютерних мереж, 
у якій реалізовано набір протоколів TCP/IP), попередника до «Інтернету» 
того часу, але він спричинив відмову в обслуговуванні (DoS) для приблизно 
10 відсотків із 60 000 машин, підключених до ARPANET у 1988 році. Окрім 
вгадування ненадійних паролів, хробак поширювався, атакуючи слабкі місця 
в UNIX, надсилаючи mail. 
Існують різні типи мережевих вторгнень. До поширених мережевих 
атак можна віднести наступні. 
 Асиметрична маршрутизація; 
 Атаки переповнення буфера; 
 Загальні сценарії інтерфейсу шлюзу; 
 Атаки, пов'язані з протоколом; 
 Трояни, Хробаки. 
Асиметрична маршрутизація (Asymmetric Routing). Мережеве 
вторгнення або асиметрична маршрутизація — це процес, при якому пакети 
даних, які надсилаються з однієї точки до іншої в комп'ютерній мережі, 
подорожують різними шляхами на вході та виході (рис.1.1).  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  11 
 
 
Рис.1.1. Приклад асиметричної маршрутизації при мережевому 
вторгненні. 
 
Зазвичай пакети даних, що відправляються з однієї точки до іншої, 
можуть подорожувати різними маршрутами через різні мережеві вузли. 
Асиметрична маршрутизація може стати результатом різних факторів, 
включаючи: 
системи маршрутизації в мережі - мережеві пристрої, такі як 
маршрутизатори, можуть приймати рішення про направлення пакетів на 
основі доступних маршрутів. Залежно від навантаження, шляху і стану 
мережі, пакети можуть вибирати різні шляхи на вході та виході; 
протоколи маршрутизації - протоколи маршрутизації, такі як OSPF, 
BGP, RIP, визначають спосіб, яким мережеві вузли взаємодіють та 
приймають рішення про вибір маршруту для пакетів даних. Ці протоколи 
можуть призводити до асиметричної маршрутизації, коли маршрути на вході 
та виході різні; 
завади та змінні у мережі - в мережах можуть виникати проблеми, такі 
як перевантаженість мережі, відмови обладнання або зміни у маршруті, які 
можуть призвести до асиметричної маршрутизації. 
Асиметрична маршрутизація може створити складнощі при аналізі 
трафіку, моніторингу мережі та вирішенню проблем в мережевому 
сполученні. Важливо розуміти, як цей процес працює та як впливає на 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  12 
 
функціонування мережі для ефективного керування маршрутизацією та 
забезпечення надійності мережі. 
Атаки переповнення буфера (Buffer Overflow Attacks) є одними з 
найпоширеніших та найнебезпечніших видів мережевих вторгнень. Вони 
полягають у тому, що атакуючий вводить у мережевий вузол (наприклад, 
сервер або програму) більше даних, ніж може вмістити буфер пам'яті, 
призначений для зберігання цих даних. Це може призвести до переповнення 
буфера, що дозволяє атакуючому виконувати шкідливий код або впливати на 
роботу системи. 
 
Рис.1.2. Приклад атаки типу «переповнення буферу» 
 
Ось основні риси атак переповнення буфера. 
Переповнення буфера пам'яті: атакуючий намагається записати більше 
даних у буфер пам'яті, ніж він може вмістити, внаслідок чого займає 
додатковий простір пам'яті, який може бути використаний для запуску 
шкідливого коду. 
Вразливість програми: ця атака використовується тоді, коли програма 
не перевіряє введені дані на відповідність розміру буфера, що може 
призвести до переповнення. 
Виконання шкідливого коду: після переповнення буфера атакуючий 
може виконувати шкідливий код, який він вставив у буфер, і таким чином 
впливати на роботу системи або отримувати несанкціонований доступ. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  13 
 
Порушення конфіденційності та цілісності даних: атаки переповнення 
буфера можуть призвести до доступу атакуючого до конфіденційних даних 
або зміни даних, що зберігаються в пам'яті. 
Ці атаки можуть бути важко виявити, оскільки вони можуть 
призводити до порушення роботи програм або системи та завдавати шкоду 
без їх виявлення. 
Захист від атак переповнення буфера включає в себе перевірку 
введених даних, обмеження доступу до системи та регулярні оновлення 
програм та операційних систем для закриття вразливостей. Також важливо 
використовувати програмні засоби та методи, які дозволяють виявляти 
спроби переповнення буфера та блокувати їх. 
Загальні сценарії інтерфейсу шлюзу (Common Gateway Interface 
Scripts) - це вид кібератаки, коли зловмисники намагаються незаконно 
отримати доступ до мережевого шлюзу або маршрутизатора і 
використовувати його для впливу на мережевий трафік, здебільшого 
незаконно (рис.1.3). 
 
Рис.1.3. Атака на мережевий шлюз 
 
Шлюз мережі (або маршрутизатор) - це пристрій, який з'єднує різні 
мережі і керує потоком даних між ними. Зазвичай він має інтерфейси для 
підключення до різних мереж, і зловмисники можуть намагатися атакувати ці 
інтерфейси або використовувати різні методи для отримання доступу до 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  14 
 
адміністративного інтерфейсу пристрою. Для цього можуть 
використовуватися такі загальні сценарії: 
Перебір паролів: атакувачі можуть використовувати програми для 
перебору паролів, спробуючи зламати адміністративний пароль на 
маршрутизаторі або шлюзі. 
Використання слабких налаштувань: якщо адміністратори не 
налаштували маршрутизатори належним чином і залишили слабкість у 
налаштуваннях, зловмисники можуть використовувати це як вектор 
вторгнення. 
Використання вразливостей ПЗ: якщо в маршрутизаторі або іншому 
мережевому пристрої знайдено вразливість в програмному забезпеченні, 
зловмисники можуть спробувати використовувати цю вразливість для 
здійснення атаки. 
Маніпуляція трафіком: зловмисники можуть намагатися впливати на 
мережевий трафік, змінюючи налаштування маршрутизатора чи 
використовуючи його для пересилання трафіку через зловмисний шлях. 
Захист від таких атак включає в себе ретельне налаштування 
маршрутизаторів, використання міцних паролів, регулярне оновлення 
програмного забезпечення маршрутизатора та моніторинг мережі на 
виявлення незвичних активностей. Також важливо обмежити доступ до 
адміністративного інтерфейсу лише авторизованим користувачам і 
використовувати шифрування для захисту комунікацій з маршрутизатором. 
Атаки, пов'язані з протоколом (Protocol-Specific Attacks) - це 
кібератаки, які спрямовані на використання вразливостей конкретних 
мережевих або комунікаційних протоколів для завдання шкоди або 
зловживання в мережевому середовищі. Кожен мережевий протокол має свої 
правила і специфікації для обміну даними, і зловмисники можуть 
використовувати ці правила для здійснення атак, які можуть бути 
унікальними для кожного протоколу (рис.1.4).  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  15 
 
 
Рис.1.4. Приклад атаки, пов’язаної з вразливостями протоколів 
 
Ось деякі приклади атак, пов'язаних з протоколом: 
Атаки на протокол HTTP. Наприклад, атаки на протокол HTTP можуть 
включати в себе атаки типу "Cross-Site Scripting" (XSS), "Cross-Site Request 
Forgery" (CSRF) або атаки на багатофакторну аутентифікацію, які 
використовують слабкі сторонні функції HTTP-протоколу. 
Атаки на протокол SMTP. Атаки на протокол Simple Mail Transfer 
Protocol (SMTP) можуть включати в себе спам-атаки, фішинг і атаки на 
адресну книгу, спрямовані на обман користувачів електронної пошти. 
Атаки на мережеві протоколи, такі як TCP/IP: Атаки можуть бути 
спрямовані на вразливості у стеку протоколів TCP/IP, такі як атаки на 
фрагментацію пакетів, атаки на переповнення буфера та інші атаки, які 
використовують слабкі місця в роботі протоколів мережі. 
Атаки на мережеві протоколи безпеки. Наприклад, атаки на протоколи 
безпеки, такі як SSL/TLS або IPsec, можуть спрямовуватися на зламання або 
знехтування захистом даних під час їх передачі через мережу. 
Атаки на VoIP-протоколи. В атаках на VoIP (Voice over Internet 
Protocol) можуть використовуватися для перехоплення голосового трафіку, 
атаки "denial of service" (DoS) або атаки, спрямовані на вивчення 
конференцій та приватних розмов. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  16 
 
Для захисту від атак, пов'язаних з протоколами, важливо ретельно 
оцінювати всі протоколи, які використовуються у вашій мережі, і виконувати 
необхідні заходи безпеки, такі як налаштування фільтрації пакетів, 
шифрування даних, оновлення протоколів і використання антивірусних та 
захисних рішень для виявлення та запобігання атакам на протоколи. 
 
Основні етапи вторгнення в мережу можна класифікувати наступним 
чином (рис.1.5). 
 
Рис.1.5. Основні етапи вторгнення в мережу 
1. Розвідка (Reconnaissance) - на початковому етапі вторгнення нападник 
намагається осягнути ціль. Ця спроба починається зі сканування, 
дослідження ключових осіб та адрес електронної пошти, пов’язаних із 
ціллю, пошуку матеріалів із відкритих джерел про компанію чи уряд та 
запису всього, що виявляється в мережі. Хоча ті, хто захищають 
інформацію, можуть знати про технології нападу, зловмисники знають 
про це теж і активно використовують. Вони також витрачають час на 
дослідження функцій безпеки пристроїв і виявлення дірок, які можна 
використовувати. 
2. Початкове використання (Initial Exploitation) - як тільки розвідка 
вразливостей  завершена, зловмисники визначають вікно можливостей 
для початкового використання. Зазвичай вважається, що більшість 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  17 
 
хакерів використовують уразливості нульового дня, однак вони також 
можуть бути наполегливими та терплячими до своїх дій. Інколи відомо, 
що зловмисники були там за роки до нападу. 
3. Підтримування доступу до мережі (Establish Persistence) - після 
першого доступу до мережі хакери використовують багато методів, 
щоб залишитися в ній, включаючи підвищення своїх привілеїв і 
отримання доступу до скриптів. 
4. Переміщуватися вбік (Move Laterally) - після того, як ці сценарії 
будуть реалізовані зловмисниками, вони можуть входити в мережу 
непомітно. 
5. Інструменти встановлення (Exploit) - коли хакери отримають повне 
розуміння системи та засобів, за допомогою яких вони можуть 
створити вразливість, буде розгорнуто зловмисне програмне 
забезпечення. Щоб завдати ще більшої шкоди системі, вони спочатку 
встановлюють на комп’ютер інструменти, які виконують численні 
сценарії. 
6. Залишатися непомітними - коли різноманітні сценарії щодо 
порушення безпеки мережі встановлені, зловмисники будуть 
намагатися залишатися непомітними і продовжувати досягати своїх 
цілей. 
1.3. Аналіз методів виявлення вторгнень в мережу 
Методи виявлення вторгнень в мережу (Detect Network Intrusion - IDS) 
залежать від специфіки функціонування мережі і повинні її  контролювати на 
предмет підозрілих і зловмисних дій, а також помилкових тривог. Основні 
підходи IDS відображені на рис.1.6. і можуть бути зведені до наступного. 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  18 
 
 
Рис.1.6. Класифікація основних підходів IDS 
 
Існують різні методи та підходи для виявлення вторгнень, які можна 
поділити на дві основні категорії: сигнатурні (signature-based) та аномальні 
(anomaly-based).  
Сигнатурний аналіз. 
Сигнатура - це конкретний зразок даних або послідовність байтів, які 
відомі як характерні для певної атаки або зловмисного ПЗ. Сигнатури 
створюються на основі відомих атак та їх характеристик. Якщо знайдений 
мережевий трафік або активність відповідає сигнатурі відомої атаки, то це 
вважається потенційним вторгненням. 
Сигнатурний метод виявлення вторгнень - це метод, який базується на 
використанні сигнатур або відомих шаблонів для ідентифікації конкретних 
атак або зловмисних дій в мережі. Він заснований на ідентифікації певних 
паттернів, які є характерними для певних видів атак.  
Щоб визначити атаку, система виявлення вторгнень (IDS) порівнює 
поточний мережевий трафік чи активність з великою кількістю сигнатур. 
Якщо знаходиться співпадіння з будь-якою з сигнатур, то ця активність 
вважається потенційною атакою (рис.1.7). 
 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  19 
 
 
Рис.1.7. Реалізація сигнатурного методу виявлення мережевих 
вторгнень. 
 
IDS використовують базу даних сигнатур, яка містить набір відомих 
сигнатур для різних атак. Ця база даних оновлюється регулярно, оскільки 
нові атаки постійно розробляються. 
Сигнатури можуть включати в себе різні види визначень, включаючи 
сигнатури для атак на рівні мережі (наприклад, сигнатури для атак DoS або 
SYN-флуду), аплікаційні сигнатури (для атак на рівні застосунків, такі як 
SQL-ін'єкція або XSS) і сигнатури для атак на рівні системи (наприклад, 
відомі вразливості операційних систем). 
Сигнатурний метод виявлення вторгнень досить точний і має невелику 
кількість помилок "хибних спрацьовувань" (false positives). Він ефективний у 
виявленні відомих атак і може бути легко впроваджений. 
Разом з тим, сигнатурний метод не ефективний при виявленні нових 
атак, оскільки він базується на відомих сигнатурах. Він також неспроможний 
виявити атаки, які змінюють свої сигнатури або використовують нові 
техніки. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  20 
 
Оновлення бази даних сигнатур - важлива складова сигнатурного 
методу, оскільки нові сигнатури повинні додаватися для виявлення нових 
атак. 
Сигнатурний метод є важливим інструментом для виявлення відомих 
атак та захисту мережі. Однак він повинен комбінуватися з іншими 
методами, такими як аномальний аналіз, для покриття всього спектру 
потенційних загроз. 
 
Аномальні методи. 
Аномальний метод виявлення вторгнень (IDS) - це метод, який 
базується на аналізі змін у звичному, "нормальному" стані мережі або 
системи для виявлення незвичних або аномальних активностей, які можуть 
бути індикаторами потенційних вторгнень або загроз безпеці. Основна ідея 
полягає в тому, що вкрай незвичні або невластиві нормі події можуть бути 
ознаками атаки або зловмисної активності.  
Аномальні системи виявлення вторгнень створюють нормальну модель 
мережі або системи і виявляють відхилення від цієї моделі. Ненормальні або 
аномальні активності вважаються потенційними вторгненнями. 
Статистичні методи та методи машинного навчання використовуються 
для виявлення аномалій. Вони навчаються на базі здорового стану мережі і 
виявляють відхилення від цього стану (рис.1.8). 
В аномальному методі IDS система спочатку навчається розпізнавати 
нормальну або допустиму активність в мережі або системі. Це означає 
вивчення звичайних паттернів та параметрів роботи, які характерні для 
нормального стану. 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  21 
 
 
Рис.1.8. Реалізація методу виявлення аномалій для систем IDS. 
 
Після того, як система "навчилася" нормальному стану, вона починає 
моніторити активність в реальному часі та порівнювати її з навченими 
зразками. Якщо виявляються відхилення від норми, це може бути 
індикатором аномалій або вторгнень. 
Якщо система виявляє аномалії, вона ajhve’ сповіщення адміністратору 
або запускає певні заходи безпеки для запобігання або реагування на 
потенційну загрозу. 
Аномальні методи IDS використовують різні методи для аналізу даних, 
включаючи статистичні підходи, машинне навчання, штучний інтелект, 
кластеризацію даних та інші техніки. 
Важливо визначити, які характеристики даних використовуються для 
виявлення аномалій. Це можуть бути параметри мережі, системні параметри, 
часові ряди тощо. 
Однією з основних проблем аномальних методів IDS є хибні 
спрацьовування (false positives), коли нормальна активність помилково 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  22 
 
вважається аномалією. Важливо налаштовувати параметри системи IDS, щоб 
зменшити кількість хибних спрацьовувань. 
IDS може бути використаний для попередження атак або для виявлення 
їх у ранній стадії, щоб вчасно реагувати і запобігти можливим наслідкам. 
Аномальні методи IDS є корисними для виявлення нових атак та 
невідомих загроз, оскільки вони не вимагають використання відомих 
сигнатур атак. Однак вони вимагають великого обсягу даних для навчання та 
налагодження, і вони можуть бути вразливими до розробки атак, які 
маскуються під нормальну активність. 
 
Гібридні методи. 
Гібридний метод виявлення вторгнень (IDS) - це підхід, який поєднує в 
собі різні методи і техніки для збільшення точності та ефективності 
виявлення вторгнень в мережі або системі. Головна ідея гібридного методу 
полягає в тому, щоб використовувати переваги різних підходів та зменшити 
їхні недоліки. Ось більше інформації про гібридний метод IDS: 
Гібридний метод IDS використовує різні підходи до виявлення 
вторгнень, такі як сигнатурні методи, аномальні методи, машинне навчання 
та статистика. Ці методи можуть бути поєднані для більш точного та 
комплексного виявлення загроз (рис.1.9). 
 
Рис.1.9. Сполучення сигнатурного та аномального методу в системі 
IDS.  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  23 
 
Одним з викликів гібридного методу є зменшення кількості хибних 
спрацьовувань (false positives), тобто помилкового виявлення нормальних 
активностей як аномалій. Гібридні системи можуть використовувати 
інформацію з різних джерел для зменшення цього ризику. 
Гібридні системи IDS можуть бути більш ефективними виявленням 
нових атак та невідомих загроз, оскільки вони можуть використовувати 
аномальні методи для виявлення атак, які не входять до бази даних сигнатур. 
Гібридні системи можуть поєднувати результати різних методів та 
аналізувати їх для прийняття рішення. Наприклад, якщо сигнатурний метод 
та аномальний метод надають суперечливі результати для конкретного 
випадку, гібридна система може використовувати механізм узгодження для 
прийняття остаточного рішення. 
Гібридні методи можуть відстежувати зміни в атаках та адаптуватися 
до нових загроз. Це може включати в себе оновлення бази даних сигнатур, 
навчання аномальних моделей та інші заходи безпеки. 
Гібридні системи IDS можуть взаємодіяти з іншими системами 
безпеки, такими як брандмауерами, антивірусами та системами управління 
інцидентами, для кращого захисту мережі або системи. 
Гібридний метод IDS дозволяє покращити ефективність виявлення 
вторгнень та зменшити ризик хибних спрацьовувань.  
 
1.4. Аналіз заходів системи IDS при виявленні мережевих 
вторгнень 
Реакція на вторгнення. Після виявлення потенційного вторгнення 
система IDS може вжити заходів для запобігання або обмеження атаки. 
Реакція на виявлення вторгнення (IDS) - це важливий аспект системи 
виявлення вторгнень, що полягає в вжитті заходів після виявлення 
потенційного вторгнення або загрози для безпеки мережі або системи. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  24 
 
Реакція на виявлення вторгнення включає в себе різні заходи та 
стратегії для обмеження або усунення загрози.  
Однією з перших реакцій на виявлення вторгнення є сповіщення 
адміністратора мережі або системи. Це може включати в себе надсилання 
повідомлень електронною поштою, SMS-повідомлень, або інших засобів 
сповіщення для того, щоб адміністратор вжив необхідних заходів. 
Після виявлення вторгнення важливо вжити заходів для зупинки 
подальших атак. Це може включати в себе блокування IP-адрес атакуючих, 
обмеження доступу до ресурсів, що були атаковані, або зміну паролів та 
ключів доступу. 
Реакція на виявлення вторгнення також може включати в себе 
підвищення рівня захисту системи. Це може включати в себе оновлення 
програмного забезпечення, виправлення вразливостей, зміну налаштувань 
безпеки та інші заходи. 
Реакція на виявлення вторгнення може включати в себе підвищення 
рівня моніторингу системи або мережі, щоб виявляти аномалії та атаки в 
реальному часі. 
Для серйозних вторгнень або інцидентів інформаційна безпека може 
включати в себе створення планів реагування на інциденти (IRP - incident 
response plans), які визначають послідовність дій для управління інцидентом, 
реагування та відновлення після вторгнення (рис.1.10). 
 
Рис.1.10. Реалізація IRP в системі IDS.  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  25 
 
В деяких випадках реакція на виявлення вторгнення може включати в 
себе заходи для захисту конфіденційних даних та відновлення пошкоджених 
або втрачених даних. 
IDS може включати в себе інтеграцію з системами спостереження за 
ворожими діями (honeypots, honeynets), які приваблюють атаки і допомагають 
аналізувати такі атаки. 
Реакція на виявлення вторгнення - це важливий крок у захисті мереж та 
систем від атак і загроз. Ефективна реакція дозволяє запобігти подальшим 
атакам та мінімізувати можливі наслідки вторгнення. 
Моніторинг та ведення журналу. Моніторинг та ведення журналу є 
важливими складовими системи виявлення вторгнень (IDS). Ці процеси 
допомагають системі виявлення вторгнень ефективно спостерігати за 
мережею чи системою, а також реєструвати і аналізувати події для виявлення 
потенційних аномалій та атак.  
Моніторинг включає в себе постійний нагляд за активністю в мережі 
або системі. IDS спостерігає за пакетами мережевого трафіку, системними 
подіями та іншими діями, що відбуваються в системі. 
IDS збирає дані про активність, такі як інформація про пакети 
мережевого трафіку, системні журнали, реєстрацію входу/виходу 
користувачів, зміни конфігурації системи тощо. 
Зібрані дані аналізуються системою IDS, де вони порівнюються з 
відомими сигнатурами атак або шаблонами аномалій. Якщо виявляються 
незвичайні або підозрілі події, система IDS видає сповіщення адміністратору. 
Інформація про всі виявлені аномалії, підозрілі активності та атаки 
реєструється в журналі подій. Журнал подій - це важливий інструмент для 
аналізу та дослідження інцидентів у майбутньому. 
В системі IDS проводиться аналіз зібраних даних для визначення, чи є 
вони аномаліями, атаками або нормальною активністю. Події 
класифікуються за типами та рівнями загрози. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  26 
 
Якщо система IDS виявляє підозрілі події або атаки, вона видає 
сповіщення адміністратору через різні канали зв'язку, такі як електронна 
пошта, SMS, месенджери або інші засоби. 
Журнал подій зберігається на системі IDS протягом певного часу або 
передається на централізований сервер для подальшого аналізу та зберігання. 
Адміністратори або інженери безпеки можуть аналізувати журнал 
подій, щоб встановити причину виявлених атак або аномалій, вжити заходів 
для їх усунення та розробити стратегії для подальшого підвищення безпеки. 
Моніторинг та ведення журналу є ключовими складовими системи IDS, 
оскільки вони дозволяють вчасно виявляти та реагувати на потенційні 
загрози для безпеки мережі та системи. 
Важливо відзначити, що жоден метод виявлення вторгнень не є 
абсолютно надійним. Найкращий підхід - використовувати комбінацію 
методів та постійно оновлювати систему IDS для виявлення нових загроз. 
 Узагальнені підходи до реалізації системи IDS зображені на рис.1.11, 
де наведені такі практики, як застосування: 
 Обробка трафіку мережі (Network Traffic Processing); 
 Cистеми Профілактики (Prevention System); 
 Класифікація загроз (Threat Classification); 
 Метод Сигнатур (Signature-Based); 
 Метод Аномалій (anomaly-based); 
 Повідомлення про загрози (Threat Reporting). 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  27 
 
 
Рис.1.11. Основні етапи реалізації системи ISD 
 
Таким чином, проаналізовані основні мережеві вторгнення, загрози та 
ризики, які вони можуть спричинити. В зв’язку з цим проведений аналіз 
найпоширеніших методів виявлення вторгнень і побудова систем IDS. 
 
1.5. Висновки 
Дослідження мережевих вторгнень і розробка досконалих систем 
виявлення вторгнень (IDS) є надзвичайно актуальними і важливими 
завданнями в сфері інформаційної безпеки у звязку зі зростаючою кількістю 
різноманітних загроз. Зловмисники розвивають нові методи і тактики для 
обходу захисту, тому дослідження мережевих вторгнень і IDS важливі для 
виявлення цих загроз. 
Необхідно зауважити, що мережеві атаки стають все більш 
вдосконаленими та складними, що ускладнює побудову сучасних систем 
IDS, які повинні виявляти не тільки відомі атаки, але й нові, невідомі загрози, 
включаючи атаки "нуль-дня" і атаки, що маскуються під нормальну 
активність. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  28 
 
Обсяги даних, які обробляються в мережах та системах, є величезними, 
що суттєво ускладнює завдання виявлення вторгнень і потребує розробки 
ефективних методів аналізу великих обсягів даних. 
Використання методів машинного навчання та штучного інтелекту стає 
все більш розповсюдженим для виявлення аномалій і атак. Дослідження в цій 
галузі сприяє розвитку більш ефективних IDS. Тому в даній кваліфікаційні 
роботі в подальшому буде приділена увага саме цьому напряму для побудови 
якісних та ефективних систем IDS. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  29 
 
2. МЕТОДИ МАШИННОГО НАВЧАННЯ ДЛЯ ВИЯВЛЕННЯ 
МЕРЕЖЕВИХ ВТОРГНЕНЬ 
 
2.1. Машинне навчання як сучасний інструмент для аналізу мережевого 
трафіку 
Вторгнення в мережу є зростаючою загрозою з потенційно серйозними 
наслідками, які можуть завдати шкоди мережевій інфраструктурі та 
цифровим/інтелектуальним активам у кіберпросторі різними способами. 
Підхід, який найчастіше використовується для боротьби з мережевим 
вторгненням, — це розробка систем виявлення атак за допомогою машинного 
навчання та методів інтелектуального аналізу даних. Ці системи можуть 
ідентифікувати та відключати зловмисний мережевий трафік. 
Кібербезпеці може сприяти набір методів, які захищають кіберпростір і 
забезпечують цілісність, конфіденційність і доступність мереж, програм і 
даних. Методи кібербезпеки також мають потенціал для захисту від будь-
яких типів атак і відновлення після них. Більше пристроїв, а саме пристроїв 
Інтернету речей (IoT), підключено до кіберпростору, і кібербезпека стала 
серйозною проблемою для урядів, компаній, інших організацій та окремих 
осіб. Сфера кібербезпеки широка, і її можна згрупувати в п’ять областей: 
критична інфраструктура, мережева безпека, хмарна безпека, безпека 
програм та безпека Інтернету речей (рис.2.1). 
 
Рис.2.1. Сфера діяльності кібербезпеки  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  30 
 
Системи виявлення мережевих вторгнень (Network intrusion detection 
systems - NIDS) намагаються виявити несанкціоновану, незаконну та 
аномальну поведінку виключно на основі мережевого трафіку, щоб 
підтримувати прийняття рішень у мережевих запобіжних діях 
адміністраторами мережі (рис.2.2). 
 
Рис.2.2. Застосування системи NIDS для захисту мережі 
 
Традиційні системи виявлення мережевих вторгнень в основному 
розробляються з використанням доступних баз знань, які складаються зі 
специфічних шаблонів або рядків, які відповідають уже відомим мережевим 
поведінкам, тобто нормальному та ненормальному трафіку. Ці шаблони 
використовуються для перевірки відстежуваного мережевого трафіку з 
метою виявлення можливих загроз. Як правило, бази знань таких систем 
визначаються на основі експертних знань, а шаблони необхідно оновлювати, 
щоб забезпечити охоплення нових загроз. Тому ефективність виявлення 
традиційних мережевих систем виявлення вторгнень сильно залежить від 
якості бази знань.  
Мережевий трафік (Network Traffic) - це обмін даними між різними 
пристроями або системами в мережі, такі як Інтернет, локальна мережа 
(LAN), бездротова мережа (Wi-Fi), чи інші комунікаційні канали. Мережевий 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  31 
 
трафік включає в себе передачу даних у формі пакетів (packets), які 
переміщуються через мережу від одного пристрою до іншого та включає в 
себе дані користувача, сигналізаційний трафік, мережеві керуючі 
повідомлення, трафік мережевого протоколу. Мережевий трафік є важливим 
поняттям для адміністраторів мереж і кібербезпеки, оскільки він дозволяє 
вимірювати та аналізувати роботу мережі, виявляти аномалії, забезпечувати 
безпеку та оптимізувати продуктивність мережі. Аналіз мережевого трафіку 
допомагає виявляти потенційні проблеми та атаки в мережі, а також 
забезпечує ефективне функціонування системи. 
З теоретичної точки зору, системи виявлення мережевих вторгнень в 
основному мають на меті класифікувати відстежуваний мережевий трафік як 
«легітимний/нормальний» або «зловмисний/аномальний».  
Тому підходи до машинного навчання підходять для вирішення таких 
проблем і останнім часом вони широко застосовуються, щоб допомогти 
краще керувати проблемами виявлення вторгнень у мережу. 
Машинне навчання (Machine learning  - ML) — це сфера штучного 
інтелекту (АІ), яка відноситься до набору методів, які дають комп’ютерним 
системам здатність «навчатися». Як правило, алгоритми машинного 
навчання, такі як штучні нейронні мережі, вчаться на вибірках даних, щоб 
класифікувати або знаходити шаблони в даних, і дозволяють комп’ютерним 
системам робити прогнози щодо нових або невидимих екземплярів даних на 
основі виявлених шаблонів. Залежно від способу навчання машинне 
навчання можна далі згрупувати в такі основні категорії: контрольоване 
навчання (Supervised Learning), неконтрольоване навчання (Unsupervised 
Learning), напівкотрольоване/автоматичне навчання (Semi-Supervised 
Learning), навачання з підкріпленням (Reinforcement Learning) -  рис.2.3. 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  32 
 
 
 
Рис.2.3. Класифікація машинного навчання 
 
Контрольоване машинне навчання – це тип машинного навчання, коли 
алгоритм навчається на основі позначених навчальних даних, щоб робити 
прогнози на невидимих даних. Алгоритм «контролюється» позначеними 
даними, які діють як вчитель, забезпечуючи алгоритму чітке розуміння 
зв’язків між вхідними характеристиками та відповідними вихідними 
змінними. Проблема класифікації є типовою проблемою навчання під 
наглядом (контрольоване машинне навчання), яка зазвичай використовується 
для вирішення проблем NIDS.  
У контрольованому навчанні мета полягає в тому, щоб вивчити 
функцію, яка відображає вхідні дані та виходи на основі позначених 
навчальних даних (Labeled Data). Алгоритм використовує цю функцію, щоб 
прогнозувати нові, невідомі дані (Test Data). Потім точність прогнозів 
порівнюється з істинними мітками (Labels), і алгоритм коригується на основі 
помилки, щоб покращити свої прогнози з часом (рис.2.4). 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  33 
 
 
Рис.2.4. Ілюстрація роботи підходу «Supervised Learning» в машинному 
навчанні 
 
Навчання під наглядом «Supervised Learning» використовується в 
широкому діапазоні програм, таких як класифікація зображень, 
розпізнавання мовлення та обробка природної мови тощо. Якість результатів, 
отриманих під час навчання під контролем, залежить від якості та кількості 
позначених навчальних даних, а також від вибору використовуваних 
алгоритмів. Наведемо перелік деяких алгоритмів, які поширені в своєму 
практичному застосуванні: 
 k-найближчі сусіди (k-Nearest Neighbors); 
 Лінійна регресія (Linear Regression) 
 Логістична регресія (Logistic Regression) 
 Машини підтримки векторів (Support Vector Machines - SVM) 
 Дерева рішень (Decision Trees) 
 Випадкові ліси (Random Forests) 
 Наївний Байєс (Naïve Bayes) та ін. 
 
Метою неконтрольованого навчання є знайти відображення, яке здатне 
описати приховану структуру з непозначених зразків даних (Unlabelled Data). 
Це потужний інструмент для ідентифікації структур, коли надаються зразки 
даних без міток. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  34 
 
 
Рис.2.5. Ілюстрація роботи підходу «Unsupervised Learning» в 
машинному навчанні 
 
Завдяки послабленню вимог до міток навчальних даних у 
неконтрольованому навчанні, різні підходи до неконтрольованого навчання 
також широко застосовуються для проблем NIDS, наприклад NIDS на основі 
кластеризації та NIDS на основі самоорганізації на основі карти. Такі підходи 
дають можливість виявити аномальні дані мережевого трафіку та 
ідентифікувати їх як мережеве вторгнення. 
На основі вхідних даних (Training), в даному випадку різноманітних 
ознак мережевого трафіку (хі), будується модель машинного навчання 
(Learning Algoritm). Така побудова базується на навчанні системи і отриманні 
мінімальних прогнозованих відхилень від відомих за певними 
критеріальними ознаками. За результатами навчання такої моделі 
відбувається її перевірка якості або валідація (Validation) та застосування для 
реалізації прогнозу (Prediction) вхідних даних та класифікації їх на 
нормальний трафік чи аномальний (yі), коли є ймовірність стверджувати про 
мережеве вторгнення (рис.2.6). 
На основі представлених основних підходів реалізації машинного 
навчання розглянемо її архітектуру для виявлення мережевих вторгнень. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  35 
 
 
 
Рис.2.6. Реалізація процесу навчання моделі та її застосування для прогнозу 
 
2.2. Побудова архітектури системи машинного навчання для 
виявлення мережевих вторгнень 
Архітектура системи виявлення вторгнень у мережу засобами 
машинного навчання та реалізації основних етапів обробки даних 
представлена на рис.2.7.  
 
Рис.2.7. Структура системи машинного навчання для виявлення 
мережевих вторгнень. 
 
Згідно представленої структури для побудови моделі виявлення 
вторгнень вхідними даними є розмічений датасет (Training Dataset), який 
підлягає попередній обробці. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  36 
 
Попередня обробка даних є важливою процедурою для забезпечення 
якості та надійності результатів аналізу даних і роботи моделей машинного 
навчання. Добре оброблені дані допомагають покращити точність та 
інтерпретованість моделей, а також зменшити можливість виникнення 
помилок під час аналізу. Наведемо декілька основних етапів, які відносяться 
до такої обробки. 
Збір даних. Це перший крок, де данні збираються з різних джерел, 
таких як бази даних, файли, сенсори, API тощо. 
Очищення даних (Data Cleaning).  Під час цього етапу видаляються або 
коригуються неправильні, відсутні або непотрібні дані (Missing value). Це 
включає в себе обробку відсутніх значень, видалення дублікатів та 
виправлення помилок у даних. Реалізується різноманітними методами 
аналізу даних. 
Видалення зайвих ознак (Feature Selection). Якщо датасет містить багато 
ознак, які не є важливими для аналізу або моделювання, вони можуть бути 
видалені, щоб спростити аналіз та зменшити обчислювальні витрати. 
Реалізується різноманітними методами аналізу даних, в тому числі 
кореляційними підходами аналізу даних. 
Кодування категоріальних ознак (Encoding Categorical Features). 
Категоріальні ознаки (такі наприклад, як "чоловік" або "жінка") 
перетворюються в числовий формат, щоб моделі машинного навчання могли 
їх розуміти на відміну стрінгових, так званих, компонент. Реалізується 
спеціальними кодерами ознак, зокрема One-hot Encoding. 
Масштабування ознак (Feature Scaling). Ознаки можуть бути 
масштабовані, щоб забезпечити однаковий діапазон значень і покращити 
швидкість навчання моделей. Реалізується спеціальними методами, які 
відносять до так званих скалерів (масштабувачів), зокрема MinMaxScaler, 
StandartScaler та ін. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  37 
 
Якщо при попередньому аналізі даних з’ясовується, що вони суттєво 
розбалансовані, то виконується їх балансування за рахунок створення 
синтетичних даних. Реалізується методами KGSMOTE (рис.2.8.) 
 
Рис.2.8. Приклад доповнення даних штучно синтезованим для 
балансування датасета. 
 
KGSMOTE (Kernelized Geometric SMOTE) - це розширення методу 
SMOTE (Synthetic Minority Over-sampling Technique) для балансування класів 
в завданнях класифікації даних, особливо в сфері машинного навчання. 
Метод KGSMOTE спрямований на покращення навчання моделей в умовах 
дисбалансу класів, коли один клас має набагато менше прикладів, ніж інший. 
Основна ідея SMOTE (Synthetic Minority Over-sampling Technique) 
полягає в генерації синтетичних прикладів для меншого класу, щоб 
збалансувати його з більшим класом. Процес генерації синтетичних 
прикладів полягає у виборі випадкового прикладу з меншого класу та 
створенні нового прикладу на основі інтерполяції між цим вибраним 
прикладом та його найближчими сусідами. Однак SMOTE має деякі 
обмеження, зокрема в обробці даних, які не є лінійно роздільними. 
KGSMOTE вдосконалює SMOTE шляхом використання ядрових 
методів (kernel methods) для генерації синтетичних прикладів. Використання 
ядрових методів дозволяє KGSMOTE працювати з не лінійно роздільними 
даними і створювати синтетичні приклади, які краще враховують 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  38 
 
неоднорідність даних. Це допомагає покращити ефективність моделей 
машинного навчання в умовах дисбалансу класів. 
KGSMOTE є потужним інструментом для боротьби з проблемою 
незбалансованих даних у завданнях класифікації та покращення точності 
моделей. Він може бути особливо корисним у випадках, коли класи не 
лінійно роздільні і важко збалансувати за допомогою традиційних методів. 
Генерація нових ознак (Feature Engineering).  Іноді можна створити нові 
ознаки на основі наявних даних, що може покращити ефективність моделі. 
Розбиття на навчальний та тестовий набори (Train-Test Split): Дані 
можуть бути розділені на навчальний набір для навчання моделі і тестовий 
набір для оцінки її ефективності. На рис.2.6 та рис.2.7 це виглядає як 
виділення окремої бази даних у вигляді Testing Dataset.  
Нормалізація (Normalization). Це може бути додатковим процесом 
перетворення даних, щоб зробити їх нормально розподіленими. Таке 
перетворення допомагає моделям працювати краще, а відповідно, підвищує 
їх точність. 
Видалення викидів (Outlier Detection). Викиди, або незвичайні значення, 
можуть бути видалені або враховані в аналізі. В даному випадку ця операція 
проводитися над даними не буде, тому що як раз викиди, як аномальна 
поведінка системи під час мережевого вторгнення, і потрібно виявити 
запропонованою моделлю.  
Збереження обробленого датасета (Data Saving): Після завершення 
обробки даних, оброблений датасет може бути збережений для подальшого 
використання  відповідним класифікатором. 
За результатами отриманої навчаної моделі та оцінювання якості та 
тестовій вибірці, її можна використовувати для подальших досліджень і 
реалізації прогнозів стосовно виявлення мережевих вторгнень. 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  39 
 
Технології машинного навчання та інтелектуального аналізу даних 
створюють явну або неявну модель, яка дає змогу класифікувати 
проаналізовані шаблони. Загалом, методи машинного навчання здатні 
вирішувати три загальні проблеми: класифікація, регресія та кластеризація. 
Виявлення мережевого вторгнення можна розглядати як типову проблему 
класифікації. Для реалізації такого процесу над даними розглянемо 
потенційні класифікатори, які використаємо для побудови моделей та 
проведення досліджень їх якості 
 
2.3. Застосування класифікаторів машинного навчання для аналізу 
даних  
Для вирішення проблем виявлення вторгнень у мережу 
використовують різні підходи як контрольованого, так і неконтрольованого 
машинного навчання. Наприклад, для виявлення неавторизованого доступу 
як задачу класифікації можна використовувати різні класифікатори, такі як k-
найближчий сусід (k-NN), машина опорних векторів (SVM), дерево рішень, 
наївна мережа Байєса, випадкові ліси, штучні нейронні мережі та ін.(рис.2.9). 
 
Рис.2.9. Найбільш поширені класифікатори в машинному навчанні 
 
З різних причин, таких як незбалансованість навчальних наборів, 
особливість застосування різноманітних класифікаторів дуже важко 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  40 
 
розробити єдиний підхід до машинного навчання, який надавав би 
заздалегідь високий результат якості прогнозу. Тому аналіз застосування 
різноманітних підходів, їх комбінація може надати найкращий результат, 
який потрібно дослідити. 
 Розглянемо принци функціонування декількох класифікаторів, які 
будуть застосовуватися у роботі для побудови моделі прогнозування 
мережевих вторгнень та наведемо їх показники ефективності/якості. 
Класифікатори в машинному навчанні - це алгоритми, які 
використовуються для призначення кожному вхідному зразку одного з 
певних класів на основі навчальних даних. Якщо простір двомірний (дві 
змінні), то таку умовну класифікацію можна представити на рис.2.10.а, або 
для більш складного варіанту – на рис.2.10.б. різними методами. Для 
багатомірних випадків, як в даному випадку для мережевого вторгнення, 
візуальне представлення розбиття на два класи не є можливим. 
 
 
 
 
а) б) 
Рис.2.10. Візуальне представлення класифікації вибірки на два класи. 
 
Класифікація - це завдання машинного навчання, де модель навчається 
розпізнавати, до якого класу належить кожен зразок даних на основі його 
характеристик або ознак. Для реалізації даного процесу потрібен відповідний 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  41 
 
класифікатор. Розглянемо декілька класифікаторів та принципи їх роботи для 
майбутнього застосування для виявлення мережевих вторгнень. 
 
Класифікатор K-найближчих сусідів. 
K-найближчих сусідів (K-Nearest Neighbors або KNN) є одним із 
методів класифікації в машинному навчанні. Основна ідея KNN полягає в 
тому, що він класифікує новий зразок даних, приглядаючись до k 
найближчих зразків даних з навчального набору, і призначає йому клас, який 
є найпоширенішим серед цих k сусідів. 
 
Рис.2.11. Принцип роботи алгоритму KNN 
 
Алгоритм KNN — популярний метод машинного навчання, який 
використовується для завдань класифікації та регресії. Він спирається на 
ідею, що подібні точки даних, як правило, мають подібні позначки або 
значення. 
Під час фази навчання алгоритм KNN зберігає весь набір навчальних 
даних як еталон. Роблячи прогнози, він обчислює відстань між точкою 
вхідних даних і всіма навчальними прикладами, використовуючи вибрану 
метрику відстані, наприклад евклідову відстань. 
Далі алгоритм визначає K найближчих сусідів до точки вхідних даних 
на основі їх відстані. У разі класифікації алгоритм призначає найпоширенішу 
мітку класу серед K сусідів як прогнозовану мітку для точки вхідних даних. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  42 
 
Для регресії він обчислює середнє або середньозважене цільових значень K 
сусідів, щоб передбачити значення для точки вхідних даних. 
Розглянемо простий випадок, щоб зрозуміти цей алгоритм. Нижче на 
рис.2.12. показано розташування червоних кіл (R) і зелених квадратів (G). 
 
Рис.2.12. Ілюстрація алгоритму KNN на прикладі найближчого сусіда 
 
Припустимо, що маємо намір дізнатися про клас блакитної зірки (B), до 
якого вона найймовірніше належить – до класу (R) чи (G). «Блакитна зірка» 
(B) може бути або (R), або (G ) і нічим іншим. Значення «K» в алгоритмі 
KNN — це найближчий сусід, у якого ми хочемо взяти голос. Скажімо, K = 3. 
Отже, тепер ми створимо коло з центром (B) настільки великим, щоб 
охоплювати лише три точки даних на площині (рис.2.13). 
 
Рис.2.13. Вибір найближчих сусідів при застосуванні алгоритму KNN 
 
Три найближчі точки до (B) – це (R). Отже, з достатньою впевненістю 
можна сказати, що БС має належати до класу (R). Тут вибір став очевидним, 
оскільки всі три голоси від найближчого сусіда дісталися РК. Вибір 
параметра K є дуже важливим у цьому алгоритмі.  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  43 
 
Основні кроки KNN включають в себе наступні етапи. 
Визначення гіперпараметра k - це кількість найближчих сусідів, яку ви 
хочете використовувати для класифікації нового зразка даних. 
Визначення міри відстані - це спосіб вимірювання відстані між 
зразками даних, зазвичай використовується евклідова відстань. 
Пошук k найближчих сусідів нового зразка даних, використовуючи 
визначену міру відстані. 
Підрахунок кількості зразків кожного класу серед k найближчих 
сусідів. 
Призначення новому зразку даних класу, який є найпоширенішим серед 
k найближчих сусідів. 
KNN - це досить простий алгоритм класифікації, який 
використовується в різних галузях, таких як розпізнавання образів, 
рекомендаційні системи, біоінформатика, і багато інших. Однак важливо 
правильно вибирати значення k та метрику відстані, а також враховувати 
специфіку даних та їх розподіл. На рис.2.14 видно, як в залежності від вибору 
К змінюється поверхня розподілу вибірок на різні класи. Для маленьких 
значень К може відбутися таке негативне явище при навчанні моделі, як 
перенавчання. 
 
 
Рис.2.14. Формування поверхні розподілу даних на класи в залежності 
від вибору гіперпараметра К в алгоритмі KNN. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  44 
 
Перенавчання (overfitting) є однією із ключових проблем у машинному 
навчанні (ML) і відноситься до ситуації, коли модель навчалася на 
навчальних даних дуже добре, але виявляється неефективною при 
передбаченні нових, раніше не бачених даних. Це відбувається через те, що 
модель занадто добре адаптувалася до особливостей навчальних даних, 
включаючи шум і випадкові варіації, замість того, щоб виділяти загальні 
закономірності. Візуально результат перенавчання продемонстрований на 
рис.2.15., коли спостерігаються малі помилки класифікації на тренувальній 
вибірці і великі помилки на тестовій.  
 
Рис.2.15. Візуалізація процесу перенавчання 
 
Результат перенавчання залежить від підбору гіперпараметрів. В 
даному випадку, для  алгоритму KNN це залежить від параметра k, чим 
менше його значення, тим складніша модель класифікації, що відображено на 
рис.2.16. 
 
Рис.2.16. Залежність помилки моделі від її складності 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  45 
 
Основні ознаки перенавчання включають: 
 висока точність на навчальних даних, але низька точність на тестових 
або валідаційних даних; 
 великі різниці між результатами на навчальних і тестових даних; 
 надмірно складні моделі, які мають багато параметрів. 
Щоб уникнути перенавчання при побудові моделей в ML можна 
використовувати наступні стратегії. 
1) Поділ даних: розділення набору даних на навчальні, валідаційні і 
тестові піднабори. Використання навчальних даних для навчання 
моделі, валідаційних даних для налаштування гіперпараметрів і 
тестових даних для оцінки загальної продуктивності моделі. 
2) Спрощення моделі: використання моделі з меншою кількістю 
параметрів, що допомагає уникнути надмірної складності. 
3) Регуляризація: використання методів регуляризації, такі як L1 або L2 
регуляризація для обмеження ваг моделі і попередження перенавчання. 
4) Збільшення обсягу даних: збільшення розміру навчального набору 
даних може допомогти уникнути перенавчання. 
5) Використання перехресної перевірки: використання крос-валідації для 
кращого оцінювання продуктивності моделі і гіперпараметрів. 
 
Перенавчання - це важливий аспект машинного навчання, і його 
попередження допомагає створити моделі, які генералізуються краще на 
нових даних. 
Розглянемо ще один алгоритм, який буде застосований для аналізу 
даних – RandomForestClassifier. 
 
Класифікатор «Дерево рішень» (Decision Tree). 
Decision Tree (дерево рішень) - це модель машинного навчання, яка 
використовується для прийняття рішень на основі аналізу даних. Вона 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  46 
 
представляє собою структуру, подібну до дерева, де кожен вузол 
розгалужується на підгілки, які представляють можливі варіанти рішень. 
Кожен вузол дерева представляє питання або умову, і відповідь на це 
питання визначає, до якої гілки дерева потрібно перейти. У листках дерева 
розміщуються прогнозовані значення (рис.2.17). 
 
Рис.2.17. Ілюстрація роботи алгоритму Decision Tree по розділенню 
варіантів рішень. 
 
Decision Tree працює наступним чином. 
Розподілення даних: починаючи з кореня дерева, модель обирає 
функцію (параметр), яка найкраще розділяє навчальний набір даних на дві 
або більше групи. Вибір кращої функції базується на критеріях, таких як 
ентропія або коефіцієнт Джині. 
Розгалуження: після вибору функції, дерево рішень розгалужується на 
декілька гілок на основі можливих значень цієї функції. Кожна гілка веде до 
нового вузла дерева або листка. 
Повторення. процес розподілення і розгалуження повторюється для 
кожної гілки, поки вся навчальна вибірка не буде розділена на окремі групи 
або досягне попередньо встановленої глибини дерева. 
Листки дерева. в кінцевому результаті кожна гілка дерева закінчується 
листком, який містить прогнозоване значення або клас. Наприклад, у випадку 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  47 
 
задачі класифікації це може бути прогнозований клас, а у випадку задачі 
регресії - прогнозоване числове значення. 
Критерії зупинки. можливі різні критерії зупинки, які дозволяють 
припинити процес побудови дерева, такі як досягнення певної глибини, 
мінімізація помилки на навчальних даних, чи інші. 
Decision Tree використовується в багатьох галузях, включаючи 
класифікацію, регресію і відбір ознак. Важливо слідкувати за правильним 
налаштуванням гіперпараметрів та уникати перенавчання, особливо при 
великих деревах. Крім того, можливість візуалізації дерева допомагає 
зрозуміти, як саме модель робить прогнози на основі навчених правил. 
 
Класифікатор «Випадковий ліс». 
RandomForestClassifier - це один з алгоритмів машинного навчання, 
який відноситься до сімейства ансамблевих методів, і використовується для 
завдань класифікації в машинному навчанні. Він є частиною бібліотеки 
scikit-learn у Python і базується на ідеї випадкового лісу (Random Forest). 
Випадковий ліс - це ансамбль дерев рішень, який використовується для 
поліпшення точності та зменшення перенавчання рис.2.18. 
 
Рис.2.18. Візуалізація роботи алгоритму Random Forest для формування 
набору підмножин. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  48 
 
 
Основні принципи роботи RandomForestClassifier. 
Випадковий вибір підвибірок: RandomForestClassifier вибирає 
випадковим чином підвибірки (підмножини) навчальних даних з 
поверненням, тобто декілька разів вибирає випадкові підмножини даних. Це 
допомагає зменшити кореляцію між окремими деревами і робить модель 
більш стійкою до перенавчання. 
Побудова дерев рішень: для кожної підвибірки даних будується дерево 
рішень, де кожен вузол розглядає лише обмежену підмножину ознак. Це 
допомагає уникнути перенавчання і забезпечує більшу різноманітність 
моделей. 
Голосування: кожне дерево рішень у RandomForestClassifier дає свою 
власну класифікацію для вхідних даних. Остаточне рішення приймається 
шляхом голосування (у випадку класифікації) або середнього (у випадку 
регресії) результатів всіх дерев. 
Переваги RandomForestClassifier включають високу точність, стійкість 
до перенавчання, здатність обробки великих наборів даних та здатність 
визначення важливості ознак. Він часто використовується для класифікації 
завдань, де необхідно визначити клас об'єкта на основі його характеристик. 
До гіперпараметрів даного методу можна віднести наступні основні 
характеристики. 
1. "Max_depth": цей гіперпараметр представляє максимальний рівень 
(глибину) кожного дерева моделі випадкового лісу. Більш глибоке 
дерево показує хороші результати і збирає багато інформації про 
навчальні дані, але погано піддається узагальнення для тестових даних. 
За замовчуванням у бібліотеці Scikit-Learn це значення встановлено в 
"None", що означає, що такі дерева залишені для повного розширення. 
2. "Max_features": максимальна кількість ознак, які для моделі 
випадкового лісу дозволяється випробувати при кожному розбитті. За 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  49 
 
замовчуванням у Scikit-Learn це значення встановлюється рівним 
квадратному кореню із загальної кількості змінних у наборі даних. 
3. "N_estimators": кількість дерев рішень у лісі. За замовчуванням у Scikit-
Learn кількість оцінювачів (estimators) дорівнює 10. 
4. "Min_samples_leaf": мінімальна кількість зразків, необхідна для 
знаходження в листі кожного дерева. У Scikit-Learn значення за 
промовчанням дорівнює 1. 
5. "Min_samples_split": мінімальна кількість зразків, потрібна для 
розбиття внутрішнього вузла кожного дерева. У Scikit-Learn значення 
за промовчанням дорівнює 2. 
Можна створити словник із безлічі можливих значень для всіх 
вищенаведених гіперпараметрів, який називається простором 
гіперпараметрів, і будемо перебирати їх, щоб знайти найкращу комбінацію 
аргументів. 
В програмному коді за результатами отримання найкращих показників 
маємо: 
params={'dt_max_depth': 20, 'dt_max_features': 9}. 
 
 Класифікатор SVM (Support Vector Machine). 
 Розглянемо ще один із класичних і відомих класифікаторів – SVM. 
SVM (Support Vector Machine) - це метод машинного навчання, 
призначений для вирішення завдань класифікації і регресії. Він широко 
використовується для роботи з даними і може працювати з даними, які мають 
багатовимірні простори ознак. Основна ідея методу полягає в тому, щоб 
знайти гіперплощину (в багатовимірному просторі) або набір гіперплощин, 
які найкращим чином розділяють класи даних (рис.2.19). 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  50 
 
 
Рис.2.19. Ілюстрація роботи методу SVM по формуванню гіперплощин 
розділення класів. 
 
Основні кроки роботи методу SVM наступні. 
Вибір гіперплощини: метою SVM є знаходження гіперплощини, яка 
найкращим чином розділяє дані на два класи (рис.2.19). Гіперплощина - це 
(n-1)-вимірна площина в n-вимірному просторі ознак, де n - це кількість 
ознак у навчальних даних. Вибір гіперплощини полягає в пошуку такої 
площини, яка максимізує відстань (маржу) між двома найближчими 
елементами обох класів. Ці найближчі елементи називаються опорними 
векторами. 
Задача оптимізації: SVM вирішує задачу оптимізації, де основною 
метою є максимізація маржі, тобто відстані між гіперплощиною і 
найближчими точками обох класів. Одночасно, SVM також мінімізує 
помилки класифікації на навчальних даних. Ця задача може бути вирішена за 
допомогою математичної оптимізації. 
Робота з ядрами: SVM може використовувати ядра (kernel functions), 
щоб перетворити дані в вищу мірність, де вони можуть бути легше розділені 
гіперплощиною. Популярні ядра включають лінійні, поліноміальні і 
гауссівські (RBF) ядра. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  51 
 
Регуляризація: SVM також використовує регуляризацію, щоб уникнути 
перенавчання і покращити загальну роботу моделі. Це досягається шляхом 
контролю параметрів, таких як "С" (коефіцієнт регуляризації), який впливає 
на те, наскільки модель допускає помилки на навчальних даних. 
Класифікація: після навчання SVM може використовуватися для 
класифікації нових даних. Новий приклад подається на вхід моделі, і вона 
визначає, до якого класу він належить на основі розташування відносно 
гіперплощини. 
SVM є потужним методом класифікації та регресії, і він знаходить 
застосування в багатьох галузях, включаючи комп'ютерне бачення, 
біоінформатику, фінанси та інші. 
Існує багато інших методів в машинному навчанні для реалізації задачі 
класифікації, розгляд яких обмежується об’ємом даної кваліфікаційної 
роботи. 
 
2.4. Показники якості моделі машинного навчання 
У машинному навчанні і оцінці ефективності моделей існує низка 
різних показників, які використовуються для визначення, наскільки добре 
модель працює на навчальних і тестових даних. Вибір конкретних показників 
ефективності залежить від типу завдання (класифікація, регресія і т. д.) і 
характеристик даних. Ось деякі з найпоширеніших показників ефективності 
моделей для задач класифікації: 
точність (Accuracy): відсоток правильних класифікацій; 
точність (Precision): відсоток об'єктів, правильно визначених як 
позитивні серед усіх об'єктів, визначених як позитивні; 
повнота (Recall): відсоток позитивних об'єктів, які були правильно 
визначені моделлю серед усіх позитивних об'єктів; 
F1-міра (F1-Score): гармонічне середнє між точністю та повнотою, що 
допомагає збалансувати обидва показники; 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  52 
 
AUC-ROC: площа під кривою ROC, яка визначає якість роботи моделі 
відносно різних порогів відсікання. 
Графічне та математичне трактування цих термінів можна представити 
на рис.2.16., де TP = істинні позитивні результати, TN = істинні негативні 
результати, FP = хибні позитивні результати та FN = хибні негативні 
результати 
 
Рис.2.16. Основні показники ефективності в машинному навчанні 
 
Accuracy (точність) - це одна з основних метрик, яка використовується 
для оцінки ефективності класифікаційних моделей в машинному навчанні. 
Вона вимірює відсоток правильних прогнозів моделі серед всіх прогнозів, і 
розраховується за допомогою формули: 
Accuracy=Кількість правильних прогнозів /Загальна кількість 
прогнозів. 
Для розрахунку точності спершу визначаються наступні значення: 
Кількість правильних прогнозів - це кількість об'єктів, які були 
правильно класифіковані моделлю. Це означає, що передбачені класи 
співпадають з фактичними класами. 
Загальна кількість прогнозів - це загальна кількість об'єктів, для яких 
модель зробила класифікаційні прогнози. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  53 
 
Після цього значення вставляються в формулу для обчислення 
точності. 
Наприклад, якщо у вас є класифікаційна модель, яка була випробувана 
на 100 об'єктах, і вона правильно класифікувала 85 з них, то точність моделі 
буде: 
Accuracy=85/100=0.85. 
Отже, точність в цьому випадку складає 85%. Ця метрика дуже 
важлива для загальної оцінки продуктивності класифікаційної моделі, але 
варто також розглядати інші метрики, особливо у випадках дисбалансу класів 
або коли специфіка завдання вимагає більш докладних оцінок, таких як 
точність (precision), повнота (recall) і F1-міра. 
Precision (точність) - це метрика, яка використовується для оцінки 
якості класифікації моделі в машинному навчанні, зокрема в завданнях 
класифікації. Вона вимірює відсоток об'єктів, які були правильно визначені 
як позитивні серед усіх об'єктів, які модель визначила як позитивні. Точність 
вказує на те, наскільки "точні" чи "чисті" класифікації позитивних об'єктів 
моделі. 
Формула для розрахунку точності (precision) така: 
Precision=Кількість правильно визначених позитивних об’єктів/Загаль
на кількість об’єктів, визначених як позитивні. 
Наприклад, при класифікації 100 об'єктів модель визначила 90 об'єктів 
як позитивні. З цих 90 позитивних об'єктів 85 були правильно визначені 
моделлю. Тоді точність буде: 
Precision=85/90=0.944. 
Отже, точність в цьому випадку складає 94.4%. Висока точність 
означає, що модель робить мало помилок, коли визначає позитивні об'єкти. 
Однак важливо пам'ятати, що точність має бути розглядана разом з іншими 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  54 
 
метриками, такими як повнота (recall), особливо у випадках дисбалансу 
класів або коли важливі якість прогнозів для позитивних об'єктів. 
Recall (повнота) - це метрика, яка використовується для оцінки якості 
класифікації моделі в машинному навчанні, зокрема в задачах класифікації. 
Вона вимірює відсоток позитивних об'єктів, які були правильно визначені 
моделлю серед усіх фактичних позитивних об'єктів. Повнота допомагає 
визначити, наскільки "комплексним" є розпізнавання позитивних об'єктів 
моделлю, іншими словами, наскільки багато з них було "піймано." 
Формула для розрахунку повноти (recall) така: 
Recall=Кількість правильно визначених позитивних об’єктів/Загальна к
ількість фактичних позитивних об’єктів 
Наприклад, при класифікації 100 об'єктів модель визначила 90 об'єктів 
як позитивні. Загальна кількість фактичних позитивних об'єктів у цьому 
наборі даних становить 95. З цих 95 фактичних позитивних об'єктів модель 
визначила лише 85. Тоді повнота буде: 
Recall=85/95=0.89. 
Отже, повнота в цьому випадку складає 89.5%. Висока повнота вказує 
на те, що модель добре "піймає" позитивні об'єкти. Однак, також важливо 
розглядати повноту разом з іншими метриками, такими як точність 
(precision). 
Графічне уявлення про наведені характеристики можна візуалізувати 
на прикладі рис.2.17. 
F1-міра (F1-Score) - це гармонічний середній показник, який комбінує 
точність (precision) і повноту (recall) для оцінки якості класифікації моделі в 
машинному навчанні, зокрема в завданнях класифікації. F1-міра допомагає 
знайти баланс між точністю і повнотою, що є важливим в тих випадках, коли 
обидва ці аспекти є важливими для задачі, і є потреба в компромісі між ними. 
Формула для розрахунку F1-міри така: 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  55 
 
f1=(2×Precision×Recall) / (Precision+Recall) 
 
Рис.2.17. Ілюстрація основних показників ефективності в машинному 
навчанні 
 
Ця формула об'єднує точність і повноту в один числовий показник, 
який відображає якість класифікації моделі. Важливо відзначити, що F1-міра 
набуває великого значення, коли як точність, так і повнота високі, і 
наближається до нуля, коли хоча б одна з цих метрик низька. Отже, вона 
сприймає в рахунок баланс між точністю і повнотою. 
 
2.5. Висновки 
Машинне навчання відіграє важливу роль в задачах виявлення 
мережевих вторгнень (Intrusion Detection System, IDS). Задача IDS полягає в 
тому, щоб виявляти незвичайну або агресивну діяльність у комп'ютерних 
мережах або системах і вчасно реагувати на потенційні загрози для безпеки. 
Машинне навчання допомагає автоматизувати процес виявлення таких загроз 
і робить його більш ефективним та точним.  
Побудова моделі машинного навчання на основі вибору ознак для 
задачі виявлення мережевих вторгнень (IDS) - це важливий процес, оскільки 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  56 
 
від вибору і обробки ознак може залежати якість та ефективність моделі. В 
даному розділі проаналізовані основні етапи побудови моделі машинного 
навчання, які можна формалізувати і узагальнити наступним чином. 
Збір і підготовка даних: перший крок, які включає в себе інформацію 
про мережевий трафік і журнали подій. Ці дані потрібно обробити та 
підготувати для аналізу. Це може включати в себе фільтрацію, нормалізацію, 
видалення аномальних записів та інше. 
Вибір ознак (feature selection): важливим етапом є вибір найбільш 
інформативних ознак. Можна використовувати методи відбору ознак, які 
допомагають виділити ті атрибути, які найкраще розділяють нормальну 
активність від аномалій. Для цього можуть використовуватися статистичні 
методи, важливість ознак (наприклад, з допомогою Random Forest або 
XGBoost). 
Інженерія ознак (feature engineering): інколи може бути корисно 
створити нові ознаки або поєднувати існуючі, щоб покращити можливості 
моделі. Наприклад, можна створити ознаки, які відображають часові 
залежності, частоту використання конкретних портів, інтервали між 
запитами, тощо. 
Розбиття набору даних на навчальний та тестовий: дані розбивають 
на навчальний набір і тестовий набір, щоб перевірити модель на відкладених 
даних і оцінити її ефективність. 
Вибір алгоритму машинного навчання: обирають алгоритм машинного 
навчання, який найкраще підходить для задачі IDS. Це може бути KNN, 
дерево рішень, випадковий ліс, нейронна мережа, SVM та  інші. 
Навчання та налаштування моделі: після вибору алгоритму модель 
навчається на навчальних даних. Після цього проводиться налаштування 
гіперпараметрів для покращення результатів. 
Оцінка моделі: після навчання модель тестується на тестовому наборі 
для оцінки її ефективності та точності. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  57 
 
Результати та вдосконалення: результати оцінки використовуються 
для подальшого вдосконалення моделі. Це може включати в себе зміну 
вибору ознак, налаштування параметрів або вибір іншого алгоритму 
машинного навчання. 
Впровадження і моніторинг: у разі успішного вдосконалення моделі 
вона може бути впроваджена в робоче середовище для моніторингу мережі 
та виявлення потенційних вторгнень в реальному часі. 
Цей процес є ітеративним, і вимагає багато експериментів і аналізу 
результатів для досягнення найкращих результатів у виявленні мережевих 
вторгнень. 
На основі проведеного аналізу і визначення основних етапів побудови 
моделі машинного навчання для виявлення мережевих вторгнень, в 
наступному розділі буде наведена практична реалізація таких підходів і 
надана порівняльна характеристика отриманих результатів. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  58 
 
3.ПРАКТИЧНА РЕАЛІЗАЦІЯ МЕТОДІВ МАШИННОГО НАВЧАННЯ 
ДЛЯ ВИЯВЛЕННЯ МЕРЕЖЕВИХ ВТОРГНЕНЬ 
 
3.1. Попередня підготовка даних для побудови моделі 
Попередня підготовка даних для датасета виявлення мережевих 
вторгнень (Intrusion Detection Dataset) є ключовою для побудови ефективних 
моделей машинного навчання. Цей тип даних часто має свої особливості та 
вимоги. Попередня підготовка даних складається з наступних етапів. 
Збір даних. Перший крок - це збір вхідних даних. Це можуть бути дані з 
різних джерел, такі як бази даних, журнали, сенсори, файли тощо. 
Очищення даних. Дані можуть містити помилки, відсутні значення, 
аномалії та інші недоліки, які потрібно виправити. Цей етап включає в себе 
видалення дублікатів, заповнення пропущених даних, виправлення помилок 
тощо. 
Видалення непотрібних ознак. Деякі ознаки можуть бути непотрібними 
або неінформативними для моделі. Вони можуть бути вилучені, щоб 
скоротити розмірність даних та покращити швидкість та ефективність 
моделі. 
Нормалізація і шкалювання. Деякі алгоритми машинного навчання 
чутливі до масштабу ознак. Тому може бути необхідним нормалізувати або 
шкалювати дані, щоб забезпечити їхню однорідність. 
Кодування категоріальних ознак. Якщо дані містять категоріальні 
ознаки (наприклад, типи продуктів або країни), їх потрібно кодувати у 
числовий формат, наприклад, за допомогою кодування з однією hot encoding 
або Label Encoding. 
Розділення на навчальний та тестовий набір. Дані зазвичай розділяють 
на навчальний набір (для навчання моделі) та тестовий набір (для оцінки 
моделі). 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  59 
 
Балансування класів. У випадках, коли класи в задачі класифікації не 
збалансовані (один клас має значно більше прикладів, ніж інший), може бути 
необхідним застосовувати методи балансування, такі як oversampling або 
undersampling, щоб покращити роботу моделі. 
Інші операції. До попередньої підготовки можуть входити такі операції, 
як видалення викидів, обрізка даних (наприклад, залишення лише певного 
періоду часу), створення нових ознак, обробка текстових даних і таке інше. 
Правильна попередня підготовка даних допомагає забезпечити, що 
модель машинного навчання буде працювати належним чином і навчатися з 
корисної інформації. Поганий або некоректний підхід до цього етапу може 
призвести до неправильних результатів та погіршення продуктивності 
моделі. 
Наведемо виконання цих основних етапів на прикладі роботи з 
конкретним датасетов і подальшою обробкою даних і формування моделі для 
машинного навчання.  
Збір даних. 
Було надано набір даних для перевірки, який складається з широкого 
спектру вторгнень, змодельованих у військовому мережевому середовищі 
згідно інформації, наведеної для проведення різноманітних змагань на 
популярній і добре відомій платформі Kaggle. Цей набір даних створений для 
середовища, в якому відображені вихідних даних TCP/IP мережі шляхом 
імітації типової локальної військової мережі. Локальна мережа була 
зосереджена як реальне середовище та була піддана кількома мережевеми 
атаками.  
З’єднання — це послідовність TCP-пакетів, що починається й 
закінчується в певний проміжок часу, між якими дані переходять до вихідної 
IP-адреси та з неї на цільову IP-адресу згідно з певним чітко визначеним 
протоколом.  
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  60 
 
TCP (Transmission Control Protocol) - це один з ключових протоколів на 
рівні транспортного рівня в моделі OSI (Open Systems Interconnection). В 
рамках цієї моделі TCP відповідає за передачу даних між двома пристроями 
(наприклад, комп'ютерами) через мережу. TCP забезпечує надійну та 
послідовну передачу даних і використовує поняття пакетів, які відомі як 
"TCP-пакети" або "TCP-сегменти." 
TCP-пакети (або сегменти) містять інформацію, необхідну для надійної 
комунікації через мережу. Основні елементи TCP-пакета включають: портові 
номери (програми або служби), послідовний номер TCP-пакета, поле для 
підтвердження, поле даних та ін. 
TCP-пакети використовуються для забезпечення надійної та 
послідовної доставки даних в мережах. Вони дозволяють контролювати і 
керувати комунікацією між пристроями та забезпечують можливість 
відновлення даних у випадку втрати чи помилки в передачі. 
Крім того, кожне з’єднання позначається як звичайне або як атака з 
одним конкретним типом атаки. Кожен запис підключення складається 
приблизно з 100 байт. Для кожного з’єднання TCP/IP сформована 41 
кількісна та якісна характеристика, яка отримана зі звичайних даних і даних 
атаки (3 якісних і 38 кількісних характеристик). За результатами 
спостереження за ознаками пакетів формується дві змінні категорії: 
• нормальний мережевий трафік; аномальний мережевий трафік. 
 Таким чином, для подальшого аналізу і обробки даних буде обрано 
датасет, який містить 25192 полів записів з 41 якісною та кількісною 
ознакою. Датасет містить два окремих набора даних: для навчання та 
тестування – «Train_data.csv», «Test_data.csv» (рис.3.1) . Ще одна додаткова 
ознака «class» характеризує мережевий трафік як нормальний чи аномальний. 
Серед ознак такі, як «protocol_type», «service», «flag», «src_bytes» та ін., 
аналіз яких і дасть змогу побудувати майбутню модель машинного навчання 
(рис.3.2). 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  61 
 
 
Рис.3.1. Представлення бази даних для проведення аналізу 
 
 
Рис.3.2. Перелік ознак датасета для проведення їх аналізу 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  62 
 
Очищення даних. 
Представлений датасет не потребує додаткових маніпуляцій стосовно 
його очищення від пустих чи пропущених записів, що слідує з виконання 
додаткової функції по його аналізу. Так само відсутні дублікати записів, які 
потрібно було б так само видалити (рис.3.3).  
 
Рис.3.3. Аналіз пропущених значень та наявних дублікатів в датасеті. 
 
 Датасет, який розглядається, є відносно збалансований, оскільки має 
приблизно однакову кількість нормальних (13449) і аномальних міток 
(11743) ознаки «class», і відповідно, не потребує додаткових маніпуляцій 
стосовно його балансування (рис.3.4).  
 
Рис.3.4. Аналіз кількості елементів колонки «class» 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  63 
 
Кодування категоріальних ознак. 
Кодування категоріальних ознак є важливою операцією в машинному 
навчанні. Багато алгоритмів машинного навчання, такі як лінійна регресія 
або дерева рішень, працюють лише з числовими даними. Кодування 
категоріальних ознак дозволяє використовувати ці алгоритми на даних з 
категоріями. Окрім того, застосування кодування категоріальних ознак 
підвищує якість моделі, оскільки це дозволяє моделі знаходити взаємозв'язки 
та закономірності в даних, які були б недоступні при використанні 
некодованих категорій. 
Існує кілька методів кодування категоріальних ознак, такі як кодування 
з однією hot encoding, Label Encoding, кількісне кодування і інші. Вибір 
методу залежить від типу категоріальної ознаки, особливостей задачі та 
вибору алгоритму машинного навчання. Кодування допомагає зробити 
категоріальні дані придатними для аналізу та моделювання, що варто 
розглядати в контексті кожного конкретного завдання. Наприклад, ознака 
«protocol_type» містить 3 унікальних значення, «service» - 66, «flag» - 11 
(рис.3.5). 
 
Рис.3.5. Аналіз кількості та переліку категоріальних ознак. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  64 
 
На рис.3.6. наведено візуальне представлення розподілу категоріальних 
ознак для «protocol_type», «service» та  «flag». 
 
 
 
 
Рис.3.6. Діаграми співвідношення категоріальних ознак. 
 
На рис.3.7. наведений результат застосування методу Label Encoding,  
де категоріальні ознаки («protocol type», «service» та ін.) перетворилися на 
відповідні чисельні значення. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  65 
 
 
Рис.3.7. Результат виконання кодування категоріальних ознак 
 
Нормалізація і шкалювання. 
Нормалізація і шкалювання даних в машинному навчанні важливі з 
міркувань обробки даних та підвищення ефективності моделей. Це 
викликано потребою в стабільності алгоритмів обробки даних, щоб вони 
були менш чутливими до масштабування даних. Без них деякі алгоритми 
можуть недооцінювати функції через різницю в масштабах рис.3.8. 
 
Рис.3.8. Результат нормалізації і масштабування даних. 
Окрім цього, відбувається прискорення збіжності, нормалізація даних 
може покращити збіжність багатьох оптимізаційних алгоритмів, зокрема 
градієнтного спуску. Це може допомогти швидше навчати моделі. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  66 
 
Також відбувається зменшення впливу викидів. Шкалювання та 
нормалізація допомагають зменшити вплив викидів або надмірних значень в 
даних, оскільки вони стають менш помітними в нормалізованому масштабі. 
За допомогою нормалізації можна легше порівнювати ознаки, оскільки 
всі вони будуть в одному масштабі. Це особливо важливо для алгоритмів, які 
враховують відстані або схожість між ознаками, таких як k-найближчі сусіди. 
Таким чином, нормалізація і шкалювання грають важливу роль у 
підготовці даних для моделей машинного навчання та можуть значно 
покращити результати та стабільність моделей. Такі процедури 
продемонстровано на рис.3.9. 
 
Рис.3.9. Реалізація процедури шкалювання 
 
 Таким чином, на основі проведеної підготовки даних можна 
приступати до наступного етапу, який пов'язаний з інженерією ознак і 
виділенням найсуттєвіших для зменшення розмірності моделі. 
 
 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  67 
 
3.2. Аналіз даних та інженерія ознак  
Інженерія ознак (Feature Engineering) - це процес створення, вибору або 
трансформації ознак з даних з метою покращення в якості моделі машинного 
навчання. Це один із найважливіших аспектів успішної розробки моделей.  
Інженерія ознак включає в себе наступні завдання: 
Вибір ознак. Відбір найважливіших ознак для використання в моделі. 
Це може включати видалення непотрібних ознак або вибір підмножини 
найкращих ознак на основі їх важливості для моделі. 
Створення нових ознак. Розробка нових ознак на основі існуючих або 
додавання додаткової інформації зовнішніх джерел. Нові ознаки можуть 
включати підсумки, різниці, статистичні міри, категоріальні ознаки та інше. 
Трансформація ознак. Застосування різних методів трансформації до 
ознак, таких як логарифмування, стандартизація, нормалізація та інші для 
покращення розподілу даних та зменшення впливу викидів. 
Інженерія ознак важлива, оскільки якість ознак впливає на здатність 
моделі до виявлення закономірностей у даних. Добре підготовлені ознаки 
можуть покращити ефективність та точність моделі, дозволяючи їй краще 
узагальнювати залежності в даних. Відповідно, інженерія ознак є важливою 
частиною процесу розробки моделей машинного навчання. 
 Для виділення основних ознак було використано класифікатор 
RandomForestClassifier. 
Класифікатор RandomForestClassifier (або просто Random Forest) може 
бути використаний для виділення головних ознак (ознак важливості) в 
задачах машинного навчання. Random Forest - це ансамбль рішень, який 
базується на деревах рішень і використовує метод багатократного бутстрепу 
та випадкового підвибору ознак для покращення якості моделі та виділення 
важливих ознак.  
Бутстреп (Bootstrap) - це статистичний метод в аналізі даних, який 
полягає в відбиранні випадкових вибірок з набору даних з повторенням з 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  68 
 
метою оцінки розподілу певної статистики або параметра, побудованого на 
цих даних. 
Random Forest використовує багатократний бутстреп для створення 
багатьох вибірок з навчального набору даних. Кожна з цих вибірок має 
тенденцію містити деяку кількість дубльованих прикладів і деяку кількість 
прикладів, які не входять до вибірки. 
Для кожної з цих вибірок будується дерево рішень (Decision Tree). 
Дерева рішень використовуються для вирішення завдань класифікації або 
регресії. 
Після побудови всіх дерев Random Forest обчислює важливість кожної 
ознаки. Важливість ознаки визначається на основі того, як дерева 
виявляються на конкретній ознаці під час багатьох випадкових вибірок. 
Ознаки, які часто використовуються для прийняття рішень в деревах та їхніх 
гілках, вважаються важливими. 
Всі ознаки сортуються за важливістю, де найважливіші ознаки 
отримують найвищий ранг. Отримані важливості ознак можна 
використовувати для відбору головних ознак, а також для подальшого 
аналізу та інтерпретації моделі. Основна ідея полягає в тому, що Random 
Forest дозволяє оцінити важливість кожної ознаки, враховуючи її вплив на 
рішення моделі в контексті багатьох дерев рішень. 
Відмітимо, що важливість ознак, отримана від Random Forest, може 
бути використана для відбору найкращих ознак для подальшого навчання 
моделі та підвищення ефективності або для визначення важливості ознак у 
завданні. 
 На рис.3.10. наведений фрагмент коду з використанням даної 
технології, де за результатами аналізу виділено і проранжовано головні 
ознаки даного датасету, які і будуть в подальшому використовуватися для 
аналізу даних. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  69 
 
 Після виділення головних ознак проведено розділення тренувальної 
частини датасета на дві частини (train і test), щоб можна було провести 
навчання моделі і перевірити її валідність. 
Валідність моделі (Model Validity) в машинному навчанні відноситься 
до того, наскільки добре побудована модель може узагальнити свої прогнози 
на нових, раніше невиданих даних. Одними з ключових аспектів валідності 
моделі є точність, стійкість та здатність до загальної аплікації. Важливо 
відмітити наступні аспекти валідності моделі. 
 
Рис.3.10. Результат виділення головних проранжованих ознак при 
використанні класифікатора Random Forest 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  70 
 
Точність (Accuracy). Це важливий показник, який визначає, наскільки 
добре модель передбачає цільову змінну на нових даних. Зазвичай, точність 
оцінюється за допомогою метрик, таких як середньоквадратична помилка 
(MSE) для задач регресії та точність, відсоток правильних класифікацій 
(Accuracy) для задач класифікації. 
Стійкість (Robustness). Модель вважається стійкою, якщо вона здатна 
надавати прийнятні результати на різних наборах даних. Це означає, що 
модель не перетворюється на перенавчання або недонавчання і може робити 
точні прогнози для нових даних, навіть якщо їхні характеристики 
відрізняються від навчальних даних. 
Крос-валідація (Cross-Validation). Це метод, який допомагає оцінити 
валідність моделі шляхом розділення навчальних даних на підвиборки для 
тренування та тестування. Крос-валідація дозволяє оцінити, наскільки добре 
модель узагальнюється на нових даних та визначити можливість 
перенавчання. 
Розпізнаваність (Generalization). Важливо, щоб модель була здатною 
розпізнавати загальні закономірності в даних, а не просто "запам'ятовувати" 
навчальний набір. Це дозволяє використовувати модель на нових даних, що 
вона не бачила раніше. 
Забезпечення валідності моделі є однією з центральних задач в 
машинному навчанні, оскільки невалідна модель може призвести до 
некоректних або ненадійних прогнозів на нових даних. Валідація моделі 
включає в себе не лише оцінку її точності, але й зрозуміння її здатності до 
узагальнення та стійкості до різних умов. 
Таким чином виділенно (проранжовано) ознаки, частину з яких можна 
використати для побудови якісної моделі класифікації мережевих вторгнень. 
 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  71 
 
3.3. Дослідження моделей машинного навчання виявлення мережевих 
вторгнень 
 В роботі використано декілька різних класифікаторів, щоб дослідити їх 
ефективність і зробити висновки про їх застосування для даної задачі 
виявлення мережевих вторгнень, або їх прогнозування на основі 
запропонованої моделі машинного навчання. 
 Одним з найпоширеніших і простих класифікаторів для побудови 
моделі машинного навчання є KNN - K-Nearest Neighbors, описаний в п.2.3. і 
є найпростішим алгоритмом. 
Під час навчання модель просто "запам'ятовує" навчальний набір 
даних, включаючи характеристики (ознаки) та відповіді (класи для задачі 
класифікації або значення для задачі регресії). 
Для класифікації нового прикладу (точки даних) модель шукає k 
найближчих прикладів з навчального набору, які найбільше схожі за 
допомогою певної метрики відстані, зазвичай евклідової відстані. Значення k 
- це гіперпараметр, і його вибір важливий. 
Модель рахує, який клас або значення найчастіше зустрічається серед k 
найближчих сусідів і призначає його новій точці даних. Основною ідеєю 
KNN є те, що схожі приклади зазвичай належать до одного класу чи мають 
схожі значення. Алгоритм легко використовувати, і він може бути 
ефективним для вирішення багатьох задач. Однак важливими аспектами 
KNN є вибір правильного значення k, вибір метрики відстані та оптимізація 
для великих обсягів даних. На рис.3.11 наведений фрагмент коду по 
реалізації методу KNN, де в якості гіперпараметра k було взято діапазон від 2 
до 16 і визначено, що найкраще значення (точність) досягається рівня 0.98 як 
для тренувальної, так і для тестової вибірки при k = 11, що є достатньо 
високим показником. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  72 
 
 
Рис.3.11. Результат роботи методу KNN по результатам аналізу даних 
 
 Основні метрики для даного методу наведені на рис.3.12 і 
демонструють такі показники, як Precision (точність) та Recall (повнота),  
які детально описані в п.2.4. Precision вимірює відсоток позитивних 
прикладів, визначених моделлю, як дійсно позитивні, тобто наскільки точно 
модель розпізнає позитивні приклади. Recall вимірює відсоток фактичних 
позитивних прикладів, які модель визначила правильно, тобто  наскільки 
"повно" модель розпізнає позитивні приклади. Для даної моделі ці показники 
є досить високі і сягають до 0.98 і 0.99. 
Окрім цього методу класифікації були проаналізовані і інші підходи, 
такі які Дерева рішень (Decision Tree), Випадковий ліс (Random Forest), SVM 
(Support Vector Machine), які є потужними алгоритмами машинного навчання 
та використовується для задач класифікації, регресії та ранжування.  
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  73 
 
 
Рис.3.12. Основні метричні показники ефективності алгоритму KNN для 
класифікації даних 
 
Порівняльні результати ефективності на тренувальній і тестовій 
вибірках для різних методів класифікації наведені на рис.3.13, де видно 
досить високі показники правильної класифікації розпізнавання на тестовій 
вибірці мережевої атаки. Найкращий результат на тестовій вибірці 
досягається для методів «Decision Tree» та «Random Forest» на рівні 0.99.  
 
Рис.3.13. Порівняльний аналіз ефективності класифікації виявлення 
мережевих вторгнень для різних моделей. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  74 
 
 
На основі отриманих моделей машинного навчання для виявлення 
мережевих вторгнень на основі аналізу даних протоколу з’єднання, 
продемонструємо результати передбачення на вибірці з 30 з’єднань , для якої 
є відомі відповіді щодо нормальної чи аномальної поведінки (рис.3.14), та на 
вибірці тестовій (рис.3.15), для якої невідомий результат мережевого 
зєднання і стоїть задача його прогнозу для прийняття рішень і подальших 
дій. 
Як видно з рис.3.14, всі представлені в роботі методи (KNN, Decision 
Tree, Random Forest, SVM) зробили правильний прогноз у порівнянні з 
відомим існтинним значенням. Два випадки з розглянутих для моделей KNN і 
SVM дали одну помилку (виділено червоним). Але в цілому результат 
передбачення є цілком високий і досягає точності 0.99. 
На рис.3.15. представлені результати прогнозу на тестовій вибірці щоб 
оцінити збіжність різних методів. Як видно з отриманих результатів, для 
більшості з’єднань різні методі показали високу збіжність прогнозування 
мережевих вторгнень. 
Таким чином можна зробити висновок, що застосування добре відомих 
класифікаторів машинного навчання, таких як метод найближчих сусідів (K-
Nearest Neighbors), дерева рішень (Decision Tree), випадковий ліс (Random 
Forest), SVM (Support Vector Machine)  дали можливість побудувати моделі на 
основі аналізу підготовленого датасету мережевої активності з нормальним і 
аномальним відгуком. Аналіз отриманих моделей показав їх високу точність 
по декілької загальновідомих характеристиках. Отримані моделі можуть бути 
використані для побудови прогнозів і аналізу поведінки мережевих з’єднань 
для забезпечення інформаційної безпеки інформаційно-телекомунікаційних 
систем. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  75 
 
 
Рис.3.14. Порівняльні результати передбачення мережевих вторгнень 
різними моделями машинного навчання з істинним результатом.  
 
 
Рис.3.15. Результати передбачення мережевих вторгнень різними 
моделями машинного навчання.  
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  76 
 
3.4. Висновки 
Системи виявлення вторгнень (Intrusion Detection Systems, IDS) є 
важливою складовою інформаційної безпеки і використовуються для 
виявлення незаконних або небажаних активностей в мережах та системах. 
Вони допомагають ідентифікувати потенційні вторгнення, атаки, аномалії та 
інші загрози і реагувати на них. Існують два основних типи систем виявлення 
вторгнень: системи виявлення вторгнень на основі сигнатур та системи 
виявлення аномалій. Останній підхід на основі аналізу аномалій лежить в 
основі одного з перспективних напрямків аналізу – машинного навчання, яке 
має ряд суттєвих переваг перед існуючими методами. 
В даному розділі показано застосування технології машинного 
навчання для виявлення мережевих вторгнень на прикладі побудови моделей, 
які навчалися на підготовленому датасеті. Такий датасет містить 25192 полів 
записів з 41 якісною та кількісною ознакою, що дозволяє виділити основні 
властивості для тих мережевих з’єднань, які характеризуються як 
аномальними (мережевими вторгненнями), так і звичайним з’єднаннями. 
Було проведено аналіз представленого датасету на предмет порожніх 
записів, відсутності даних. Проведено підготовку даних, виділення 
тренувального і тестового наборів даних для аналізу моделей. 
В роботі застосовано ряд класифікаторів, такі як метод найближчих 
сусідів (K-Nearest Neighbors), дерева рішень (Decision Tree), випадковий ліс 
(Random Forest), SVM (Support Vector Machine), які продемонстрували високі 
показники точності на рівні 0.98-0.99. Найкращий результат на тестовій 
вибірці досягається для методів «Decision Tree» та «Random Forest» на рівні 
0.99, що є високим показником ефективності запропонованої моделі для 
виявлення мережевих вторгнень. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  77 
 
ВИСНОВКИ 
 
В кваліфікаційній роботі виконаний аналіз загроз від мережевих 
вторгнень та побудова моделей для їх виявлення. Системи виявлення 
вторгнень (Intrusion Detection Systems, IDS) становлять важливий аспект 
забезпечення інформаційної безпеки і призначені для виявлення незаконних 
або небажаних дій у мережах та системах. Вони сприяють виявленню 
потенційних вторгнень, атак, аномалій та інших загроз, а також надають 
можливість реагувати на ці події.  
Зазвичай використовуються два основних підходи до систем виявлення 
вторгнень: на основі сигнатур та на основі аномалій. Підхід на основі аналізу 
аномалій, відкриває перед нами обширні можливості у сфері машинного 
навчання. 
Застосування технології машинного навчання для задачі виявлення 
мережевих вторгнень має декілька переваг порівняно з іншими техніками та 
підходами, зокрема це автоматизація та адаптивність, що дозволяє системі 
автоматично навчатися на основі історичних даних і адаптуватися до нових 
видів загроз без необхідності ручного оновлення правил. Це особливо 
важливо для виявлення нових та розвиваючихся видів вторгнень. Технології 
машинного навчання дозволяють ефективно виявляти аномалії в мережевому 
трафіку, які можуть бути ознаками вторгнень, навіть якщо ці аномалії раніше 
не були відомі. Це допомагає виявляти «нуль-денні» (zero-day) атаки. 
Особливістю застосування машинного навчання є врахування контексту в 
мережевому трафіку та зв'язків між подіями, що дозволяє зменшити кількість 
помилкових сигналів та підвищити точність виявлення вторгнень. 
Окрім того, застосування машинного навчання для вирішення 
поставлених задач характеризується масштабованістю для обробки великих 
обсягів даних та мережевого трафіку, прозорістю побудови моделей, 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  78 
 
зменшенням залежності від ручного аналізу, що робить процес більш 
ефективним та швидким. 
У дослідженні використовувалися різні класифікатори, включаючи K-
Nearest Neighbors, Decision Tree, Random Forest і Support Vector Machine. Всі 
ці класифікатори показали високу точність на рівні від 0.98 до 0.99. Серед 
них найкращий результат досягнутий за допомогою Decision Tree та Random 
Forest, які показали точність на рівні 0.99. Це свідчить про високий рівень 
ефективності запропонованих моделей для виявлення мережевих вторгнень. 
Тим не менше, важливо пам'ятати, що жоден метод виявлення 
вторгнень не є ідеальним, і краще використовувати комбінацію різних 
підходів та технологій для забезпечення максимального рівня безпеки 
мережі. Машинне навчання може бути потужним інструментом в арсеналі 
заходів забезпечення безпеки, але воно повинно супроводжуватися іншими 
заходами, такими як використання файрволів, моніторинг мережевого 
трафіку, аутентифікація та авторизація користувачів та ін. 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  79 
 
СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ 
1. Лук’яненко Т.Ю., Поночовний П.М., Легомінова С.В. Методика 
виявлення мережевих вторгнень і ознак комп'ютерних атак на основі 
емпіричного підходу // Сучасний захист інформації No 2 (50) 2022, 
с.15-22. 
2. Завада А.А. Аналіз сучасних систем виявлення атак і запобігання 
вторгненням / А.А. Завада, О.В. Самчишин, В.В. Охрімчук // 
Інформаційні системи. Житомир: Збірник наукових праць ЖВІНАУ, 
2012. Т. 6, No 12. С. 97-106.  
3. Толюпа С.В., Плющ О.Г., Пархоменко І.І. Побудова систем виявлення 
атак в інформаційних мережах на нейромережевих структурах / 
Толюпа С.В., Плющ О.Г., Пархоменко І.І.// К.:К1БЕРБЕЗПЕКА: освіта, 
наука. Техніка № 2 (10), 2020. С.169-181.  
4. Dua, S.; Du, X. Data Mining and Machine Learning in Cybersecurity; 
Auerbach Publications: Boca Raton, FL, USA, 2016. 
5. IEEE. Artificial Intelligence and Machine Learning Applied to 
Cybersecurity; IEEE: New York, NY, USA, 2017. 
6. A fuzzy Intrusion Detection System based on categorization of attacks 
[Електронний ресурс]. – 2014. – Режим доступу до ресурсу: 
https://www.semanticscholar.org/paper/A-fuzzy-Intrusion-Detection-
System-basedon-of-Varshovi-
ostamipour/8dc771ce3584a6daafeb2023b752b2e99e03f5d8 
7. Liang, J.; Zhao, W.; Ye, W. Anomaly-Based Web Attack Detection: A Deep 
Learning Approach. In Proceedings of the International Conference on 
Network, Communication and Computing (ICNCC), Silicon Valley, CA, 
USA, 26–29 January 2017; pp. 80–85. 
8. Alrawashdeh, K.; Purdy, C. Toward an Online Anomaly Intrusion Detection 
System Based on Deep Learning. In Proceedings of the IEEE International 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  80 
 
Conference on Machine Learning and Applications (ICMLA), Anaheim, 
CA, USA, 18–20 December 2016; pp. 195–200. 
9. Yu Y, Long J, Liu F, Cai Z (2016) Machine learning combining with 
visualization for intrusion detection: a survey. In: International conference 
on modeling decisions for artificial intelligence.Springer, Cham, pp 239–
249. 
10. Boulaiche, A.; Adi, K. An Auto-Learning Approach for Network Intrusion 
Detection. Telecommun. Syst. 2018, 
68, 277–294. 
11. Ahmad, B.; Jian, W.; Hassan, B.; Rehmatullah, S. Hybrid Intrusion 
Detection Method to Increase Anomaly 
Detection by Using Data Mining Techniques. Int. J. Database Theory Appl. 
2016, 9, 231–240. 
 
Лист 
 БІ021.023.22205.248 ПЗ 
Змін. Лист № докум. Підпис Дата  81