Trabajo de grado - Maestría
Prototipo de red neuronal profunda aplicada en la ciberseguridad
Registro en:
Universidad de Caldas
Repositorio Institucional Universidad de Caldas
Autor
Ramirez Rodriguez, Fabian Alberto
Institución
Resumen
Ilustraciones, gráficas spa:Este documento presenta un prototipo de red neuronal profunda aplicada en la ciberseguridad, logrando mejores resultados comparados con otras investigaciones del estado del arte de técnicas de inteligencia artificial en la detección de intrusiones con una red neuronal profunda; se analizaron además otros algoritmos de Machine Learning como Red neuronal convolucional, regresión logística, K vecinos cercanos, Naive Bayes Multinomial, Maquina de soporte vectorial, Naive Bayes gaussiano. El prototipo desarrollado permite la discriminación de 14 tipos de ataques modernos que incluyen todas las características de datos y metadatos para cumplir con los requisitos de tráfico en tiempo real, permitiendo una identificación más sólida sobre el tipo de ocurrencia anómala en el tramo de red analizado; para lograr esta mejor discriminación se utilizó un preprocesamiento de todo el dataset CICIDS2017 utilizando técnicas de limpieza de datos y ajustes de escala numérica. Como se utiliza un conjunto de datos desbalanceado tiene algunas clases de ataques con mayor número de ataques y otras clases con muy baja representación; el modelo de red neuronal se entrenó con el conjunto de datos preprocesado y se obtienen todas las métricas de precisión, sensibilidad, puntaje F1, exactitud por cada clase de ataque, identificando además las clases poco representadas; se propone un aumento de datos “data growth” en esas mismas clases y se mejora la detección, se obtiene un buen reporte de clasificación de las matrices de confusión en las fases de entrenamiento y prueba como unas curvas Roc representando una buena tasa de verdaderos positivos en las 14 clases de ataques más actuales. eng:This paper presents a prototype of deep neural network applied in cybersecurity, achieving better results compared to other state-of-the-art researches of artificial intelligence techniques in intrusion detection with a deep neural network; other Machine Learning algorithms such as Convolutional Neural Network, Logistic Regression, K-nearest neighbours, Multinomial Naive Bayes, Support Vector Machine, Gaussian Naive Bayes were also analysed. The developed prototype allows the discrimination of 14 modern attack types including all data and metadata features to meet real-time traffic requirements, enabling a more robust identification of the type of anomalous occurrence in the analysed network span; to achieve this better discrimination, a pre-processing of the entire CICIDS2017 dataset using data cleaning techniques and numerical scaling adjustments was used. As an unbalanced dataset is used it has some attack classes with higher number of attacks and other classes with very low representation; the neural network model was trained with the preprocessed dataset and all the metrics of precision, sensitivity, F1 score, accuracy are obtained for each attack class, also identifying the underrepresented classes; data growth is proposed in those same classes and detection is improved, a good classification report is obtained from the confusion matrices in the training and test phases as Roc curves representing a good true positive rate in the 14 most current attack classes. Resumen / Abstract / Lista de Figuras / Lista de Tablas / Lista de Abreviaturas / Capítulo 1: Introducción / 1.1 Campo temático / 1.1.1. Seguridad Informática / 1.1.2 Machine Learning / 1.2 Planteamiento del Problema / ¿Cuál es el problema en la detección y prevención de ataques e intrusiones? / Machine Learning en el problema de Detección y Prevención de Ataques e Intrusiones / Problemática de las técnicas de detección y prevención de ataques e instrucciones / Técnicas convencionales de sistemas de detección y prevención de ataques e intrusiones / Técnicas convencionales de sistemas de prevención y detección de ataques e intrusiones basadas en Machine Learning / Cuánto tiempo se demoran las empresas en detectar las intrusiones / Por qué son importantes los sistemas de detección de intrusiones / 1.3 Justificación / 1.4 Preguntas de Investigación / Contribución de las preguntas PI1 / Contribución de la pregunta PI2 / Contribución de la pregunta PI3 / 1.5 Objetivos / 1.5.1 Objetivo de Investigación / 1.5.2 Objetivo de Diseño / 1.5.3 Objetivos de conocimiento / 1.5.4 Enfoque metodológico Desing Science / 1.5.5 Problema de diseño / V 1.5.6 Metodología / Capítulo 2: Marco teórico y Estado del Arte/ 2.1 Sistemas de detección de intrusiones / 2.1.1 Basados en host / 2.1.2 Basados en anomalías o comportamiento / 2.1.3 Basado en uso indebido / 2.1.4 Basados en red / 2.1.5 Taxonomía de los sistemas de detección de intrusiones / 2.2 Aprendizaje Automático (Machine Learning) / 2.2.1 Técnicas convencionales de machine learning / 2.3 Red neural convolucional / 2.4 Red neuronal recurrente / 2.5 Red neuronal híbrida / 2.6 Red neuronal profunda / 2.6.1 Esquema matemático simplificado de una red neuronal profunda / 2.6.2 Relu / 2.6.3 Softmax / 2.7 Mapa Auto-organizado / 2.8 Entrenamiento de redes neuronales / 2.9 Data set / Capítulo 3: Materiales y Métodos / 3.1 Recurso hardware y software / 3.1.1 Tipos de ataques utilizados en el dataset CICIDS. / 3.1.1.1 BENIGN: 2.359.087, / 3.1.1.2 DoS HULK: 231.072, / 3.1.1.3 PortScan: 158.930 / 3.1.1.4 DdoS: 41.835, / 3.1.1.5 Botnets. / 3.1.1.6. DoS GoldenEye: 10.293, / 3.1.1.7 FTP-Patator: 7.938 / 3.1.1.8 SSH-Patator: 5.897 / VI 3.1.1.9 DoS slowloris: 5.796 / 3.1.1.10 DoS Slowhttptest: 5.499 / 3.1.1.11 Bot: 1.966 / 3.1.1.12 Web Attack – Brute Force: 1.507 / 3.1.1.13 Web Attack – XSS: 652 / 3.2 Diseño de la solución / 3.2.1 Conjunto de datos de ataques informáticos / 3.2.2 Tratamiento del conjunto de datos / 3.2.3. Diagrama de flujo del proceso / 3.2.4 Modelamiento con Keras / 3.2.4.1 Primera configuración red neuronal profunda / 3.2.4.2 Técnica de regularización de abandono Dropout / 3.2.4.3 Imagen red neuronal graficas de las capas / 3.2.4.4 Tensorgraf de la red neuronal profunda 7 capas densas y 6 Dropout / 3.2.4.5 Ajuste del learning rate / 3.2.4.6 Función de pérdida o coste / 3.2.4.7 Optimizador Nadam / 3.2.4.8 Segunda configuración red neuronal profunda / 3.2.4.9 Tensorgraf / 3.2.4.10 Tercera configuración red neuronal profunda / 3.2.4.11 Tensorgraf / 3.2.4.12 Cuarta configuración de red neuronal Profunda / 3.2.4.13 Red Neuronal Convolucional / 3.2.4.14 Tensorgraf / Capítulo 4: Análisis de Resultados / 4.1 Métricas de red neuronal profunda 3 capas ocultas / 4.2 Métricas red neuronal convolucional / 4.3 Validación de la arquitectura en la investigación en ejecución entre la Universidad Nacional de Colombia y la Universidad de Caldas / 4.3.1 Métricas red neuronal profunda en la validación / 4.3.2 Métricas red neuronal convolucional en la validación / VII Capítulo 5: Conclusiones y recomendaciones / 5.1 Relación con los objetivos / 5.2 Recomendaciones y trabajos futuros. / Anexos / Referencias Maestría Magister en Ingeniería Computacional Inteligencia Artificial, Seguridad Cibernética, seguridad de la información