Está en la página 1de 126

Prototipo de Red Neuronal Profunda Aplicada en la

Ciberseguridad

Fabian Alberto Ramirez Rodríguez

Universidad de Caldas
Facultad de Ingeniería
Maestría en Ingeniería Computacional
Manizales, Colombia
2023
Prototipo De Red Neuronal Profunda Aplicada en la
Ciberseguridad

Fabian Alberto Ramirez Rodríguez

Tesis presentada en cumplimiento de los requisitos para la obtención del título


de
Magister en Ingeniería Computacional

Director:
PhD. Gustavo A. Isaza Echeverry

Universidad de Caldas
Facultad de Ingeniería
Maestría en Ingeniería Computacional
Manizales, Colombia
2023
I

Resumen

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.

Palabras clave: Cicids2017, Prototipo de Red Neuronal Profunda, Red Neuronal Convolucional,
Detección de Intrusiones en Tiempo Real, Cicflowmeter, Sistema de Detección de Intrusiones de
Clases Múltiples, Sistema de Detección de Intrusiones en Denegación de Servicios.
II

Abstract

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.

Keywords: Cicids2017, Deep Neural Network Prototype, Convolutional Neural Network, Real-
Time Intrusion Detection, Cicflowmeter, Multi-Class Intrusion Detection System, Denial-of-
Service Intrusion Detection System.
III

Agradecimientos

En primer lugar, agradezco al Padre


Celestial por permitirme culminar la Maestría y
guiar mis pasos con un propósito; a mis padres,
Luis Eduardo y Luz Mary, mi gratitud
profunda, llena de honor y orgullo por haber
depositado en mí toda su confianza en el
camino que he recorrido; ellos son mi apoyo y
motivo por el cual quiero dar siempre lo mejor
de mí.

También quiero agradecer a mis hermanos


Diana Marcela, Roger Steven y María
Alejandra por su apoyo, compañía y por ser
parte de mi motivación para triunfar, a mi
sobrina Nohelia Samara por su dulce forma de
ser, a quien quiero mucho y siempre seré el
mejor tío para ella; a mi segunda madre, Janeth
Soto, por sus virtudes y cariño, así como a toda
su linda familia que es mi segunda familia.

Para culminar quiero agradecer al alma


mater, La Universidad de Caldas, y al programa
de Maestría en Ingeniería por formarme como
un gran profesional; al gran equipo docente, en
especial a mi gran amigo y director de Tesis el
PhD, Gustavo A. Isaza E, por guiarme con
sabiduría, acertada orientación, discusión
critica, soporte y por confiar en mi talento.

Al grupo de investigación de la Universidad


Nacional Liderado por el PhD Néstor Duque
por acogerme como un Estudiante investigador,
me llena de orgullo y de muchas enseñanzas, Al
compañero de Investigación José Albeiro en la
investigación conjunta Universidad Nacional
de Colombia, Universidad de Caldas donde el
modelo expuesto en esta tesis es el alma del
prototipo de detección de DDos en la nube.
IV

Índice

Resumen I
Abstract II
Lista de Figuras VIII
Lista de Tablas XII
Lista de Abreviaturas XV

Capítulo 1: Introducción. ................................................................................................................ 1


1.1 Campo temático. ................................................................................................................... 2
1.1.1. Seguridad Informática. ................................................................................................................ 2
1.1.2 Machine Learning. ....................................................................................................................... 2
1.2 Planteamiento del Problema. ............................................................................................ 3
¿Cuál es el problema en la detección y prevención de ataques e intrusiones? ...................................... 3
Machine Learning en el problema de Detección y Prevención de Ataques e Intrusiones. ................... 5
Problemática de las técnicas de detección y prevención de ataques e instrucciones. ................. 5
Técnicas convencionales de sistemas de detección y prevención de ataques e intrusiones. ................. 5
Técnicas convencionales de sistemas de prevención y detección de ataques e intrusiones basadas en
Machine Learning. ................................................................................................................................ 6
Cuánto tiempo se demoran las empresas en detectar las intrusiones. ................................................... 6
Por qué son importantes los sistemas de detección de intrusiones. ...................................................... 7
1.3 Justificación. ......................................................................................................................... 8
1.4 Preguntas de Investigación. ................................................................................................ 11
Contribución de las preguntas PI1. ..................................................................................................... 11
Contribución de la pregunta PI2. ........................................................................................................ 11
Contribución de la pregunta PI3. ........................................................................................................ 11
1.5 Objetivos. ............................................................................................................................ 12
1.5.1 Objetivo de Investigación. ......................................................................................................... 12
1.5.2 Objetivo de Diseño. ................................................................................................................... 12
1.5.3 Objetivos de conocimiento......................................................................................................... 12
1.5.4 Enfoque metodológico Desing Science. .................................................................................... 13
1.5.5 Problema de diseño. ................................................................................................................... 14
V

1.5.6 Metodología. .............................................................................................................................. 14


Capítulo 2: Marco teórico y Estado del Arte. ............................................................................... 16
2.1 Sistemas de detección de intrusiones. ................................................................................. 16
2.1.1 Basados en host. ......................................................................................................................... 16
2.1.2 Basados en anomalías o comportamiento. ................................................................................. 16
2.1.3 Basado en uso indebido.............................................................................................................. 17
2.1.4 Basados en red. .......................................................................................................................... 17
2.1.5 Taxonomía de los sistemas de detección de intrusiones. ........................................................... 18
2.2 Aprendizaje Automático (Machine Learning). ................................................................... 20
2.2.1 Técnicas convencionales de machine learning .......................................................................... 22
2.3 Red neural convolucional. .................................................................................................. 23
2.4 Red neuronal recurrente. ..................................................................................................... 26
2.5 Red neuronal híbrida. .......................................................................................................... 27
2.6 Red neuronal profunda. ....................................................................................................... 28
2.6.1 Esquema matemático simplificado de una red neuronal profunda. ........................................... 31
2.6.2 Relu ............................................................................................................................................ 31
2.6.3 Softmax ...................................................................................................................................... 32
2.7 Mapa Auto-organizado. ...................................................................................................... 32
2.8 Entrenamiento de redes neuronales. ................................................................................... 33
2.9 Data set................................................................................................................................ 34
Capítulo 3: Materiales y Métodos. ................................................................................................ 35
3.1 Recurso hardware y software. ............................................................................................. 35
3.1.1 Tipos de ataques utilizados en el dataset CICIDS. .................................................................... 36
3.1.1.1 BENIGN: 2.359.087, ............................................................................................ 36
3.1.1.2 DoS HULK: 231.072, ........................................................................................... 36
3.1.1.3 PortScan: 158.930, ................................................................................................ 37
3.1.1.4 DdoS: 41.835, ....................................................................................................... 38
3.1.1.5 Botnets. ................................................................................................................. 39
3.1.1.6. DoS GoldenEye: 10.293, ..................................................................................... 39
3.1.1.7 FTP-Patator: 7.938, ............................................................................................... 40
3.1.1.8 SSH-Patator: 5.897. .............................................................................................. 40
VI

3.1.1.9 DoS slowloris: 5.796............................................................................................. 41


3.1.1.10 DoS Slowhttptest: 5.499. .................................................................................... 42
3.1.1.11 Bot: 1.966,........................................................................................................... 42
3.1.1.12 Web Attack – Brute Force: 1.507. ...................................................................... 42
3.1.1.13 Web Attack – XSS: 652. ..................................................................................... 43
3.2 Diseño de la solución. ......................................................................................................... 44
3.2.1 Conjunto de datos de ataques informáticos. ............................................................................... 44
3.2.2 Tratamiento del conjunto de datos. ............................................................................................ 44
3.2.3. Diagrama de flujo del proceso. ................................................................................................. 45
3.2.4 Modelamiento con Keras. .......................................................................................................... 46
3.2.4.1 Primera configuración red neuronal profunda. ..................................................... 46
3.2.4.2 Técnica de regularización de abandono Dropout.................................................. 48
3.2.4.3 Imagen red neuronal graficas de las capas ............................................................ 48
3.2.4.4 Tensorgraf de la red neuronal profunda 7 capas densas y 6 Dropout. .................. 50
3.2.4.5 Ajuste del learning rate ......................................................................................... 50
3.2.4.6 Función de pérdida o coste. .................................................................................. 51
3.2.4.7 Optimizador Nadam .............................................................................................. 51
3.2.4.8 Segunda configuración red neuronal profunda. .................................................... 51
3.2.4.9 Tensorgraf. ............................................................................................................ 53
3.2.4.10 Tercera configuración red neuronal profunda..................................................... 54
3.2.4.11 Tensorgraf. .......................................................................................................... 56
3.2.4.12 Cuarta configuración de red neuronal Profunda. ................................................ 57
3.2.4.13 Red Neuronal Convolucional.............................................................................. 59
3.2.4.14 Tensorgraf. .......................................................................................................... 61
Capítulo 4: Análisis de Resultados. .............................................................................................. 62
4.1 Métricas de red neuronal profunda 3 capas ocultas. ........................................................... 63
4.2 Métricas red neuronal convolucional .................................................................................. 71
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 .................................................................. 79
4.3.1 Métricas red neuronal profunda en la validación. ...................................................................... 79
4.3.2 Métricas red neuronal convolucional en la validación. .............................................................. 87
VII

Capítulo 5: Conclusiones y recomendaciones. ........................................................................... 100


5.1 Relación con los objetivos. ............................................................................................... 101
5.2 Recomendaciones y trabajos futuros. ............................................................................... 105
Anexos ........................................................................................................................................ 106
Referencias .................................................................................................................................. 107
VIII

Lista de Figuras.
Figura 1: Jerarquía objetivo-problema de investigación Desing Science. .................................................. 13

Figura 2: Ciclos Design Science. ................................................................................................................ 14

Figura 3: Taxonomía de clasificación de los sistemas de detección de intrusiones. ................................... 18

Figura 4: Concepto básico de detección de intrusiones en la red neuronal convolucional. ........................ 23

Figura 5 : El modelo para la clasificación de amenazas de red................................................................... 24

Figura 6: Red neuronal profunda. ............................................................................................................... 28

Figura 7: Esquema simplificado de una red neuronal. ................................................................................ 31

Figura 8: Diagrama flujo de proceso........................................................................................................... 45

Figura 9: Modelo de keras red neuronal profunda. ..................................................................................... 47

Figura 10: Red neuronal profunda 7 capas ocultas. .................................................................................... 49

Figura 11: Tensorgraf de la red neuronal profunda 7 capas densas y 6 Dropout. ....................................... 50

Figura 12: Red neuronal profunda 4 capas ocultas. .................................................................................... 52

Figura 13: Tensorgraf del modelo neuronal de 4 capas profundas. ............................................................ 53

Figura 14: Modelo secuencial de Keras. ..................................................................................................... 53

Figura 15: Red neuronal profunda 6 capas. ................................................................................................ 54

Figura 16: Modelo secuencial de keras. ...................................................................................................... 55

Figura 17: Tensorgraf tercera configuracion neuronal................................................................................ 56

Figura 18: Modelo de red neuronal 6 capas densas. ................................................................................... 56

Figura 19:Red neuronal profunda 3 capas ocultas. ..................................................................................... 57

Figura 20: Diagrama de la arquitectura profunda. ...................................................................................... 58

Figura 21: Red neuronal convolucional. ..................................................................................................... 59

Figura 22: Modelo de red neuronal convolucional. .................................................................................... 60

Figura 23: Tensorgraf red neuronal convolucional. .................................................................................... 61

Figura 24: Épocas y función de coste en red neuronal profunda. ............................................................... 64

Figura 25: Matriz de confusión red neuronal profunda en fase de entrenamiento. ..................................... 65
IX

Figura 26: Matriz de confusión red neuronal profunda en fase de prueba. ................................................. 66

Figura 27: Curva ROC general en fase de entrenamiento de la red neuronal profunda.............................. 67

Figura 28: Curva ROC en fase de entrenamiento por todas las clases en el modelo de red neuronal. ....... 68

Figura 29: Curva roc general de la Red neuronal profunda en fase de prueba. .......................................... 69

Figura 30: Curva roc por todas las clases en fase de prueba red neuronal profunda. ................................. 70

Figura 31: Modelo de exactitud red neuronal convolucional...................................................................... 71

Figura 32: Modelo de perdida red neuronal convolucional. ....................................................................... 72

Figura 33: Matriz de confusión Red Neuronal Convolucional en fase de entrenamiento. ......................... 72

Figura 34: Matriz de confusión red neuronal convolucional en fase de prueba. ........................................ 73

Figura 35: Curvas roc en fase de entrenamiento Red Neuronal Convolucional. ........................................ 74

Figura 36: Curva Roc en fase de entrenamiento multiclase red neuronal convolucional. .......................... 75

Figura 37: Curva Roc en fase de prueba Red Neuronal Convolucional. .................................................... 76

Figura 38: Curva Roc en fase de prueba Red Neuronal Convolucional. .................................................... 77

Figura 39: Diagrama de barras las métricas de los clasificadores usados con el dataset cicids .................. 78

Figura 40: Modelo de Exactitud en funcion de las epocas en fase de entrenamiento y validación. ........... 81

Figura 41: Modelo de perdida en función de las épocas en fase de entrenamiento y validación................ 81

Figura 42: Matriz de confusión en fase de entrenamiento red neuronal profunda. ..................................... 82

Figura 43: Matriz de confusión en fase de validación Red Neuronal Profunda. ........................................ 83

Figura 44: Curva Roc Red Neuronal Profunda en fase de entrenamiento. ................................................. 84

Figura 45: Curva Roc Red Neuronal Profunda en fase de validación. ....................................................... 85

Figura 46: Evaluación de la clasificación de los datos puros de DDOS en fase de validación. ................. 86

Figura 47: Matriz de confusión red neuronal Convolucional en fase de entrenamiento. ............................ 88

Figura 48: Matriz de confusión Red Neuronal Convolucional en fase de validación. ................................ 89

Figura 49: Curva ROC Red Neuronal Convolucional en fase de entrenamiento. ....................................... 90

Figura 50: Curva ROC Red Neuronal Convolucional en fase de validación. ............................................. 91

Figura 51: Evaluación de la clasificación de los datos puros de DDOS en fase de validación. ................. 92
X

Figura 52: Evaluación de la clasificación de los datos puros de DDOS en fase de validación. ................. 92

Figura 53: Topología de red. ....................................................................................................................... 93

Figura 54: Laboratorio LIGRED................................................................................................................. 94

Figura 55:Ataque Dos Slowloris ................................................................................................................. 94

Figura 56:Ataque DDoS. ............................................................................................................................ 95

Figura 57:Ataque Dos Goldeneye. .............................................................................................................. 96

Figura 58:Ataque DoS Slowhttptest. .......................................................................................................... 97

Figura 59:Ataque Dos Hulk. ....................................................................................................................... 98

Figura 60: Diagrama de barras las métricas de los clasificadores usados en la validación conjunta
Universidad Nacional de Colombia, Universidad de Caldas con el uso de dataset estándares. ................. 99
XI

Lista de Tablas.
Tabla 1:Ventaja y desventaja de los IDS de red y host. .............................................................................. 19

Tabla 2: Machine Learning. ........................................................................................................................ 21

Tabla 3: Técnicas en redes neuronales convolucionales en la detección de intrusiones. ............................ 24

Tabla 4: Técnicas de redes neuronales recurrentes en la detección de intrusiones. .................................... 26

Tabla 5: Técnica de red neuronal hibrida en la detección de intrusiones. .................................................. 27

Tabla 6: Técnicas de Redes neuronales profundas en la detección de intrusiones. .................................... 29

Tabla 7: Técnicas de Redes neuronales profundas en la detección de intrusiones con dataset más
recientes. ..................................................................................................................................................... 30

Tabla 8: Técnica de mapa auto-organizado en detección de intrusiones. ................................................... 33

Tabla 9: Características de Hardware para diseño y ejecución. .................................................................. 35

Tabla 10: Características de Software para diseño y ejecución. ................................................................. 35

Tabla 11: Resumen del modelo secuencial de keras de la red neuronal profunda de 7 capas con
Dropoud. ..................................................................................................................................................... 46

Tabla 12: Hiper parametros 7 capas ocultas. .............................................................................................. 49

Tabla 13: Hiper parámetros 4 capas ocultas. .............................................................................................. 52

Tabla 14: Resumen del modelo secuencial de keras de la red neuronal profunda de 4 capas. ................... 52

Tabla 15: Hiper parametros 6 capas ocultas. .............................................................................................. 54

Tabla 16: Resumen del modelo secuencial de Keras de la red neuronal profunda de 6 capas. .................. 55

Tabla 17: Hiper parámetros 3 capas ocultas. .............................................................................................. 58

Tabla 18: Resumen del modelo secuencial de keras de la red neuronal profunda de 3 capas. ................... 58

Tabla 19: Hiper parámetros red neuronal convolucional. ........................................................................... 59

Tabla 20: Métricas red neuronal profunda en fase de entrenamiento. ........................................................ 63

Tabla 21: Métricas red neuronal profunda en fase de prueba. .................................................................... 63

Tabla 22: Reporte de clasificación red neuronal profunda en fase de entrenamiento. ................................ 65

Tabla 23: Reporte de clasificación red neuronal profunda en fase de prueba. ............................................ 66

Tabla 24: Métrica Clasificador red neuronal convolucional en fase de entrenamiento. ............................. 71
XII

Tabla 25: Métrica Clasificador red neuronal convolucional en fase de prueba. ......................................... 71

Tabla 26: Reporte de clasificación red neuronal convolucional en fase de entrenamiento. ....................... 73

Tabla 27:Métrica Clasificador red neuronal profunda en fase de entrenamiento. ...................................... 79

Tabla 28:Métrica Clasificador red neuronal profunda en fase de validación. ............................................ 79

Tabla 29: Métricas de red neuronal profunda con enriquecimiento de datos en fase de entrenamiento. ..... 80

Tabla 30: Métricas de red neuronal profunda con enriquecimiento de datos en fase de validación. ........... 80

Tabla 31: Evaluación de clasificación de datos puros de DDOS en fase de validación con registros
diferentes a los de entrenamiento y prueba. ................................................................................................. 86

Tabla 32: Métrica Clasificador red neuronal convolucional en fase de entrenamiento. ............................. 87

Tabla 33: Métrica Clasificador red neuronal convolucional en fase de validación. ................................... 87

Tabla 34: Métricas de red neuronal convolucional con enriquecimiento de datos en fase de
entrenamiento. ............................................................................................................................................. 87

Tabla 35: Métricas de red neuronal convolucional con enriquecimiento de datos en fase de validación.
.................................................................................................................................................................... 88

Tabla 36:Ataque DoS Slowloris ................................................................................................................. 94

Tabla 37:Ataque DDoS. .............................................................................................................................. 95

Tabla 38:Ataque DDoS. .............................................................................................................................. 96

Tabla 39:Ataque DoS Slowhttptest. ............................................................................................................ 97

Tabla 40:Ataque Dos Hulk. ........................................................................................................................ 98


XIII

Lista de Abreviaturas.

Abreviatura Termino
Relu: Rectified linear unit – Unidad rectificadora lineal.
IDS: Sistema de detección de intrusiones.
ML: Machine Learning - Aprendizaje de Maquina.
IO: Internet de los Objetos.
DoS: Denial Of Service-Ataques de Denegación de Servicios.

R2L: Remote to Local - Ataques de acceso Remoto a Local.

U2R: User to Root - Ataques de Usuario a Súper usuario.

Probing: Sondeo de redes.

CaaS: Crimeware como servicio.

NIDS: Network Intrusion Detection System.

HIDS: Host Intrusion Detection System.

CNN: Convolutional neural network.

Knn : K nearest neighbors.

Svm: Support vector machines.

ICMP: Mensajes de control de Internet.

Tp: True positive – verdadero positivo.

Fp False positive – Falso positivo.

Tn: True negative – Verdadero Negativo.

Fn: False negative - Falso Negativo.

ROC: Receiver Operating Characteristic.

OOB: Muestra fuera de bolsa.


Capítulo 1
______________________________________________________________________________

Capítulo 1: Introducción.

En el transcurso de los años se ha constatado un aumento significativo del número y


sofisticación de ataques cibernéticos dirigidos a usuarios domésticos, empresas, organizaciones
gubernamentales e incluso a infraestructuras críticas; entre ellos se cuentan serios problemas en
ataques cibernéticos que han costado millones de dólares debido a la importancia económica de
los servicios que se ejecutan en la red, ya que cada día crece la demanda de estos servicios, por lo
cual es muy importante contar con sistemas automáticos capaces de detectar intrusiones de manera
confiable y veloz en la respuesta.

Como resultado, los IDS se han establecido como un componente primordial de la


infraestructura de seguridad. De acuerdo con Moe (2018), muchas grandes empresas y gobiernos
han fracasado en la protección de la seguridad de sus clientes y ciudadanos a pesar del
fortalecimiento de nuevos conocimientos en el campo de ciberseguridad. Con todos los demás
avances tecnológicos en la Internet de los objetos, computación en nube, red 5G, inteligencia
artificial, la necesidad de ciberseguridad se hace cada vez mayor y más crítica que nunca. A su
vez, se han llevado a cabo muchas investigaciones y será necesario seguir centrándose en el avance
de las herramientas y prácticas de ciberseguridad.

En efecto, las técnicas tradicionales de prevención de intrusiones como los cortafuegos, el


control de acceso o el cifrado, no han logrado proteger por completo las redes y los sistemas contra
ataques y software cada vez más sofisticados. Como resultado, los IDS se han establecido como
un componente esencial de la infraestructura de seguridad para detectar estas amenazas antes de
infligir un daño generalizado.

No obstante, la infraestructura de TI está expuesta a una gran variedad de ataques informáticos


que recorren la organización en paquetes de tráfico debido a la naturaleza de conexión a internet.
Los dos enfoques principales de los IDS son la búsqueda de actividades sospechosas y la
identificación de firmas o patrones alojados en una base de datos. El anterior incluye el desglose
del tráfico generado en la organización o en una sección de red particular con la intención de
distinguir la vulnerabilidad o ataque mediante la aplicación de métodos de reconocimiento de
firmas o procedimientos de técnicas de la inteligencia artificial en los modelos entrenados por
conjuntos de dato con parámetros de red, que permita al usuario u organización ser informado en
tiempo real sobre alguna actividad que sea anómala.

1
Capítulo 1
______________________________________________________________________________

1.1 Campo temático.

1.1.1. Seguridad Informática.

La seguridad de TI incluye: concientización y capacitación en seguridad, control de acceso,


administración de configuración, protección de medios, auditoría, seguridad física, detección de
intrusiones y administración de firewall.

La seguridad de los datos tiene como finalidad salvaguardar su integridad (garantizar la


precisión, la legitimidad y completitud), la disponibilidad (que se pueda llegar a ellos cuando se
necesiten). La confidencialidad (que sean accesibles sólo a las personas que deben acceder a ellos
por su desempeño laboral o derecho a los datos almacenados) Su protagonismo está resultando
cada vez más relevante, tanto a nivel de las asociaciones como de las personas, en la actualidad se
considera una característica fundamental en la calidad de los datos.

1.1.2 Machine Learning.

El aprendizaje de maquina es una subárea que hace parte en la inteligencia artificial que
posibilita el aprendizaje en un sistema computacional basado en la experiencia (datos) y mejoren
sin estar programados explícitamente; el aprendizaje automático puede generar conocimientos
automáticamente, entrenar algoritmos, identificar relaciones y reconocer patrones desconocidos.
Estos patrones y relaciones identificados permiten un entrenamiento con una base de datos nueva
para hacer predicciones y optimizar procesos, diferente que el desarrollo de software tradicional,
que es la máquina de aprendizaje haciendo énfasis en la independencia de aprendizaje a partir de
datos. Esto significa que el algoritmo aprende de los datos y crea su propio código de programa.

El aprendizaje automático puede hacer lo siguiente:

La generación de predicciones conforme a la base de datos previamente etiquetada “pronóstico


de ataques”, calculo probabilístico en ciertas ocasiones específicas (por ejemplo, porcentaje de
interrupción o porcentaje de éxito en una actividad anómala), identificar agrupaciones en un
conjunto de datos, percibir asociaciones en los registritos de datos, disminución de dimensión sin
pérdida extraordinaria de datos, racionalización de procesos, entre otros.

Para que el aprendizaje de maquina establezca su funcionalidad, un humano debe preparar el


cálculo y generar un diseño. Al dar información el algoritmo puede reconocer patrones y
relaciones, Este ciclo se denomina preparación de modelos; la IA se relaciona frecuentemente con
los términos minería de información y análisis predictivo finalmente, la minería de información y
la investigación utilizan técnicas de IA.

2
Capítulo 1
______________________________________________________________________________

1.2 Planteamiento del Problema.

¿Cuál es el problema en la detección y prevención de ataques e intrusiones?

La comunidad de investigación científica ha notado que se debe tomar las medidas necesarias
relacionado con la prevención y detección de ataques e intrusiones, ya que es una problemática
grave que afecta tanto a las empresas como a sus usuarios y se trata de superar esta escasez de
información mediante la publicación de artículos de impacto, lo cual se viene haciendo en los
últimos años; algunos grupos de investigación están activos en esta área logrando importantes
avances adicionales en las detecciones de intrusiones y mejoras en técnicas del Machine Learning
y Deep Learning; los resultados de estas técnicas de detección de intrusiones se convierten en
ventajas y acciones prometedoras en el momento de brindar soluciones a estas problemáticas.

Todos los días aparecen nuevas herramientas automatizadas de hacking, con una variedad de
información de vulnerabilidades de los sistemas que se propagan fácilmente en la web, lo cual
conlleva a pérdidas importantes a las organizaciones empresariales en millones de dólares
anualmente, por la ejecución de ataques en sus servidores, con la intención de obtener datos
valiosos o generar repercusiones a las empresas víctimas.

XiaoHang (2010); Warzyński y Kołaczek (2018), determinan que la función de un IDS es


brindar un mejor nivel de seguridad mediante la identificación de todos los eventos maliciosos y
sospechosos observados a través de computadoras o sistemas de red.

A medida que se presentan los nuevos desarrollos tecnológicos que permitan un acceso a la red
de Internet, se evidencia la necesidad de entrenar redes neuronales profundas que puedan
supervisar la actividad de la red, debido a las amenazas informáticas más complejas y difíciles de
identificar.

Del mismo modo, diversas empresas del sector de seguridad en todo el mundo se plantean los
nuevos diseños de tecnología para aumentar la protección en los sistemas informáticos sobre los
ataques de intrusiones en la red, tal como lo indican Mahdavifar y Ghorbani (2019), donde los
mecanismos de seguridad son necesarios para hacer control a la diversidad de ataques maliciosos
en la conexión de red, siendo de vital importancia evitar el uso no autorizado, la duplicación, la
alteración y destrucción de la información o los sistemas informáticos que son susceptibles en el
día a día.

Donde el malware a través de sus variantes de software intrusivo: como gusanos, troyanos,
ransomware, botnet, phishing y spam entre otros; incluso el origen de estos agentes fraudulentos
es poner en peligro la integridad y confidencialidad de los archivos.
3
Capítulo 1
______________________________________________________________________________

Dado que los datos de diversas empresas contienen información privada, transacciones
bancarias, contratos comerciales, ventas, datos médicos, información de carácter político, entre
otros, cualquier violación en la seguridad afectará la reputación de la empresa, pérdida de clientes,
pérdidas económicas, entre otras afectaciones.

Se establece que el deber de un IDS es la identificación de todos los patrones anormales y el


tráfico mediante monitoreo, la acción y reacción a las actividades no autorizadas dentro del
sistema. Tal es el caso que los ataques se agruparan en cuatro principales categorías: Sondeo de
redes Probing, Ataques de Denegación de Servicios DoS Denial Of Service, Ataques de Usuario
a Súper usuario U2R User to Root, R2L Ataques de acceso Remoto a Local Remote to Local y
como lo dan a conocer Garfinkel (2010); Holgado Ortiz (2018).

Las recientes violaciones de alto perfil han demostrado que incluso las empresas con buenas
capacidades de seguridad financiadas y los productos de seguridad comercial de última generación
no son capaces de bloquear los intentos de intrusión de sofisticados actores de amenazas referidos
coloquialmente como amenazas avanzadas persistentes. Nye (2014), refiere que, en un momento
dado, sofisticadas intrusiones dirigidas eran dominio exclusivo de los países ya que poseían los
recursos necesarios para su desarrollo, la motivación, los recursos y el talento técnico necesarios
para penetrar en redes bien defendidas.

Sin embargo, Whyte (2017) argumenta que este ya no es el caso: primero, herramientas/software
de explotación sofisticados se promulgan ampliamente en internet sin costo alguno o a bajo costo,
eliminando así el requisito de una alta cualificación técnica como barrera de entrada; segundo, el
crimeware como servicio (CaaS) utiliza herramientas/técnicas de ataque de última generación
disponibles para alquiler ataque financiero, y tercero, la externalización de las investigaciones de
vulnerabilidades implican que los exploits día a día se comercialicen y estén disponibles para la
venta. Por ejemplo, existen empresas hoy en día cuyo modelo de negocio es encontrar
vulnerabilidades y desarrollar exploits para productos de software populares.

La detección de actividades maliciosas en las redes es uno de los problemas comunes en la


ciberseguridad. Un amplio subconjunto de estos problemas es a menudo llamado detección de
intrusiones; los enfoques para los IDS están divididos en dos clases: los enfoques basados en firmas
y el enfoque basado en anomalía, ambos con sus importantes desafíos, como lo enfatizan Axelsson
(2000); Patcha y Park (2007).

La mayoría de los IDS se centran en el control del sistema operativo y el reconocimiento de los
patrones anómalos, tales como malware para indicar el ataque DoS. Los demás supervisan el
tráfico de red en los dispositivos de red, entonces ellos aplican la detección técnica para mostrar
la desviación del ataque y los tráficos normales.

4
Capítulo 1
______________________________________________________________________________

De acuerdo con lo expuesto, los métodos tradicionales son adecuados solamente en el caso de
algunos ataques específicos, puesto que no pueden manejar completamente la diversidad de los
tráficos de ataque de la red en el sistema. Por consiguiente, es necesario disponer de un método
que analice las características y atributos del tráfico de ataque para ser aplicado al tráfico complejo.

Machine Learning en el problema de Detección y Prevención de Ataques e Intrusiones.

En la detección de intrusiones, el Machine Learning ha permitido identificar la autenticidad de


los usuarios mediante técnicas de prevención que evitan a los usuarios no autorizados cometer
violaciones a las bases de datos, mediante perfiles de comportamiento normal o anómalo, lo que
impide a los atacantes acceder a los paquetes; en caso de llegar a tener éxito en sus operaciones
maliciosas.

Blowers y Williams (2014); Darwish (2016), refieren que la intrusión en el dataset se define
comúnmente como el conjunto de acciones que intentan violar la integridad de la información, la
disponibilidad en los datos o la confidencialidad en los mismos.

Para las organizaciones, la información es un activo muy valiosos, lo cual exige un adecuado
manejo con las medidas de seguridad más eficientes como el Machine learning que puede
emplearse para certificar la integridad de los datos, así como los usuarios autorizados por los
patrones de normalidad establecidos en el aprendizaje automático.(Komar et al., 2018).

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.

Las técnicas convencionales están basadas en análisis de firmas o patrones alojados en una base
de datos que al coincidir alguna muestra genera advertencias al personal encargado de la seguridad
informática dentro de la organización; las limitaciones presentes en estas técnicas tradicionales
son la gran cantidad de reglas para ingresar al sistema y los ataques más modernos, ataques de día
cero o ataques con ofuscamiento de código que son capaces de saltarse estos sistemas de detección;
igualmente existen limitaciones en las nuevas reglas, cada vez más complejas y hasta cierto punto

5
Capítulo 1
______________________________________________________________________________

más difíciles de poner en marcha. Los sistemas que protegen estas técnicas de prevención de
intrusiones convencionales se encuentran en redes de alta velocidad y un gran flujo de datos y es
ahí donde también se quedan un poco cortos, aunque el “conjunto de reglas de la comunidad" y el
"conjunto de reglas del suscriptor” se proveen por el desarrollador del sistema de detección de
intrusiones o por un equipo experto en seguridad cibernética.

Técnicas convencionales de sistemas de prevención y detección de ataques e intrusiones


basadas en Machine Learning.

Las metodologías y arquitecturas convencionales en la detección de intrusiones orientado en


aprendizaje de máquina se están quedando un poco cortas de alcance, ya que aplican bases de datos
con características distintas a las actuales y esa variación permite las intrusiones y ataques a la
infraestructura tecnológica que se está protegiendo. Estos conjuntos de datos ya no representan los
ataques de día cero contemporáneos, no ofrecen una evaluación real y podrían dar lugar a
afirmaciones inexactas de su eficacia debido a la sofisticación de los ataques, y en sí mismo, los
paquetes benignos; por ello se hace necesario un dataset avalado por la comunidad científica que
cumpla con criterios de una conexión a internet; de la misma forma, los algoritmos de clasificación
tradicionales de machine learning no alcanzan a detectar algunas clases de ataques más modernos,
siendo el fin del IDS minimizar los riesgos de anomalías en red que protege, puesto que cada
ataque tiene una repercusión en la compañía o al usuario final.

Cuánto tiempo se demoran las empresas en detectar las intrusiones.

El informe de seguridad de datos 2020 de IBM dice que las empresas tardaron hasta nueve
meses (precisamente 280 días) en detectar y contener una infracción, en 2020.(IBM, 2021a).

Los costes de interceptación de la información aumentaron de 3,86 millones de dólares a 4,24


millones, el coste total normal más elevado en los 17 años del historial de este informe.(IBM,
2021a).

Básicamente, la preparación en la detección de anomalías consta de varias partes: conocer los


posibles comportamientos anómalos, contrarrestar las posibles interrupciones causada por un
vector de ataque, controlar las intrusiones dinámicas y pasadas, responder a la vulneración.
Aunque pueda parecer que ya ha pasado el punto de no retorno cuando se ha producido una
violación a el sistema de la información, entender qué vectores de ataque han ocurrido o se han
efectuado en tiempos anteriores, puede ser un mecanismo táctico para la prevención de futuras
intromisiones en el sistema a proteger. identificar el alcance de la interrupción de una amenaza
informática causada por un vector de ataque, es importante para determinar la reacción del sistema

6
Capítulo 1
______________________________________________________________________________

frente a la amenaza y su responsabilidad ante la organización que dependen de la seguridad de sus


estructuras informáticas.

Por qué son importantes los sistemas de detección de intrusiones.

Las industrias y las empresas actuales requieren un elevado grado de seguridad para garantizar
una interacción con los datos de forma sólida y segura entre diferentes asociaciones empresariales.
Un marco de seguridad enfocado a un sistema de detección de intruso se convierte en una
herramienta versátil para la seguridad del marco de protección frente amanezcas después de que
falle algún sistema de protección convencional. Los vectores de ataque se irán refinando
progresivamente, por lo que los avances en seguridad deben ajustarse junto a la sofisticación de
las amenazas cibernéticas.

El ciberdelito puede alterar y perjudicar a las industrias en su modelo de negocio. En el año


2021 el gasto típico promedio de un robo de información fue de 4,24 millones de dólares en todo
el mundo y el valor más alto alcanzado estadísticamente fue de 9,05 millones de dólares en Estados
Unidos. Este coste incluye la respuesta ante la intromisión de un vector de ataque adicionalmente
el reconocimiento de este patrón anómalo, el coste del sistema fuera de servicio y los recursos
económicos cesantes, así como el daño a la imagen de una organización empresarial. Una
interrupción comprometedora provoca la desconfianza de sus clientes, multas administrativas,
como la acción de la justicia.(IBM, 2021b)

7
Capítulo 1
______________________________________________________________________________

1.3 Justificación.

De acuerdo con los conceptos y datos expuestos anteriormente, el malware y sus variantes han
presentado una gran evolución a través del tiempo, con el uso de nuevos enfoques y en gran medida
explotando las fallas en las tecnologías emergentes para evitar la detección; los ciberataques cada
día se hacen más atractivos pero potencialmente más desastrosos, como lo dan a conocer Jang-
Jaccard y Nepal (2014) sobre las amenazas emergentes en la ciberseguridad, lo que repercute en
afectaciones y costos estimados en millones de dólares según lo indican los reportes del año 2019
emitidos por Symantec sobre ciberdelincuencia, donde se destacan los siguientes tipos de ataques
(Sondeo de redes Probing, Ataques de Denegación de Servicios DoS Denial Of Service, Ataques
de Usuario a Súper usuario U2R User to Root, R2L Ataques de acceso Remoto a Local Remote
to Local”).

Hoy en día el malware se utiliza principalmente para robar información personal, financiera o
comercial confidencial en beneficio de otros; a menudo, el malware se usa para atacar sitios web
gubernamentales o corporativos para recopilar información protegida o interrumpir sus
operaciones; en otros casos, el malware se usa contra individuos para obtener información
personal, cuentas electrónicas de toda clase o números de tarjetas de crédito.

Por consiguiente, un IDS está diseñado para detectar ataques donde pueden provenir de internet
o de la red local, además de obtener información detallada sobre el tipo más común de ataques y
atacantes.

Es claro que la seguridad de la red es un componente importante en el sector tecnológico de


una organización empresarial que proporcione estrategias de seguridad preventivas para la
infraestructura física y de software del sistema. En particular, la cantidad de datos generados por
las redes aumenta en la interacción de las máquinas en red de las compañías, el sistema operativo
y aplicaciones.

Sin embargo, el sector aún depende de enfoques manuales para prevenir y mitigar cualquier
mal funcionamiento del sistema; en la seguridad de la red existen dos métodos de detección
comunes para los NIDS: las detecciones basadas en una firma y las detecciones de anomalías; la
detección por análisis de firma (conocida como detección de uso incorrecto) es útil cuando solo se
conoce la firma (patrón) de ataque, la detección basada en anomalías se puede usar para ataques
conocidos o desconocidos. Además, los NIDS se basan en el concepto de "identificación de
tráfico", es decir, extraer las características útiles del flujo de tráfico capturado y luego clasificar
el registro de tráfico a normal o ataque mediante el uso de una técnica o algoritmo de aprendizaje
de maquina previamente entrenados.

8
Capítulo 1
______________________________________________________________________________

Es sabido que muchos métodos tradicionales de aprendizaje automático (Machine


Learning) utilizados para IDS, como Perceptrón simple, Maquina de soporte vectorial, Lógica
difusa y Modelos ocultos de Markov, tienen arquitecturas poco profundas y no son adecuados para
manejar la detección de intrusiones en un entorno de grandes datos; reconocen ataques
desconocidos con dificultad, no pueden proporcionar soluciones en tiempo real y no manejan el
ruido que es común en grandes conjuntos de datos.

De acuerdo con este concepto, es evidente que se necesitan técnicas de Deep Learning
robustas y vigorosas para tratar intrusiones dinámicas que cambian de un ataque a otro con el
tiempo debido a que el aprendizaje profundo tiene diversos beneficios sobre las técnicas
tradicionales utilizadas en el Machine Learning: en primer lugar, proporciona información precisa
sobre el comportamiento anómalo, ya que puede identificar el problema principal o, mejor aún, el
origen de la intrusión; en segundo lugar, el sistema se basa en patrones de datos para detectar
problemas, que de otro modo serían difíciles de detectar mediante el uso de analistas. En tercer
lugar, el enfoque puede evaluar grandes conjuntos de datos, lo que lleva mucho tiempo en los
métodos tradicionales de aprendizaje automático. Todo esto permite a las organizaciones
desarrollar mejores estrategias sobre seguridad de red, ya que las nuevas técnicas son más seguras
que los enfoques tradicionales de aprendizaje automático.

Según la investigación de tecnologías de redes neuronales en los IDS, la red neuronal es una
forma eficiente de incrementar el rendimiento de IDS; de manera particular, las redes neuronales
profundas aplicadas en IDS tienen un futuro prometedor.

El presente trabajo de Tesis de Grado, “Prototipo de Red Neuronal Profunda Aplicada en la


Ciberseguridad”, se llevará a cabo implementando arquitecturas que sobresalen por su potencial,
velocidad, precisión, confiabilidad y facilidad de entrenamiento utilizando un prototipo de red
neuronal profunda, aplicada en la detección de intrusiones, basados en la literatura científica que
permita brindar una solución a la detección de ataques e intrusiones conocidas como nuevos tipos
de ataques.

En este contexto, la red neuronal profunda juega un papel importante en la resolución del
problema de detección y prevención de intrusiones debido a su capacidad de precisión, detección
y clasificación. Debido a que la red neuronal profunda tiene las ventajas que sobresalen en tareas
altamente complejas con grandes datos de entrada y una alta dimensión, tiene la capacidad de
acercamiento más fuerte y la capacidad de aprendizaje auto adaptativo y el procesamiento de
información difusa en relación con la red; Un IDS se prueba mediante datos aprobados
científicamente y la precisión de las pruebas del sistema se verifica mediante un correcto
entrenamiento y sus debidas verificaciones a través de una evaluación exhaustiva.
9
Capítulo 1
______________________________________________________________________________

Por lo tanto, el método de reconocimiento de intrusiones ejecutados en una Red Neuronal


Profunda puede mejorar la velocidad de detección y la precisión de la clasificación debido a que
las técnicas convencionales tienen unas limitaciones en cuanto a la cantidad de flujo de tráfico en
tiempo real y a la alta dimensión de los datos; todo esto conlleva a entrenamientos tanto
prolongados como lentos, teniendo presente además que otra falencia es que los ataques
desconocidos se reconocen con dificultad.

En efecto, este proyecto permitirá la interacción y el acompañamiento de la comunidad


científica en torno al Machine Learning como al Deep Learning, ya que la publicación de nuevo
conocimiento y los aportes científicos son herramientas fundamentales para lograr una
transferencia eficaz de conocimiento a una sociedad académica y empresarial, a fin de ser puesto
en práctica de forma eficiente.

Desde otro punto de vista, encuestas más recientes sobre redes neuronales profundas con
aplicación de aprendizaje profundo muestran las ventajas de aplicación de la red neuronal
profunda; entre ellas figuran las siguientes: (Bessis et al., 2011; Jang-Jaccard y Nepal, 2014;
Viegas et al., 2017; Abusitta et al., 2019; Aldweesh et al., 2019; da Costa et al., 2019; Mahdavifar
y Ghorbani, 2019; Ferrag et al., 2020).

10
Capítulo 1
______________________________________________________________________________

1.4 Preguntas de Investigación.


Wieringa (2014) expone que las preguntas de investigación buscan un conocimiento del contexto
y no mejorarlo; las preguntas de investigación de este proyecto son:

PI1 ¿Cuál es el estado del arte sobre Deep Learning en la detección de


intrusiones?
PI2 ¿Cómo construir y diseñar una arquitectura de Deep Learning en el
problema de detección y prevención de intrusiones?

PI3 ¿Cómo se validan las arquitecturas hibridas basadas en la prevención y


detección de intrusiones?

Contribución de las preguntas PI1.

La principal contribución de estas PI será una revisión sistemática sobre el estado del arte del
Deep Learning en el problema de detección y prevención de intrusiones; esta revisión ofrece un
punto de partida para brindar respuestas y soluciones a dicha problemática. Específicamente,
el estudio evaluará el estado del arte investigando los siguientes aspectos: (1) Cuáles son los
enfoques actuales y cómo se relacionan entre sí, (2) cómo se enfocan las redes neuronales
profundas para dar solución a esta problemática, (3) cuales son las características de los sistemas
de detección de intrusiones y las mayores afectaciones a las arquitecturas ciberfisicas, (4)
Técnicas, algoritmos y
métodos propuestos por la comunidad científica.

Contribución de la pregunta PI2.

La contribución de esta P2 se divide en dos partes: (1) Mediante un proceso de comunicación


con la comunidad científica ya que son grupos maduros, conformados por expertos, lo cual
permite: (a) Implementar arquitecturas que sobresalen por su potencial, velocidad, precisión,
confiabilidad y facilidad de entrenamiento; (b) Disponer de información tecnológica y científica
más actualizada existente necesaria para tomar decisiones; (c) Intercambio de código técnicas
y algoritmos como de experiencias en torno a la ciberseguridad. (2) Revisión de literatura en
este tópico que permita identificar: (a) Técnica y algoritmo en la detección de intrusiones, (b)
Arquitecturas de impacto sobre redes neuronales profundas aplicadas en la ciberseguridad.

Contribución de la pregunta PI3.

La respuesta a estas preguntas ofrece una validación en un contexto controlado basado en


métricas de detección de intrusiones. Para esta pregunta se propone utilizar Technical Action
Research que permita la validación en contexto de un prototipo del artefacto, (en este caso redes

11
Capítulo 1
______________________________________________________________________________

neuronales profundas) en compañía del Director de Tesis, experto en ciberseguridad, perteneciente


al grupo de investigación GITIR de la Universidad de Caldas, con validación y vinculación
al grupo de investigación GAIA de la Universidad Nacional de Colombia como supervisor el
Doctor Néstor Darío Duque Méndez en el proyecto Prototipo para Deteccion de ataques
de DDoS (Denegación de Servicios Distribuida) basada en aprendizaje de maquina en una
arquitectura orientada a servicios en la nube.

1.5 Objetivos.
1.5.1 Objetivo de Investigación.

El objetivo principal de este proyecto es:

OI: Implementar un prototipo de arquitectura Deep learning aplicado a la detección de


intrusiones.

Debido a que en un proyecto en donde se usa la metodología “Design science” existe una
interacción entre diseño e investigación, el objetivo de investigación puede refinarse en objetivos
de diseño y objetivos de conocimiento. Los primeros hacen referencia al mejoramiento del “mundo
real” con el (re)diseño de artefactos que solucionan un problema en un contexto específico y los
segundos se refieren a ideas o hipótesis acerca del mundo (contexto) Wieringa (2014).

1.5.2 Objetivo de Diseño.

En “Design Science” los objetivos de diseño son, por lo general, objetivos de mejoramiento o
diseño de artefactos para un contexto específico Wieringa (2014). Los objetivos de diseño de este
proyecto son:

OD1 Diseñar e implementar arquitecturas híbridas a partir del estado del arte del
Deep learning en la detección intrusiones.

1.5.3 Objetivos de conocimiento.

Los objetivos de conocimiento según (Wieringa), agrupan una serie de preguntas de


investigación.

12
Capítulo 1
______________________________________________________________________________

Los objetivos de conocimiento de esta propuesta de tesis son:

OC1 Explorar el estado del arte del Deep learning en la detección de intrusiones.

OC2 Experimentar arquitecturas de impacto de la comunidad científica que usen


Deep learning en el problema de detección de intrusiones.

OC3 Validar arquitecturas híbridas con base en métricas de detección de


intrusiones.

1.5.4 Enfoque metodológico Desing Science.

El enfoque metodológico a utilizar en el desarrollo es mixto, es decir, con elementos tanto


cualitativos como cuantitativos y la metodología a utilizar es “Design Science”, cuyo objeto de
estudio es el diseño e investigación de artefactos en contexto como establece el autor Wieringa
(2014). En la Figura 1 se presenta la jerarquía objetivo-problema de investigación que propone la
metodología a utilizar.

Figura 1: Jerarquía objetivo-problema de investigación Desing Science.

13
Capítulo 1
______________________________________________________________________________

1.5.5 Problema de diseño.

Como se muestra en la figura 1, tomada y adaptada de Wieringa (2014) los objetivos de diseño
se definen en términos de problemas de diseño, que llaman a un cambio en el mundo real y son
evaluados por su utilidad. Los problemas de diseño de este proyecto son:

PD1 ¿Cómo diseñar e implementar arquitecturas hibridas a partir del estado del
arte del Deep Learning en el problema de detección y prevención de ataques e
intrusiones?

1.5.6 Metodología.

La metodología a utilizar para este proyecto es “Design science” cuyo objeto investigativo es
“un artefacto1 en un contexto2” y las dos principales actividades son: “diseñar e investigar este
artefacto en contexto” (Wieringa, 2014).

El diseño de un artefacto hace referencia a todas las etapas para la creación del artefacto, desde su
concepción hasta la construcción de este.

Figura 2: Ciclos Design Science.


Ciclo de Diseño: La figura 2, tomada y adaptada de Wieringa (2014) presenta la relación existente
entre los dos ciclos en donde se debe hacer un ciclo de diseño para cada uno de los artefactos del
proyecto.

Es importante recalcar que, cuando se habla de “las partes interesadas” (stakeholders), se refiere
a todas aquellas personas que de alguna u otra manera se ven “afectadas” o están relacionadas con
el proyecto directa o indirectamente, desde el punto de vista del diseño de los artefactos (Usuarios,
Empresas). No hace referencia a los investigadores.

1
Redes neuronales profundas.
2
Ciberseguridad y detección de intrusiones.

14
Capítulo 1
______________________________________________________________________________

En el problema de investigación se debe identificar, desde el enfoque de los objetivos de diseño


de las partes interesadas, cuál es el fenómeno que debe mejorarse y por qué. La segunda fase el
diseño del tratamiento hace referencia al diseño del artefacto identificando en qué contribuye al
logro de los objetivos propuestos; el proceso interno de diseño dependerá del artefacto que se vaya
a diseñar. La tercera etapa es la validación la cual, para el diseño de nuevos artefactos, como es
nuestro caso, se refiere a la validación en un contexto simulado o en un entorno real pero
controlado en el que se usan prototipos del artefacto (Wieringa, 2014).

Ciclo empírico: Este ciclo proporciona las respuestas a las preguntas de investigación acerca de
un artefacto en el contexto.

Estas actividades se realizan para cada ciclo y su especificidad depende del tipo pregunta a
responder y del artefacto a utilizar.

En resumen, la metodología ciencia del diseño “Design Science” permite la elaboración de un


artefacto principal mediante el diseño (Red Neuronal profunda) que será utilizado en un contexto
específico (Ciberseguridad en prevención y detección de intrusiones) y la resolución de preguntas
de investigación sobre el impacto de este artefacto en el problema a solucionar en el contexto,
mediante la realización de investigación empírica, a través de: revisión sistemática, entrevista y
caso de estudio.

Ciclos para el desarrollo de proyecto: Para alcanzar el objetivo general se realizará un ciclo
empírico el cual se subdivide en 6 ciclos (4 empíricos y 2 de diseño):

Ciclo empírico 1: Para lograr el objetivo específico 1


Ciclo empírico 2: Para lograr el objetivo específico 2
Ciclo de diseño 1: Para lograr el objetivo específico 2
Ciclo de diseño 2: Para lograr el objetivo específico 3
Ciclo empírico 3: Para lograr el objetivo específico 2
Ciclo empírico 4: Para lograr el objetivo específico 3

15
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

Capítulo 2: Marco teórico y Estado del Arte.

2.1 Sistemas de detección de intrusiones.

2.1.1 Basados en host.

HIDS significa "sistema de detección de intrusiones en host", una aplicación que monitorea una
computadora o red para detectar actividad sospechosa; esto puede incluir la intrusión de actores
externos así como el mal uso de recursos o datos por parte de actores internos.(Subba y Gupta,
2021)

Las herramientas HIDS monitorean los archivos de registro generados por sus aplicaciones y
crean un registro histórico de actividad y funcionalidad para buscar rápidamente anomalías y
signos de posibles alteraciones; también compilan sus archivos de registro y les permiten
organizarlos de manera que se adapten a la estructura de directorios de su servidor de archivos de
registro y así encontrar u ordenar fácilmente los archivos por aplicación, fecha u otras métricas.

La función principal de las herramientas HIDS es la detección automatizada, lo que ahorra la


necesidad de clasificar los archivos de registro en busca de comportamientos inusuales, una vez
que estén organizados y compilados. Los HIDS usan reglas y pautas, algunas de las cuales están
preestablecidas, aunque generalmente se pueden cambiar y actualizar para adaptarse a las
necesidades específicas de la organización para buscar sus archivos de registro y etiquetar aquellos
con eventos o actividades que determinaron las reglas, lo cual podría indicar un comportamiento
potencialmente malicioso.

2.1.2 Basados en anomalías o comportamiento.

En la identificación de comportamiento anómalo, el IDS examina las violaciones e


interrupciones en una organización conectada en red, observando los registros de la red corporativa
y decidiendo si el tráfico de paquetes parece extraño o se desvía de la forma típica de
comportamiento de los sistemas informáticos de la organización.(Huang et al., 2021).

Esta estrategia también puede distinguir los ataques cibernéticos desconocidos, además, utilizar
las técnicas del aprendizaje de máquina para crear un modelo fiable entregando etiquetas benignas
o anómalas según la clasificación de los vectores de ataque con la que fue entrenada.

La “detección de anomalías” se basa en otro principio: Este método de análisis asume que el
acceso no autorizado provoca un comportamiento anormal del sistema y se desvía de los valores
estándar definidos previamente. Por ejemplo, el analizador se puede configurar para activar una

16
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
alerta si la carga de la CPU o la tasa de acceso a la página exceden un cierto valor (enfoque
estático); también permite incluir en su evaluación la secuencia cronológica de eventos (enfoque
lógico). Aunque la detección de anomalías detecta ataques nuevos y desconocidos, este método de
detección activa genera alertas en ciertos casos de condiciones inusuales del sistema que no son
causadas por un pirata informático o un ataque.

2.1.3 Basado en uso indebido.

IDS conductual analiza todo el uso de recursos en busca de anomalías, lo que suele ser un signo
positivo de actividad maliciosa. Algunos IDS son servicios independientes que se ejecutan en
segundo plano y escuchan pasivamente toda la actividad, registrando cualquier paquete
sospechoso proveniente del exterior; otros combinan herramientas de sistema estándar,
configuraciones modificadas y registros comentados con la experiencia y la intuición del
administrador para crear una poderosa herramienta de detección de intrusiones.

Los IDS protegen los sistemas contra los ataques, mal uso y compromiso; permiten monitorear
la actividad de la red, analizar el sistema y las configuraciones de la red en busca de
vulnerabilidades y examinar la integridad de la información.

En caso de “Detección de uso indebido", el analizador intenta reconocer patrones de ataque


conocidos, llamados firmas en los datos recibidos, el cual se deposita en una base de datos separada
(una biblioteca de firmas) que luego se actualiza periódicamente. Para cada firma, las entradas de
la base de datos también proporcionan información sobre la gravedad del ataque; sin embargo, un
patrón de acceso que no se almacena en la biblioteca de firmas permanece oculto a este método de
detección.

2.1.4 Basados en red.

La creciente interconexión de redes de área local con Internet ha requerido un mayor desarrollo
de la técnica IDS. En primer lugar, el enfoque basado en host no era adecuado para los flujos de
datos complejos y flexibles de Internet; en segundo lugar, ya no era necesario que los ataques
estuvieran físicamente cerca del sistema de destino, sino que podían ser realizados por clientes
muy remotos repartidos por la red. Como el acceso no autorizado desde la web es necesariamente
a través de TCP / IP o del protocolo de datagramas de usuario (UDP), los sistemas basados en red
ya no verifican los datos de auditoría, sino que verifican los paquetes IP, por lo que estaban
estrechamente relacionados con el cortafuegos utilizado. Sin embargo, representaban una unidad
central de monitoreo que no se limitaba a proteger un solo sistema, por lo que podía monitorear
todo el tráfico de datos en la red.

17
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
2.1.5 Taxonomía de los sistemas de detección de intrusiones.

Figura 3: Taxonomía de clasificación de los sistemas de detección de intrusiones.


En la figura 3 se observa la clasificación de los IDS relacionada con el tipo de estrategias, la
fuente de información, la arquitectura, la respuesta y el tiempo de predicción. El uso del sistema
de detección de intrusiones como parte de su sistema de protección, es de gran importancia y está
aplicado en toda su red de distinta forma. El IDS captura eventos instantáneos de toda la
infraestructura informática y luego recopila patrones predeterminados para informar cuándo está
ocurriendo una violación a la infraestructura o un suceso anómalo.

IDS activos y pasivos.

IDS activo: Actualmente más conocido como un sistema preventivo de intrusiones IPS, es un
marco diseñado para impedir consecuentemente ataques sospechosos en actividad con casi
ninguna mediación esperada por un administrador. El IPS goza de la ventaja de dar una actividad
de acción correctiva durante la actividad anómala; debe establecerse en línea a lo largo de un límite
de la organización conectada a la red informática, posteriormente el IPS real es vulnerable a ser
atacado. Además, si una falsa alarma y el tráfico real no se han identificado y filtrado
correctamente, es posible que se les niegue el acceso a los usuarios autorizados y las aplicaciones.
Finalmente, el propio IPS puede usarse para generar una posible Denegación de Servicio (DoS) al
inundar de manera intencional el sistema con alertas que bloquee las comunicaciones en los nodos
de red disminuyendo la capacidad de trasferencia de datos en la infraestructura de red.

IDS pasivo: Un sistema diseñado exclusivamente para filtrar y diseccionar el movimiento del
tráfico de la red y advertir a un administrador de posibles debilidades y anomalías; no es apto para

18
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
desempeñar ninguna función protectora o correctiva por sí solo. Las principales ventajas de los
IDS pasivos se refieren a la implementación es sencilla y rápida, por lo general, no es propenso de
ser atacados por sí mismos a continuación, se muestra la tabla 1 con ventajas y desventajas de los
IDS en red y host.

Tabla 1:Ventaja y desventaja de los IDS de red y host.

Tipos Ventajas Desventajas


IDS Identifica el uso inadecuado de los No puede ser compatible para
basados equipos internos de una organización monitorear diferentes
en host (Moon et al., 2016). plataformas, por ejemplo,
llamadas a API para Linux y DLL
para sistemas operativos
Windows (Kholidy y Baiardi,
2012).

También se utiliza cuando la carga útil de Se puede exponer tan pronto


la red se encriptó u ofuscó utilizando como su servidor host se vea
técnicas metamórficas o algunas técnicas comprometido por un atacante
de evasión como la fragmentación (Moon et al., 2016).
(Kholidy y Baiardi, 2012; Moon et al.,
2016). Tampoco es una buena solución
en el caso de los gusanos de día
cero de propagación
rápida.(Moon et al., 2016).

Controla el tráfico de red solo en un No puede manejar fácilmente


IDS determinado tramo de la red, sistemas escalables, ya que las
basados independientemente del tipo de sistema redes conectadas de alta
en red operativo del destino(Moon et al., 2016; velocidad se han convertido en la
Peng et al., 2016). norma de las redes actuales
(Bhuyan et al., 2014).
Puede capturar información de los
encabezados de paquetes así como la
carga útil de paquetes si no está
encriptada.(Peng et al., 2016).

Es bastante portátil, ya que controla el No puede procesar datos cifrados,


tráfico de red solo en una porción de red ya que solo puede capturar
determinado (Peng et al., 2016). información de los encabezados
de paquetes (Kumar et al., 2012).
Se puede instalar en una red y sus datos
se recopilan fácilmente, lo que es
beneficioso en algunas situaciones; por
ejemplo, siguiendo la topología de la red
(Peng et al., 2016).

19
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

2.2 Aprendizaje Automático (Machine Learning).


El aprendizaje automático es una técnica de analítica de la información que de forma automática
es posible estructurar los modelos lógicos; el aprendizaje automático puede sustraer información
conforme pasan las épocas de entrenamiento, reconocer ejemplos y tomar decisiones con una
mediación humana baja.

Con relación en las diversas técnicas del aprendizaje automático, éstas han permitido una
identificación de los diferentes ataques de la red optimizando los recursos disponibles de tiempo,
velocidad y precisión tal como lo indica Chabathula et al. (2015). De este modo, la aplicación del
aprendizaje automático a la seguridad de la red es un campo tan nuevo como creciente, con la
promesa de proporcionar herramientas y metodologías útiles para abordar muchos problemas de
seguridad, tal como se muestra en (Tabla 2), referida a los diversos tipos de redes neuronales a
través del Machine Learning.

De acuerdo con las explicaciones de Blowers y Williams (2014), en términos de ciencia de redes
y ciberseguridad, el reto está en la capacidad de percibir, descubrir y prevenir acciones o eventos
maliciosos dentro de la red. Es evidente que la cantidad de tipos de datos sobre el tráfico de
información ha sido constante ya que el aprendizaje automatizado es un segmento de la
Inteligencia Artificial cuyo objetivo es el estudio de métodos y técnicas en programación de
computadores para aprender, donde el aprendizaje es la ciencia de lograr que las computadoras
actúen sin estar programadas explícitamente; este aprendizaje puede ser supervisado, no
supervisado o por refuerzo y se explica de la siguiente manera:

Aprendizaje supervisado: Es un método de análisis de datos que utiliza algoritmos que aprenden
iterativamente de los datos para permitir que las computadoras encuentren información oculta sin
estar programadas explícitamente para saber dónde buscar.

Aprendizaje no supervisado: Se presenta a la red un conjunto de patrones de entrada, sin


información disponible sobre la salida esperada. El proceso de entrenamiento en este caso deberá
ajustar sus pesos con base en la correlación existente entre los datos de entrada.

Aprendizaje por refuerzo: Se refiere a un método de aprendizaje automático en el que el


algoritmo aprende a identificar patrones y conexiones en los datos de forma independiente y sin
supervisión. Los datos de entrada no están etiquetados aquí y no tienen una variable objetivo
especificada, es decir, los datos de salida deseados no están especificados.

Las redes neuronales se pueden utilizar para interpretar diversas fuentes de datos, como
imágenes, sonidos, textos, tablas o series temporales, y para extraer información o patrones para
aplicarlos a datos desconocidos. De esta manera, se pueden hacer predicciones basadas en datos.

20
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
Las redes neuronales artificiales pueden tener una complejidad variable, pero esencialmente tienen
estructuras de grafos dirigidos; cuando una red neuronal artificial tiene estructuras de red
particularmente profundas, esto se conoce como aprendizaje profundo.

Tabla 2: Machine Learning.

IDS Arquitectura Tipo Observaciones Referencias


Detección Red Convolucional. Aprende de las características Lin et al.
de Neuronal. basadas en comportamientos (2018b)
intrusiones. anormales, generalmente una CNN
consiste en una entrada de imagen y
la capa con salida de clasificación con
múltiples capas ocultas.

Recurrente. Está entrenada por un algoritmo de Chowdhury


entrenamiento back propagation y kashem
propagación hacia atrás utilizando (2008)
datos normales. El rendimiento de
estas redes neuronales se compara
con los datos normales y los datos
intrusivos.

Híbrida. Un sistema neuronal híbrido es la Aziz et al.


combinación de múltiples técnicas (2013)
de aprendizaje automatizado para
obtener una mejoría en el
rendimiento cuando se trabaja con
datos de alta dimensión y problemas
de clasificación.

Profunda. Las capas superiores aprenden Mhaskar y


características de nivel superior Poggio
derivadas de los patrones y el (2016)
conocimiento de las capas inferiores.

Mapa Auto-organizado. Son redes de avance de una sola capa Wu y


donde las salidas se agrupan en una Banzhaf
cuadrícula de baja dimensión (2010)
(generalmente 2D o 3D), utilizan
SOM para aprender patrones de
actividades normales del sistema.

21
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
2.2.1 Técnicas convencionales de machine learning

Regresión logística: Este algoritmo se implementó en las primeras investigaciones en sistemas de


detección de intrusiones aportando unas buenas métricas sin embargo los dataset han crecido en
número de instancias y de características para acercarse a modelos más ajustados a tráfico en
tiempo real y es ahí donde estos algoritmos tradicionales quedan cortos por el tamaño significativo
del dataset y la compleja estructura que se forma en la representación de los datos.

Aunque se emplean técnicas de reducción de características y fraccionamiento de instancias para


lograr mejores métricas, los modelos puestos en validación decaen mucho sus métricas frente a los
valores reales esperados y se crea un sesgo al sector benigno, ya que este tiene mayor
representación en los datos.

K vecinos cercanos: ha sido un algoritmo importante en la clasificación y detección de intrusiones


debido a las agrupaciones que se proponen en este algoritmo dividiendo en número de cluster por
clase de ataque, sin embargo, al incrementar el número de clases a predecir aumenta el costo
computacional debido a que calcula cada punto a su cluster más cercano y el costo computacional
se vuelve más complejo al tener más datos con mayor número de características de tiempo real.

Naive Bayes multinomial: Para implementar este algoritmo y tener unos resultados medios o
buenos se requiere reducción basado en la importancia de las características para mejorar un poco
el rendimiento, esto conduce a mucha perdida de datos y a la poca capacidad de reconocer ataques
modernos que tiene muchas características que son importantes y que no son medibles entre sí,
aquí es donde está el punto débil.

Naive Bayes gaussiano: Este algoritmo implementa el enfoque gaussiano que también requiere
una disminución importante en atributos y cuando se pasan a gran cantidad de atributos los tiende
a predecir como benigno para demostrar que el algoritmo tiene buenas métricas, pero solo es capaz
de detectar el que mayor proporción de datos tiene y la mayoría de dataset en detección de
intrusiones son desbalanceados y de alta dimensión.

Máquina de soporte vectorial: Este es un algoritmo muy destacado que ha logrado una
importancia relevante en la detección de intrusiones debido a sus excelentes comportamientos,
aunque actualmente está llegando un poco a su límite debido al cálculo vectorial por cada instancia
y entre más instancias se vuelve más lento, debido a la similitud de algunas clases de ataques se
tiende a predecir otras clases cercanas que al valor real esperado.

22
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

2.3 Red neural convolucional.


Una red neuronal convolucional (CNN) es de tipología de red profunda que aprende de las
características, basada en comportamientos anormales; generalmente una CNN consiste en una
entrada de imagen y una capa con salida de clasificación con múltiples capas ocultas.

Lin et al. (2018b) indica que entrenar una CNN con Tensor-Flow desarrollado por Google extrae
las características de comportamiento, identificando las amenazas con la función Softmax en uso
de datos estadísticos recopilados, lo cual permite mejorías en la precisión de la predicción y
clasificación de detección de amenazas y reducir su tasa de falsos positivos para NIDS, basado en
un comportamiento mejorado para la detección de anomalías de red. En la Tabla 3 se muestran las
técnicas de las CNN.

Como plantean Tao et al. (2020), la CNN convierte el flujo de datos en imágenes a escala de
grises para clasificar los modos de intrusión, donde la problemáticas de detección de intrusiones
se transforma en un problema de reconocimiento de imágenes, tal como se puede apreciar en la
figura 5 tomada y adaptada de (Lin et al., 2018b).

Una red neuronal convolucional, es una estructura de red multicapa que evoluciona del método
tradicional de red neuronal, también conocido como perceptrón multicapa. La red neuronal de
convolución incluye la capa de entrada, la capa de convolución, la capa de agrupación, la capa de
conexión completa y la capa de salida. Puede llevar a cabo la extracción de características, según
lo indica la figura 4 tomada y adaptada de (Lin et al., 2018b) y el mapeo a través de un
entrenamiento rápido; tiene además una alta precisión de predicción, por lo que a menudo se aplica
a la clasificación y la predicción.

Figura 4: Concepto básico de detección de intrusiones en la red neuronal convolucional.


Tomada de: (Lin et al., 2018b)

23
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

Figura 5 : El modelo para la clasificación de amenazas de red.


Tomado de :(Lin et al., 2018b)

Tabla 3: Técnicas en redes neuronales convolucionales en la detección de intrusiones.

Software para Técnica Tasa de Data-set Referencia


entrenamiento detección
No especifica Convierte el data-set NSL-kdd 81,12% NSL-KDD. (Lin et al., 2018a)
en un conjunto de carácter
binario.

Tensor-Flow Convierte el data-set 99.65% KKDcup99 (Lin et al., 2018b)


KDDcup99 en símbolos de
paquetes de una red, la
normalización de los datos
numéricos, la conversión de
características a una matriz de
imágenes. Finalmente, las
imágenes de entrada se
normalizaron a un tamaño de
32 × 32 Pixeles.

Tensor-Flow Nuevo método que consiste en 83.49% KDDcup99 (Wu et al., 2018)
una capa inicial oculta y una
capa de salida. La capa de
entrada tiene 122 nodos. La
capa oculta tiene 80 nodos. La
capa de salida tiene 5 nodos
Entonces el número de
parámetros es:
10160 = 122∗80 + 80∗5.

24
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
Continuación Tabla 2
Software para Técnica Tasa de detección Data-set Referencia
entrenamiento
Keras Los atributos característicos 94.0%, KDDcup99 (Xiao et al.,
simbólicos en los conjuntos 2019)
de datos KDD se digitalizan y
normalizan para obtener el
conjunto de datos
estandarizados. Después de
que una agrupación de datos
este estandarizado
experimentan una reducción
de dimensiones, luego la
conexión en la red neuronal
se establece utiliza la capa
conectada totalmente. El
número de épocas de
iteración es 20 y el tamaño de
lote máximo es 128 para cada
entrenamiento.

No especifica La cantidad de nodos de la No especifica % pero Libpcab / (Deng y Qiao,


capa en la entrada de la red establece lo siguiente: TCP o 2016)
neuronal corresponde a 164, Cada grupo tenía 300 Libpcab /
concerniente a la muestra de anomalías y 300 snort
entrenamiento del vector de comportamientos
164 bits. Según la experiencia normales; sus
de los investigadores, el resultados fueron 285
número de nodo de la capa detecciones normales,
implícita seleccionaron 85, la 35 falsos positivos y
capa de salida usando los tres 280 detecciones
nodos, la velocidad de anómalas para un
aprendizaje inicial η se total de 600.
establece en 0.6,

Tensor-Flow Una capa de entrada toma No especifica% pero KDDCup (Vinayakumar


datos de forma 41 * 1 y pasa entreno con 99 y NSL- et al., 2017)
a CNN. Una CNN construye KDDcup99 y realizó KDD
un tensor de forma 41 * 1 * 64 una simulación de
(64 denota el número de ataques con dataset
filtros) pasa a la capa de NSL-KDD
agrupación máxima. Reduce
la forma del tensor en 20 * 1
* 64. para capturar los
patrones temporales.

25
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

2.4 Red neuronal recurrente.

De acuerdo con la Tabla 4, una red neuronal recurrente (RNN) es la extensión de una red
neuronal de alimentación convencional directa que hace uso de la información secuencial. A la
RNN se le describe recurrente porque utiliza una tarea idéntica para cada elemento de la secuencia
y respuesta de salida es dependiente de los cálculos realizados con anterioridad. Makawana y
Jhaveri (2018); Tang et al. (2018) establecen que el algoritmo de Backpropagation Through Time
(BPTT) se utiliza para entrenar el RNN. Sin embargo, el RNN tradicional encuentra problemas de
degradación / desaparición; para solucionar este problema se propusieron redes de Memoria a
Corto Plazo (LSTM) y Unidades Recurrentes Bloqueadas (GRU).

Tabla 4: Técnicas de redes neuronales recurrentes en la detección de intrusiones.

Software para Técnica Tasa de Data-set Referencia


entrenamiento detección
Theano 80 nodos 83.28% NSL-KDD (Yin et al.,
ocultos y la tasa 2017)
de aprendizaje
en 0.1

Keras y Tensor- Este método 98.5% ISCX 2012 (Hao et al.,


Flow con procesa los 2019)
aceleración paquetes de red
GPU en una matriz de
28 * 28.

Keras con El número 94% Virus Total (Rhode et al.,


aceleración establecido de 2018)
GPU neuronas
ocultas fue de
50 o más en
cada capa para
dar una mejor
precisión.

HTTP Apache La memoria a No especifica NGIDS-DS (Nikolov et al.,


largo plazo %, 215 casos 2018)
(LSTM) y la positivos y
unidad 10456
recurrente negativos
cerrada.

26
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

2.5 Red neuronal híbrida.


En una red neuronal híbrida, Aziz et al. (2013) mencionan que consiste en dos fases: La fase
inicial clasificara el tráfico en normal y anómalo, la segunda fase implica el uso de clasificadores
para etiquetar las anomalías detectadas con su clase correcta o descubrir que originalmente era
normal pero que se clasificó erróneamente como anomalía.

Un sistema híbrido, según la Tabla 5, es la combinación de múltiples técnicas de aprendizaje


automatizado para alcanzar un rendimiento mayor que el obtenido al aplicar una sola técnica. Esta
integración de técnicas en un modelo híbrido obtiene como resultado métodos de búsqueda y
razonamiento más inteligentes para diferentes conocimientos de dominio. Esto es especialmente
aplicable cuando se trabaja con datos de alta dimensión y problemas de clasificación.

Tabla 5: Técnica de red neuronal hibrida en la detección de intrusiones.

Software para Técnica Tasa de Data-set Referencia


entrenamiento detección
No especifica. La red neuronal RBF está Los 390 casos KDD-cup99 (Lin et al.,
compuesta por 6 nodos de entrada, recopilados 2010)
10 nodos ocultos y 5 nodos de incluyen 200 datos
salida. normales, 50 datos
de fallas de la
sonda, 40 datos de
fallas U2R, 50
datos de fallas DoS
y 50 datos de fallas
R2L.

No especifica. Algoritmo de luciérnaga (FA) es un 97% KDD-cup99 (Tiwari et al.,


algoritmo meta-heurístico, 2013)
inspirado en el comportamiento de
destello de las luciérnagas.

No especifica. El módulo de identificación de 96% DARPA1999 (Zhou, 2009)


anomalías basadas en el sistema
inmune artificial (AIS) y el módulo
de identificación de uso indebido
basado en clasificadores de una red
neuronal con análisis de principales
componentes (PCANN).

NetBeans IDE 8.2 + Red Neural de Propagación Atrás 97.2% KDDcup99 (Chiba et al.,
JDK (BPNN) utilizando un novedoso 2018)
Marco Híbrido (GASAA) basado en
Algoritmo Genético (GA) mejorado
y Algoritmo de Recocido Simulado
(SAA).

27
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

2.6 Red neuronal profunda.

Kim y Gofman (2018) refieren que las redes neuronales profundas sobresalen en tareas
altamente complejas con grandes datos de entrada y una alta dimensionalidad, siendo Mhaskar y
Poggio (2016) quienes plantean que las capas superiores aprenden características de nivel superior
derivadas de los patrones y el conocimiento de las capas inferiores. Esto crea un aprendizaje que
depende de la capa donde las funciones matemáticas de cada capa inferior se reutilizan para
solucionar problemáticas más complejas.

Los modelos de redes neuronales profundas más utilizados, según figura 6, son capaces de
aprender características espaciales y temporales efectivas, respectivamente. En las redes
neuronales comunes, como se aprecia en las tablas 6 y 7, cada nodo neuronal de cada capa oculta,
suma los valores ponderados provenientes de la capa anterior, aplica una transformación no lineal
y transfiere los valores resultantes a la siguiente capa. El valor de salida de la última capa puede
considerarse como la representación o característica aprendida por las redes neuronales a desde
los datos que entran al modelo neuronal profundo.

Figura 6: Red neuronal profunda.

28
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
Tabla 6: Técnicas de Redes neuronales profundas en la detección de intrusiones.
Software para Técnica Tasa de Data-set Tiempo Referencia
entrenamiento detección
Keras con un fondo Fueron entrenados en la 85% y 89% NSL-KDD en Al evaluar el conjunto de (Naseer et al.,
theano con versión de Unraveld de entrenamiento y datos 8 segundos según el 2018)
aceleración de GPU Training Datasets. Los KDDTest + con modelo IDS. Los dos
algoritmos de clasificación NSLKDDTest21 mejores modelos de DNN,
incluyen Extreme Machine en pruebas. tomaron aproximadamente
Learning con capa oculta 2 y 4 segundos para
generalizada, Árbol de NSLKDDTest + y 1
decisiones (J48) con 10 segundo para la base de
nodos de profundidad. datos NSLKDDTest21.

Keras y TensorFlow Entrenaron Reducción de Darpa 1998 Tiempos de entrenamiento (Wang et al.,
con aceleración de automáticamente falsas y prueba en HAST-IDS 2018)
GPU características jerárquicas alarmas en para todo el conjunto de
espacio-temporales un 40% datos DARPA1998 son 58
directamente de datos de min (3,533 s) y 1,7 min
tráfico de red sin procesar. (103 s).

MATLAB R2010a Los datos sin procesar se 96% KDDcup99 Entrenamiento (Zhao et al.,
convierten en datos de baja 5.71s, optimización 5.48s 2017)
dimensión mediante el uso Pruebas 35.38 s
de la capacidad de
aprendizaje no lineal.
Segundo, se utiliza un
algoritmo que optimiza el
enjambre de partículas que
permite mejorar el número
de nodos de capa oculta por
capa.

The Chainer con Diseñaron e implementaron No KDDcup99 No especifica (Ishitaki et al.,


lógica de TorWard, que integra un específica%; 2017)
programación en IDS en los enrutadores de La finalidad
Python. salida Tor para el es evitar
descubrimiento y la ataques como
clasificación del tráfico DDoS o robo
malicioso Tor. de identidad
detrás de Tor

Keras con Implementaron un 89% NSL-KDD No especifica (Tang et al.,


aceleración GPU optimizador de Nadam y un 2018)
error cuadrático medio
(MSE) para el modelo.

Tensor-Flow con Usó el optimizador de 99%. KDDcup99 Menor a 1 s en fase de (Jin et al.,
aceleración GPU momento adaptativo entrenamiento 2017)
(Adam), un método de
optimización estocástica
para el aprendizaje de DNN.
Tensor-Flow con Utilizó un descenso en el 99.42% KDDcup99 y Menor o igual a 1 s en fase (Xu et al.,
aceleración GPU gradiente estocástico (SGD) NSL-KDD de entrenamiento 2018)
y para mejorar la eficiencia
utilizo la función de error de
mínimo cuadrado (MSE)
con perceptrón multicapa.

lenguaje Python, Uso tratamiento de dataset 98.7% NSL-KDD Test 1 1.56 min (Woo et al.,
Keras API con Weka una herramienta Test 2 1.99 min 2019)
de minería de datos y Test 3 1.42 min
considero 5 capas ocultas.

29
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
Tabla 7: Técnicas de Redes neuronales profundas en la detección de intrusiones con dataset más
recientes.
Software para Técnica Tasa de Data-set Tiempo Referencia
entrenamiento detección
Tensorflow Metodología híbrida de dos El modelo alcanzó una KDDCup99, No especifica (Narayana Rao et
habilitado para GPU etapas, el autoencoder Sparse precisión del 99,98% y UNSW-NB15 al., 2021)
no supervisado (SAE) con una tasa en la detección y NSL-KDD.
regularización l1 suavizadala del 99,99% en el dataset
segunda etapa, se utilizó la UNSW-NB15.
Red Neural Profunda (DNN)
para predecir y clasificar
ataques

MATLAB® 2018b 2 capas neuronales, 26, Tasa de detección KDD Cup'99 No especifica (Almiani et al.,
24,24,24,22,16,16,10,4,2,1, 95,34%, Precisión 2020)
con 200 iteraciones, con 92,42%, Precisión
algoritmo de retropopagacion 90,30%, Tasa de falsos
positivos 10,06%
,Coeficiente de
correlación de Mateo
0,8496, Kappa К de
Cohen 0,8482

MATLAB R2017b La capa superior en la entrada KDD Cup99, la KDD Cup99 No especifica (Wang et al., 2021)
contiene 41 neuronas, la capa precisión del algoritmo
densa u oculta puede contener es superior al 93%
32, 64, 128, 256 y 512
unidades, y la capa de salida
contiene 1 unidad

Tensorflow 1.x. En la Fase de aprendizaje 2 se Una precisión de KDDCup No especifica (Singh et al., 2021)
Tensorflow 1.15.2 evalúan TL-4GRU-2 y Base- evaluación de clases UNSW-
4GRU, TL-3GRU-1 En la fase múltiples del 99,92% en NB15,99,
de aprendizaje 3, se evalúa el conjunto de datos
WideDeep. WideDeep ofrece KDDCup 99 (10%) y
un rendimiento máximo del 94,22% en el
después de entrenarlo solo conjunto de datos
durante unas pocas épocas (1, UNSW-NB15,
2, 3, 4, 5 o 6).

Keras 2.3 3 , una Cada arquitectura de KDDCUP_99 KDDCUP99, 3 horas de (Andresini et al.,
API de red neuronal codificador automático consta Autoencoder AAGM17 y entrenamiento 2021)
de alto nivel con de 3 capas deneuronas y una D M L + 93.5% CICIDS2017. y validación
TensorFlow como capa de deserción para evitar 95.8%
back-end el fenómeno de sobreajuste. El A A G M 17
error cuadrático medio ( mse ) Autoencoder
se utiliza como función de D M L + 89.6%
pérdida. La unidad lineal 71.9%
rectificada clásica ( ReLu ) se CICIDS_17
selecciona como función de Autoencoder
activación para cada capa D M L + 98.2%
oculta, mientras que para la 95.7%
capa de salida se utiliza la
función de activación lineal .

Tensorflow Hiperparámetro Valor La red neuronal CSE-CIC- No especifica (Ferrag et al., 2020)
Tasa de aprendizaje (LR) profunda da la tasa IDS2018 y
0,01-0,5 negativa verdadera más 97,01% en el
Número de época 100 alta con 96,915% conjunto de
Nodos ocultos (HN) 15-100 datos Bot-IoT
Tamaño del lote 1000
Función de clasificación
SoftMax
Función de activación
Sigmoideo

30
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
2.6.1 Esquema matemático simplificado de una red neuronal profunda.

Figura 7: Esquema simplificado de una red neuronal.


Como se observa en la figura 7, los datos suministrados en la entrada son consumidos por cada
grupo de neuronas en la capa inicial, que proporcionan unas salidas a las neuronas interconectadas
que pertenecen a la capa siguiente y así secuencialmente hasta la última capa. La salida es una
predicción (representada en probabilidad). Cada capa puede alojar una o numerosas neuronas cada
una encargada de calcular una función pequeña. La función de activación limita la señal para pasar
a las siguientes neuronas conectadas; si las neuronas entrantes dan como resultado un valor mayor
que un umbral, la salida se pasa de lo contrario se ignora; cada conexión entre grupos de neuronas
por capa tiene asociado un peso.
El peso influye entre la entrada y salida de la siguiente neurona. En la red neuronal, las
ponderaciones iniciales serían todas aleatorias, pero durante el entrenamiento del modelo estas
ponderaciones se actualizan de forma iterativa para dar una predicción correcta en la salida. Al
diseñar la red podemos definir algunos parámetros e hiperparametros de diseño como el grupo de
neuronas, capas, pesos, los datos en la entrada, y el resultado esperado en la salida, cada función
de activación y finalmente un mecanismo de ganancia (optimizador) que ayudará a la red neuronal
a actualizar gradualmente los pesos (que se inicializaron aleatoriamente) a un peso más adecuado
que ayude a predecir correctamente el resultado.

2.6.2 Relu

La función de activación conocida como unidad lineal rectificada (ReLU) devuelve 0 cuando
la entrada es negativa, pero el valor especificado es positivo devuelve el cálculo que lo pasa a la

31
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
siguiente neurona, esto permite la interconexión, la sinapsis entre neuronas activando y
desactivando en función de sus entradas.

2.6.3 Softmax

La función softmax convierte un vector de K valores reales en un vector de K valores reales


que suman uno. El softmax traduce los valores de entrada que son positivos, negativos, cero o
superiores a uno en valores entre 0 y 1, lo que permite entenderlos como probabilidades, muy
conveniente para múltiples clases.

2.7 Mapa Auto-organizado.

Como indican Wu y Banzhaf (2010), los mapas auto-organizados (SOM), también conocidos
como mapas de Kohonen, como se puede apreciar en la Tabla 8, son redes de avance de una sola
capa donde las salidas se agrupan en una cuadrícula de baja dimensión (generalmente 2D o 3D).
Voegtlin y Dominey (2001) manifiestan que se conservan las relaciones topológicas de los datos
de entrada de acuerdo con su similitud.

Los SOM, en su momento, fueron las redes neuronales más populares que se capacitan para
tareas de detección de anomalías. Los primeros SOM emplearon la detección de virus en una
máquina multiusuario en 1990. Más tarde, otros investigadores como Hoglund et al. (2000); Wang
et al. (2006) utilizaron SOM para aprender patrones de actividades normales del sistema.

Sin embargo, los SOM también se han utilizado en la detección de uso indebido, donde un
SOM funcionó como un preprocesador de datos para agrupar los datos de entrada. Otros algoritmos
de clasificación, como las redes neuronales de avance, se entrenaron en la salida del SOM.

32
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________
Tabla 8: Técnica de mapa auto-organizado en detección de intrusiones.
Software Técnica Tasa de Dataset Referencia
detección
Network El enfoque se lleva a cabo 89% Black Hole y los (Kumar y
Simulator con la estructura lineal de apuñalamientos Radhakrishnan,
SOM que mapea los patrones de Gray Hole 2014)
dados en las unidades de
grupo disponibles. Hay un
total de 36 neuronas de salida
en el experimento.

No especifica El uso de un enfoque híbrido 97% KDDcup99 (De la Hoz et al.,


SOM_GMM en el 2015)
modelamiento de anomalías
y patrones, donde se produce
el rendimiento máximo para
una dimensión del mapa de 8
× 8 unidades (que es el área
máxima bajo la curva ROC)

2.8 Entrenamiento de redes neuronales.


Para entrenar una red neuronal se debe tener un ambiente de desarrollo Python para ejecutar
TensorFlow, el cual es la biblioteca principal basada en la licencia de software libre para cálculo
numérico y aprendizaje de máquinas; fue desarrollado originalmente por el grupo investigador de
Inteligencia de Máquina en la compañía tecnológica Google; organización con el propósito de
conducir el aprendizaje automatizado y las redes neuronales profundas.

De otra parte, Matlab a través del paquete Neural Network Toolbox, ofrece métodos tanto
orientados a scripts como basados en GUI para implementar redes neuronales, las cuales se
manejan en experimentación y desarrollo.

Para entrenar una red neuronal se utilizan unos dataset estándar con las 15 tipologías de ataques,
la red neuronal posee unas entradas con capas interconectadas y unas capas ocultas con una salida
de respuesta; la salida tiene un porcentaje de precisión en el aprendizaje y un porcentaje de error;
se dan varias iteraciones de entrenamiento hasta obtener el resultado esperado y luego lo que se
hace es guardar esa red en otro código; posteriormente se cargaría la red neuronal para utilizarla
como si fuera una librería o una función, pasándole entradas y obteniendo las predicciones.
Se sugieren los siguientes pasos: 1 Cargar datos, 2 Definir modelo, 3 Modelo de compilación, 4
Modelo de ajuste, 5 Evaluar modelo.

33
Capítulo 2 Marco teórico y estado del arte.
______________________________________________________________________________

2.9 Data set


Es un conjunto de datos etiquetados, necesarios para entrenar y evaluar IDS en la interconexión
de red basado en comportamiento anómalo, así como el método de detección de intrusiones no
supervisadas.

La partición de los datos de evaluación desempeña un papel vital en la validación de cualquier


enfoque de un IDS, al permitir valorar la capacidad del método propuesto para detectar
comportamientos intrusivos. Los datos usados para el análisis de paquetes de red en productos
comerciales no están fácilmente disponibles debido a problemas de privacidad. Sin embargo, hay
algunos conjuntos de datos disponibles y se utilizan ampliamente como puntos de referencia. Las
bases de datos disponibles que se utilizan para la construcción y la evaluación comparativa de los
sistemas de detección de intrusiones se mostraran continuación en la Tabla 8, donde se muestran
las desventajas y ventajas de los IDS. Los data-set más usados científicamente hacen referencia a
Darpa98 de (DARPA, 1998), KDDcup99 de (University of California Irvine KDD Cup 1999 Data,
1999), NSL-KDD de (Tavallaee; et al., 2009), Intrusion Detection Evaluation Dataset
CICIDS2017 de (Sharafaldin; et al., 2018), entre otros conjuntos de datos como lo da a conocer
(Ferrag et al., 2020) que son usados en menor proporción, ya que son tomados por un determinado
tiempo en el flujo de la red.

34
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________

Capítulo 3: Materiales y Métodos.

3.1 Recurso hardware y software.

Para el diseño y ejecución de esta investigación se contó con los equipos descritos en la Tabla
9, de propiedad de Google, mediante suscripción mensual para su uso. En un proyecto que requiere
un preprocesamiento de datos significativo, modelamientos e iteraciones, así como una flexibilidad
computacional general, tiene sentido invertir en equipos de alta capacidad, a fin de llevar la
presente investigación a buen término.

Tabla 9: Características de Hardware para diseño y ejecución.

Producto Características
Procesador. Intel Xeon. 2.30 Ghz, 40 Núcleos, 40 Hilos.
Memoria Ram. 38 Gb.
Almacenamiento 100 Gb
en la Nube.
GPU NVIDIA Tesla V100 16,16 Gb Vram, 5120 núcleos
CUDA
TPU V2-512 512 núcleos TPU, capacidad 4
TiB
Se utiliza en esta investigación un entorno colaborativo de Google Colab Pro que permite
trabajar con Notebooks de Jupyter y el lenguaje de programación de Python, ver Tabla 10 y trabajar
con datos que se tengan almacenados en el Drive. Las interfases de alto nivel de Tensor Flow están
bajo una estandarización de las API de Keras para diseñar, entrenar y probar redes neuronales,
Keras faculta la creación de prototipos de redes neuronales de una manera más ágil; sklearn, pandas
y numpy, admiten hacer visualización, tratamiento de los datos y aplicación de clasificadores
pertenecientes al aprendizaje de máquina.

Tabla 10: Características de Software para diseño y ejecución.

Python 3
Tensorflow 2.5.0
Scikit learn 0.22.2.post1
Pandas 1.1.5
Numpy 1.19.5
Keras 2.5.0
Google Colab PRO
Ubuntu 18.04.5 LTS (Bionic Beaver)
35
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
3.1.1 Tipos de ataques utilizados en el dataset CICIDS.

Para el propósito de esta investigación se ha hecho uso de la estructura y la taxonomía del


dataset CICIDS 2017 con algunas de sus instancias no obstante se han creado nuevos registros con
herramientas cicflowmeter donde se incluyen nuevos registros de denegación de servicios y
denegación de servicios distribuidos.

3.1.1.1 BENIGN: 2.359.087,

En todas las redes informáticas, un paquete de datos es la unidad básica de transporte de


información. Un paquete se compone de lo siguiente:
• Una cabecera: Que suele incluir los datos necesarios para transferir un paquete del emisor
al receptor.
• Área de datos (Payload): Los datos a transportar se encuentran en esta área (carga útil).
• La cola (Trailer): El tráiler suele contener código de corrección y detección de errores.
3.1.1.2 DoS HULK: 231.072,

HULK flood es un ataque DDoS llamado por sus creadores "HTTP Unbearable Load King"; es
similar a un HTTP flood y está diseñado para abrumar los recursos de los servidores web al
solicitar continuamente URL únicas o múltiples de muchas máquinas atacantes de origen. HULK
flood es distinto a otro tipo de herramienta software de ataque DDoS disponibles, donde producen
patrones repetidos predecibles y que podrían mitigarse fácilmente. Con el fin de sobrecargar los
servidores y atravesar cualquier sistema de detección y prevención de intrusiones, la inundación
DoS HULK funciona sobre la idea de que cada petición recibe un patrón único sobre las solicitudes
remitidas.

Algunas técnicas de HULK.

• Ofuscación del cliente de origen: Se realiza mediante el uso de una lista de agentes de
usuario conocidos, y para cada solicitud que se construye el agente de usuario es un valor
aleatorio de la lista conocida.
• Falsificación de referencias: La referencia que apunta a la solicitud está ofuscada y apunta
al propio host o a algunos de los principales sitios web prelistados.
• Pegajosidad: Usar algún comando HTTP estándar para intentar pedirle al servidor que
mantenga las conexiones abiertas, usando Keep-Alive con una ventana de tiempo variable
• Sin caché: Esto es un hecho, pero al pedirle al servidor HTTP que no tenga caché, un
servidor que no está detrás de un servicio de almacenamiento en caché dedicado presentará
una página única.
• Transformación única de URL: Para eliminar el almacenamiento en caché y otras
herramientas de optimización, la creación de nombres y valores de parámetros

36
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
personalizados se asignan al azar y se adjuntan a cada solicitud, lo que la hace única y
permite que la solicitud omita muchos sistemas CDN.

3.1.1.3 PortScan: 158.930,

Un escaneo de puertos es una técnica común que utilizan los piratas informáticos para descubrir
puertas abiertas o puntos débiles en una red. Un ataque de escaneo de puertos ayuda a los
ciberdelincuentes a encontrar puertos abiertos y averiguar si están recibiendo o enviando datos.
También puede revelar si una organización emplea dispositivos de seguridad activos como
firewalls. Cuando los piratas informáticos envían un mensaje a un puerto, la respuesta que reciben
determina si el puerto se está utilizando, así como también si existe alguna debilidad potencial que
podría explotarse.

Las empresas también utilizan la técnica de escaneo de puertos para enviar paquetes a puertos
específicos y analizar las respuestas en busca de posibles vulnerabilidades. Luego pueden usar
herramientas como escaneo de IP, mapeador de redes (Nmap) y Netcat y así garantizar que, tanto
la red como sus sistemas, sean seguros.

El escaneo de puertos proporciona información como:

• Servicios que se están ejecutando


• Usuarios propietarios de servicios
• Si se permiten inicios de sesión anónimos
• Servicios de red que requieren autenticación

Técnicas de escaneo de puertos.

Un escaneo de puertos detecta los paquetes enviados a los números de puerto de destino utilizando
varias técnicas; algunas de éstas incluyen:

• Escaneos de ping: Un escaneo de ping se considera la técnica de escaneo de puertos más


simple, también conocida como solicitudes de ICMP. Las solicitudes de ping envían un
grupo de varios registros ICMP a diversos servidores en un intento de obtener una
respuesta. Los administradores pueden utilizar un escaneo de ping para solucionar
problemas y un firewall puede bloquear y deshabilitar los pings.
• Escaneo de vainilla: Otra técnica básica de escaneo de puertos, la cual intenta conectarse a
todos los 65.536 puertos al mismo tiempo; envía un indicador de sincronización (SYN) o
una solicitud de conexión y cuando recibe una respuesta SYN-ACK o un acuse de recibo
de conexión, responde con una bandera ACK. Este escaneo es preciso, pero fácilmente
detectable porque los firewalls siempre registran una conexión completa.

37
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
• Exploración SYN: También llamada exploración semiabierta; envía una bandera SYN al
objetivo y espera una respuesta SYN-ACK; en caso de respuesta el escáner no responde lo
que significa que la conexión TCP no se completó. Por lo tanto, la interacción no se
registra, pero el remitente se entera si el puerto está abierto. Esta es una técnica rápida que
utilizan los piratas informáticos para encontrar debilidades.
• Exploraciones XMAS y FIN: Las exploraciones de árboles de Navidad (exploraciones
XMAS) y las exploraciones FIN son métodos de ataque más discretos; los escaneos XMAS
toman su nombre del conjunto de indicadores que se encienden dentro de un paquete que,
cuando se ve en un analizador de protocolo como Wireshark, parece parpadear como un
árbol de Navidad. Este tipo de análisis envía un conjunto de indicadores que pueden revelar
información sobre el firewall y el estado de los puertos, cuando se les responde. Un escaneo
FIN detecta cuando un atacante envía una bandera FIN, a menudo utilizada para finalizar
una sesión establecida, a un puerto específico. La respuesta del sistema puede ayudar al
atacante a comprender el nivel de actividad y proporcionar información sobre el uso del
firewall de la organización.
• Escaneo de rebote de FTP: Permite al remitente disfrazar su ubicación utilizando un
servidor FTP para rebotar un paquete.
• Barrido de exploración: Esta técnica de exploración de puertos preliminar envía tráfico a
un puerto a través de varias computadoras en una red para identificar las que están activas;
no comparte ninguna información sobre la actividad del puerto, pero informa al remitente
si hay algún sistema en uso.

3.1.1.4 DdoS: 41.835,

El conjunto de ataques distribuidos de denegación de servicio establece como objetivo sitios


web y servicios en línea a fin de abrumarlos con más solicitudes de tráfico de los que puede admitir
el servidor, inutilizando el sitio web o el servicio.

Es posible que el tráfico incluya solicitudes de conexión, mensajes entrantes o paquetes falsos.
Las víctimas objetivo pueden enfrentarse ocasionalmente a ataques de bajo nivel o DDoS, junto
con la amenaza de extorsión de un ataque más grave si la empresa no paga un rescate en
criptomonedas.

¿Cómo funcionan los ataques DDoS?

Aunque los ataques DDoS pueden variar en complejidad, la lógica subyacente es sencilla. Un
ataque DDoS, en su forma más básica, consiste en inundar un servicio, servidor, sitio web o red
con tráfico común de Internet; si el sitio web, servidor, servicio, o red del objetivo se ve
desbordado, deja de funcionar. Diferentes formas de ataques DDoS se concentran en determinadas

38
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
capas del sistema operativo, que componen los numerosos niveles de conexiones de red en
Internet. Algunos ejemplos son:

• La capa 3, capa de red: El vector de ataque es conocido como ICMP Floods, Smurf Attacks
y Fragmentación de IP--ICMP.
• De capa 4, Capa de transporte: Lo vectores de ataque contienen, UDP_Floods, SYN_Floods
y el agotamiento de la conexión TCP.
• Capa 7, la capa de Aplicación: Primordialmente ataques encriptados mediante HTTP.

3.1.1.5 Botnets.

El método principal de DDoS es el uso de una red de ordenadores o bots comprometidos y


controlados a distancia, a veces conocidos como "maquinas zombis", que en conjunto forman una
red de bots conocida como "botnets". Se utilizan para sobrecargar servidores, redes y sitios web
con datos que no pueden manejar debido a la gran cantidad de paquetes anómalos.

Estrategias de ataques DDoS.

Los ataques DDoS suelen consistir en uno o varios tipos de ataques, y algunos más complejos
mezclan ataques que utilizan varios canales. Estas son las categorías:

• Ataques basados en el volumen: envían mucho tráfico a una red para saturar su ancho de
banda.
• Ataques basados en protocolos: Son más selectivos y aprovechan los puntos débiles de la
infraestructura de un servidor.
• Los ataques basados en aplicaciones: Son los ataques DDoS más complejos y se
concentran en páginas web o servicios en línea concretos.

3.1.1.6. DoS GoldenEye: 10.293,

GoldenEye es similar a una inundación HTTP y es un ataque DDoS diseñado para abrumar los
recursos de los servidores web al solicitar continuamente URL únicas o múltiples de muchas
máquinas atacantes de origen.

GoldenEye cambia las solicitudes generadas dinámicamente, aleatoriza los agentes de usuario,
las referencias y casi todos los diversos parámetros utilizados. GoldenEye pretende mantener viva
la conexión y también agrega un sufijo al final de las URL que permitirá que la solicitud omita
muchos sistemas CDN (también conocido como "Sin caché"). Cuando se alcanzan los límites de
conexiones simultáneas de los servidores, el servidor ya no puede responder a solicitudes legítimas
de otros usuarios.

39
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
3.1.1.7 FTP-Patator: 7.938,

Fuerza bruta patator

Patator es la herramienta de fuerza bruta modular y multipropósito que fue desarrollada en


respuesta a la molestia con el uso de herramientas y scripts de descifrado de contraseñas anteriores.
También adopta un nuevo enfoque para evitar cometer los mismos errores que antes. Patator, una
herramienta multihilo creada en Python, pretende llevar a cabo pruebas de penetración de una
forma más adaptable y fiable que sus predecesoras. Como resultado, soporta una amplia gama de
módulos, como los de, SMTP, SSH, MySQL, FTP, SMTP, Telnet, DNS, LDAP, IMAP, SMB, rlogin,
archivos en zip y archivos Java de almacenamiento de claves.

Ejemplo de uso de Patator.

Realiza un ataque de fuerza bruta MySQL (mysql_login) con el usuario root (usuario = root) y las
contraseñas contenidas en un archivo (contraseña = FILE0 0 = / root / pass.txt) contra el host dado
(host = 127.0.0.1), ignorando la cadena especificada (-x ignorar: fgrep = 'Acceso denegado para el
usuario').

3.1.1.8 SSH-Patator: 5.897.

Patator como la herramienta multiproceso estructurada en Python resulta ser confiable y flexible
que sus compañeros predecesores.
• patator ssh login_host = 192.168.0.90 usuario = FILE0 contraseña = FILE1 0 = / root /
username 1 = / root / wordlist.txt -x ignore: mesg = 'Autenticación fallida'
• ssh login - módulo;
• anfitrión - objetivo;
• usuario: el inicio de sesión del usuario para el que se obtiene la contraseña o el archivo con
los inicios de sesión para la extracción de contraseñas;
• -x ignore: mesg = 'Autenticación fallida' - el comando para no mostrar la cadena que
contiene este mensaje. El parámetro de filtrado se selecciona individualmente.

CARACTERÍSTICAS.

• Sin falsos negativos, ya que el usuario es quien decide qué resultados ignorar en función
de:
• Codificación de los estados de respuestas
• Tamaño en la respuesta
• Coincidencia de cadena o expresión regular en la información de respuesta
• Diseño variable
• No esta restringido (el módulo unzip_pass)

40
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
• No se restringe a ataques de fuerza bruta (pruebas de exploits remotas o pruebas de
versiones vulnerables)
• Tiempo variable
• Visualización de proceso ejecución (tecla Enter)
• Pausar / reanudar (tecla p )
• Aumentar / disminuir la verbosidad
• Añadir nuevas condiciones y acciones durante la ejecución (excluir más variedad de
respuestas en la presentación).
• Presione h para visualizar comandos disponibles.
• Utilice conexión persistente (probará varias claves hasta que el servidor se desconecte).
• Multiproceso
• Entrada de usuario flexible
• Cualquier parámetro del módulo puede ser borrado:
• Use la palabra clave FILE para iterar sobre un archivo
• Use la palabra clave COMBO para iterar sobre un archivo combinado
• Use la palabra clave NET para iterar sobre todos los hosts de una subred de red
• Use la palabra clave RANGE para iterar sobre rangos hexadecimales, decimales o
alfabéticos
• Utilizar la palabra clave PROG para iterar sobre la salida de un programa externo
• La iteración sobre las listas de palabras unidas se puede realizar en cualquier orden
• Guarde cada respuesta (junto con la solicitud) para separar los archivos de registro para su
posterior revisión

3.1.1.9 DoS slowloris: 5.796.

Los ataques DDoS de Slowloris pueden apuntar a muchos tipos de software de servidor web,
pero han demostrado ser muy eficaces contra Apache 1.x y 2.x. debido a que Slowloris envía
paquetes parciales en lugar de corruptos; los IDS tradicionales no son particularmente efectivos en
detectar este tipo de ataque DDoS. Los ataques DDoS de Slowloris pueden continuar durante un
período de tiempo prolongado si no se detectan; incluso, cuando se agote el tiempo de espera de
los sockets que han sido atacados, Slowloris intentará reiniciar la conexión hasta que logre su
objetivo de abrumar completamente al servidor.

Este tipo de ataque DDoS está diseñado para ser sigiloso y difícil de detectar por lo cual es
particularmente peligroso. Slowloris puede modificarse para enviar diferentes encabezados de host
cuando se dirige a un host virtual donde los registros se almacenan por separado. Slowloris también
puede evitar la creación de archivos de registro, lo que evitaría además que aparezcan señales de
alerta en las entradas del archivo de registro, haciendo invisible el ataque.

41
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
3.1.1.10 DoS Slowhttptest: 5.499.

El protocolo HTTP, por diseño, necesita que el servidor reciba las peticiones en su totalidad
antes de procesarlas, lo que constituye la base de los ataques DoS Slowloris y Slow HTTP POST.
El servidor mantiene sus recursos ocupados mientras espera los datos restantes si una petición
HTTP está incompleta o si la velocidad de transmisión es demasiado lenta. Se produce una
denegación de servicio si el servidor mantiene sus recursos excesivamente ocupados. En un
esfuerzo por obtener una denegación de servicio del servidor HTTP objetivo, este programa realiza
peticiones HTTP incompletas.

Ejemplo de uso de slowhttptest.

Utiliza 7000 conexiones (-c 7000) modo Slowloris (-H) y generación de estadística (-g) nombre
de archivo saliente (-o slow-http) . Utilice 40 segundos para esperar datos (-i 40), 500 conexiones
(-r 500) solicitud GET (-t GET) dirección destino URL (-u http://192.168.0.1/miindex.php) con
una longitud máxima de 24 bytes (-x 24) y un tiempo de 3s fuera (-p 3) :

3.1.1.11 Bot: 1.966,

Un bot es una pequeña pieza de software que automatiza las solicitudes web con distintos
objetivos; se utilizan para realizar tareas sin intervención humana que incluyen todo, desde
escanear el contenido del sitio web hasta probar los números de tarjetas de crédito robadas y
brindar asistencia al cliente. Un bot puede emplearse tanto de manera útil como dañina, mientras
que "ataque de bot" siempre se refiere a un atacante con un objetivo fraudulento.

Un ataque de bot es el uso de solicitudes web automatizadas para manipular, defraudar o


interrumpir un sitio web, aplicación, API o usuarios finales. Los ataques de bot comenzaron como
simples operaciones de spam y se han ramificado en empresas criminales multinacionales
complejas con sus propias economías e infraestructuras.

3.1.1.12 Web Attack – Brute Force: 1.507.

En general, un asalto de fuerza bruta implica que el atacante especifique valores por defecto,
envíe peticiones al servidor con esos valores y examine la respuesta del servidor. Un atacante
puede emplear un ataque de diccionario (sin o con mutación) o un asalto de fuerza bruta estándar
con objetivo de la eficacia (empleando determinadas tipologías de caracteres, como ejemplo,
alfanuméricos, especiales, que distinguen mayúsculas de minúsculas). El atacante puede predecir
cuánto tiempo tardará en entregar todos los valores predeterminados seleccionados teniendo en
cuenta una técnica dada el número de intentos, la eficiencia del sistema que lanza el ataque y la
eficiencia a esperar del sistema que fue atacado.

42
Capítulo 3 Materiales y Métodos.
______________________________________________________________________________
¿Cómo se utilizan los ataques de fuerza bruta?

El ataque de fuerza bruta se usa generalmente para sustraer información personal como claves,
frases de contraseña, nombres de usuario y números de identificación personal (PINS) y utilizan
un script, una aplicación de piratería o un proceso similar para llevar a cabo una serie de intentos
continuos para obtener la información requerida.

Los objetivos de un ataque de fuerza bruta incluyen:

• Robo de información personal como contraseñas, frases de contraseña y otra información


utilizada para ingresar a una cuenta disponible y recursos en red.
• Cosecha de credenciales para vender a terceros.
• Haciéndose pasar por usuarios para enviar enlaces de phishing o difundir contenido falso.
• Deformación de sitios web y otra información de dominio público que podría dañar la
reputación de la organización.
• Redirigir dominios a sitios con contenido malicioso.

3.1.1.13 Web Attack – XSS: 652.

Secuencias de comandos entre sitios (XSS). Los ataques Cross-Site Scripting (XSS) tienen lugar
cuando sucede lo siguiente:
• Los datos entran en una aplicación web desde una fuente no fiable, a menudo una petición
web.
• El material dinámico que se suministra a un usuario web incluye datos que no han sido
verificados por contenido dañino.
Cross-site scripting, a veces conocido como XSS, es un fallo de seguridad web que da a un
atacante la capacidad de comprometer las interacciones del usuario con una aplicación susceptible
y eludir la política de origen, que tiene por objeto mantener varios sitios web separados entre sí.
Los fallos de cross-site scripting suelen proporcionar a un atacante acceso a los datos de cualquier
usuario, así como la capacidad de operar en el lugar del usuario víctima y llevar a cabo cualquier
actividad de la que éste sea capaz. El atacante podría tomar el control completo de todas las
funciones y datos de la aplicación si el usuario objetivo tiene acceso privilegiado a ella, para
engañar a un sitio web para que devuelva JavaScript peligroso a los visitantes, se utiliza cross-site
scripting. El atacante puede impedir por completo la interacción de la víctima con la aplicación
cuando el código malicioso se ejecuta en el navegador de la víctima.
Existen tres metodologías de ataque XSS:
• XSS almacenado: El script maligno está en la base de datos de la URL.
• XSS reflejado: El script maligno este contenido en la solicitud HTTP.
• XSS basado en DOM: El punto débil está en el código del lado cliente, más que en el
código del servidor.

43
Capítulo 3 Materiales y Métodos
______________________________________________________________________________

3.2 Diseño de la solución.

3.2.1 Conjunto de datos de ataques informáticos.

El conjunto de datos CICIDS2017 propuesto por (Sharafaldin et al., 2018) cuenta con ataques
actualizados que reflejan datos auténticos del mundo real, ataques en varias categorías y datos
benignos en formato (PCAP). También contiene los resultados del análisis de tráfico de red usando
CICFlowMeter, con flujos etiquetados según la marca de tiempo, las direcciones IP de origen y
destino, los puertos de origen y destino, los protocolos y los ataques, en un formato de (archivos
CSV). Los ataques utilizados son incluyen Botnet, Brute Force SSH, Brute Force FTP, Heartbleed,
Infiltration, Web Attack, DDoS, DoS, fundamentados en los protocolos SSH, HTTP, FTP, HTTPS
y de e-mail en el comportamiento de los usuarios.

Este conjunto de datos cumple con 11 criterios que son característicos en la construcción de un
dataset que sea de referencia confiable: Configuración de la red completa, tráficos completos,
conjunto de datos etiquetados, interacción completa de la LAN y comunicación por internet,
completitud en los datos capturados, protocolos actuales, variedad de ataques, datos heterogéneos
en conjunto con 80 características de red de tráfico, metadatos.

(Sharafaldin et al., 2018) propone un banco de pruebas completo, diseño dos redes, Red de
ataque y Red Victima. La Red-Víctima es una infraestructura de alta seguridad con cortafuegos,
routers, conmutadores, la mayoría de los sistemas operativos comunes junto con un agente que
proporciona los comportamientos benignos en cada PC. La Red-Ataque es una infraestructura
completamente separada diseñada por un router y un switch, un conjunto de PCs con IPs públicas
y diferentes sistemas operativos necesarios para ejecutar los escenarios de ataque.

3.2.2 Tratamiento del conjunto de datos.

Se importa el daset cicids 2017 repartido en 8 archivos en formato separado por comas, se
concatena y en consecuencia se obtiene una matriz con los datos agrupados de tamaño de 2830743
columnas y 79 filas.

Se reindexa para evitar filas marcadas doblemente, se visualizan los primeros 50 y los últimos
50 datos para observar la completitud de los datos originales.

Se genera la estadística descriptiva que resume la dispersión, la tendencia central y la


distribución del dataset, se calcula la correlación de columnas por pares excluyendo valores nulos
(NA), se sustituyen los números infinitos positivos e infinitos negativos por el valor cero (0), se
eliminan los datos con valores faltantes en alguna fila.

44
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
Se define el etiquetado de y, como el arreglo de datos de X, se pre procesan los datos con una
función de normalización, se cambia de etiquetas a codificación LabelEncoderes para ayudar a
normalizar etiquetas de modo que solo contengan valores entre 0 y n_classes-1 y se agrupan los
datos por ataque y su cantidad.

Se realiza la partición del dataset de X_entrenamiento, X_prueba, y_entrenamiento,y_prueba


con la partición de 80% en los datos para entrenamiento como el 20% para prueba.

Se propone un preprocesamiento del data-set CICIDS2017 con la meta de proporcionar datos


adecuados al proceso de entrenamiento/prueba transformando y escalando apropiadamente todo el
conjunto de datos; el preprocesamiento es necesario antes de entrenar el modelo propuesto; éste
elimina los valores atípicos y escala las características a un rango equivalente.

Se utilizó la normalización con el objetivo de comparar conjuntos de componentes y la media


eliminando los efectos de las influencias, la estadística es la transformación en escala de la
distribución de una variable, que aseguran una rápida convergencia del proceso de aprendizaje,
teniendo en cuenta la cantidad de ataques descritos en el dataset CICIDs2017.

Para dividir los datos se utilizó la función train, test, split, donde se dividen en las particiones
X_train(1894676, 78), X_test(933200, 78) y_train(1894676,), y_test.) (933200,) con una iteración
de paquetes 33% de los datos para pruebas y el 67% para entrenamiento.

3.2.3. Diagrama de flujo del proceso.

Figura 8: Diagrama flujo de proceso.

45
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
Como se observa en la figura 8 el diagrama de flujo de procesos, el conjunto de datos, la
normalización de datos, la partición de conjunto en 80%,20%, el paso por cada capa profunda y
las métricas de los resultados de clasificación y las curvas ROC por cada clase de ataque.

3.2.4 Modelamiento con Keras.

Para el diseño del prototipo de red neuronal se plantearon varias configuraciones como ajustes
de hiperparametros.

3.2.4.1 Primera configuración red neuronal profunda.

Se plantea un modelo con 7 capas densas y 6 Dropout distribuidos de la siguiente forma: la


capa densa 1 con 2028 neuronas, la función de activación en relu; con desconexión dropout del
1%; la capa densa 2 con 1024 neuronas, función de activación relu; desconexión dropout del 1%;
la capa densa 3 con 768 neuronas, función de activación relu; desconexión dropout del 1%; la capa
densa 4 con 512 neuronas, con función de activación relu; desconexión dropout del 1%; la capa
densa 5 con 256 neuronas, con función de activación relu; desconexión dropout del 1%; la capa
densa 6 con 128 neuronas, con función de activación relu; capa de desconexión dropout del 1%;
la última capa densa 7 con 78 neuronas, función de activación softmax; desconexión dropout del
1%, es en la última capa neuronal de salida que es la que entrega el resultado de clasificación del
modelo Softmax convierte un vector de valores en una distribución de probabilidad.

Cada elemento del vector salida están con un rango entre (0, 1) como sumatoria 1. El vector se
comporta de manera independiente. El axis argumento establece en qué eje de la entrada se aplica
la función. Softmax es utilizado regularmente como función de activación en su última capa de
una en la red neuronal dado que el resultado puede entenderse como distribución probabilística.

En este modelo se evidencia un “Overfitting” sobre-entrenamiento en algunas clases, así como


también presenta risos en las épocas de precisión, siendo poco deseable en los modelos; a manera
de solución sería necesario un tamaño de datos mucho mayor o reducir la complejidad de la red
neuronal. Como segunda fase de ajustes se realizó una desactivación de Dropout quedando todas
las neuronas totalmente conectadas, pero el modelo no presentaba estabilidad en las predicciones.

Tabla 11: Resumen del modelo secuencial de keras de la red neuronal profunda de 7 capas con
Dropoud.
Model:"sequential_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
dense_7 (Dense) (None, 2028) 160212
_________________________________________________________________
dropout_6 (Dropout) (None, 2028) 0
_________________________________________________________________
dense_8 (Dense) (None, 1024) 2077696
_________________________________________________________________

46
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
dropout_7 (Dropout) (None, 1024) 0
_________________________________________________________________
dense_9 (Dense) (None, 768) 787200
_________________________________________________________________
dropout_8 (Dropout) (None, 768) 0
_________________________________________________________________
dense_10 (Dense) (None, 512) 393728
_________________________________________________________________
dropout_9 (Dropout) (None, 512) 0
_________________________________________________________________
dense_11 (Dense) (None, 256) 131328
_________________________________________________________________
dropout_10 (Dropout) (None, 256) 0
_________________________________________________________________
dense_12 (Dense) (None, 128) 32896
_________________________________________________________________
dropout_11 (Dropout) (None, 128) 0
_________________________________________________________________
dense_13 (Dense) (None, 78) 10062
=================================================================
Total params: 3,593,122
Trainable params: 3,593,122
Non-trainable params: 0

Como se observa en la tabla 11, se detalla el número de capas y el número de neuronas, donde se
establece el número de los parámetros que son la cantidad de elementos entrenables en la red de
profundidad 7; las neuronas que se ven afectadas por la retropropagación. Por ejemplo, para la
operación Wx + b en cada neurona, W y b se pueden entrenar porque los optimizadores los cambian
después de que se aplicó la retro propagación para el cálculo del gradiente.

Figura 9: Modelo de keras red neuronal profunda.

47
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
Como se observa en la figura 9 se presenta un resumen del modelo de red neuronal profunda
de 7 capas densas, el número de las neuronas y la entrada como salida de conexión con cada capa.
Para esta tipología de datos esta arquitectura tener un número mayor de capas no es significativo,
aumenta el overfiting y aumenta el sesgo sobre datos.

3.2.4.2 Técnica de regularización de abandono Dropout.

El abandono es un método aplicado en la etapa de entrenamiento en el que no se tienen en


cuenta neuronas elegidas al azar. Se "descartan" aleatoriamente, es decir, se elimina
momentáneamente su contribución a la activación de las neuronas cercanas en el paso hacia
delante, y no se aplican cambios de peso a la neurona en el paso hacia atrás.

El dropout respecto a la primera configuración de la red neuronal profunda funcionaria de la


siguiente manera en las 7 capas.

2028*0.1= 202,8 Estas serían las neuronas desactivadas durante el entrenamiento.

2028*0.9 = 1825,2 Estas serían las neuronas activas.

1024*0.1 = 102,4 Estas serían las neuronas desactivadas durante el entrenamiento.

1024*0,9 = 921,6 Estas serían las neuronas activas.

768*0.1 = 76,8 Estas serían las neuronas desactivadas durante el entrenamiento.

768*0,9 = 691,2 Estas serían las neuronas activas.

512*0.1 = 51,2 Estas serían las neuronas desactivadas durante el entrenamiento.

512*0,9 = 460,8 Estas serían las neuronas activas.

256*0.1 = 25,6 Estas serían las neuronas desactivadas durante el entrenamiento.

256*0,9 = 230,4 Estas serían las neuronas activas.

128*0.1 = 12,8 Estas serían las neuronas desactivadas durante el entrenamiento.

128*0,9 = 115,2 Estas serían las neuronas activas.

3.2.4.3 Imagen red neuronal graficas de las capas

Como se observa en las figuras 10 y 11 se representa el diagrama de tensores de la red neuronal


profunda y los nodos de conexión además de la relación con el gradiente, con el optimizador, el
tamaño de las neuronas, el casteo, el modelo secuencial y la relación con las etiquetas predichas
frente a las etiquetas reales; es de anotar que el mayor número de tensores está en la vía del modelo

48
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
secuencial de Keras, el gradiente y el optimizador N Adam y con la configuración de
hiperparametros como se observa en la tabla 12, estos ajustes son los que mejor se comportan en
la respuesta del modelo en las curvas de pérdida de peso y precisión en la fase de entrenamiento y
prueba .

Figura 10: Red neuronal profunda 7 capas ocultas.


Tabla 12: Hiper parámetros 7 capas ocultas.
Hiperparámetros Ajustes
Capas ocultas 7
Función de activación en la capa oculta Relu
Función de activación en la capa de salida Softmax
Optimizador NAdam
Tasa de aprendizaje 0,001
Tamaño del lote 100
Épocas 5
Función de pérdida Entropía cruzada escasa-categórica.

49
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.4 Tensorgraf de la red neuronal profunda 7 capas densas y 6 Dropout.

Figura 11: Tensorgraf de la red neuronal profunda 7 capas densas y 6 Dropout.


3.2.4.5 Ajuste del learning rate

Si la ratio de aprendizaje es demasiado grande, los cambios en W serán también muy grandes
y será difícil encontrar los coeficientes que minimicen la función de coste. Por otra parte, si el ratio
de aprendizaje es demasiado pequeño, el gradiente descendiente tardará mucho en encontrar la
solución adecuada.

50
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.6 Función de pérdida o coste.

Entropía cruzada categórica dispersa: Permite el cálculo de disminución de entropía cruzada


entre las etiquetas verdaderas y etiquetas predichas. En este caso se proporcionan etiquetas como
números enteros, siendo ésta es la razón de utilizar Entropía cruzada categórica dispersa. Debe
haber número de clases en “este caso 14 clases de ataques” valores de punto flotante por
característica.

3.2.4.7 Optimizador Nadam

Nadam que es bueno porque genera una estimación de momento adaptativa acelerada por
Nesterov combinada así con Adam, implementándolo en la solución de Deep Learning los modelos
se comportan de manera ideal encontrando el mínimo global de una forma más rápida y nos
permite unas métricas superiores comparadas con los otros optimizadores y unos modelos de
perdida y accuracy muy prometedores.

3.2.4.8 Segunda configuración red neuronal profunda.

En la figura 12 se plantean 4 capas densas: la capa inicial densa tiene 127 neuronas, función de
activación relu; la segunda capa densa tiene 128 neuronas, función de activación relu; la tercera
capa densa tiene 128 neuronas, función de activación relu, la cuarta capa densa tiene 78 neuronas,
función de activación softmax y el resumen del modelo en la tabla 14.

Se compila el modelo con una función de pérdida de entropía cruzada entre las etiquetas y las
predicciones, con optimizador Nadam, con una tasa de aprendizaje de 0.001, beta_1=0.9,
beta_2=0.999, epsilon=1e-07, nombre='Nadam'

Se entrena el modelo con X_entrenamiento, y_entrenamiento, datos de


validacionX_prueba,y_prueba, tamaño del paquete =200, llamada a tensorboard,verbose 1,
numero de épocas = 20, multiprocesamiento habilitado tal como se especifica en la tabla 13 de
hiperparametros.

51
Capítulo 3 Materiales y Métodos
______________________________________________________________________________

Figura 12: Red neuronal profunda 4 capas ocultas.


Tabla 13: Hiper parámetros 4 capas ocultas.
Hiperparámetros Ajustes
Capas ocultas 4
Función de activación en la capa oculta Relu
Función de activación en la capa de salida Softmax
Optimizador NAdam
Tasa de aprendizaje 0,001
Tamaño del lote 200
Épocas 20
Función de pérdida Entropía cruzada escasa-categórica.

Tabla 14: Resumen del modelo secuencial de keras de la red neuronal profunda de 4 capas.
Model: "sequential"
________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
dense (Dense) (None, 127) 10033
_________________________________________________________________
dense_1 (Dense) (None, 128) 16384
_________________________________________________________________
dense_2 (Dense) (None, 128) 16512
_________________________________________________________________
dense_3 (Dense) (None, 78) 10062
=================================================================
Total params: 52,991
Trainable params: 52,991
Non-trainable params: 0

52
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.9 Tensorgraf.

En la figura 13 se muestra el modelo de tensores de la segunda configuración de red neuronal,


donde se observan los nodos de conexión además de la relación con el gradiente, con el
optimizador, el tamaño de las neuronas, el casteo, el modelo secuencial y la relación de las
etiquetas predichas con las etiquetas reales; es de anotar que el mayor número de tensores está en
la vía del modelo secuencial de Keras, el gradiente y el optimizador N adam.

Figura 13: Tensorgraf del modelo neuronal de 4 capas profundas.

Figura 14: Modelo secuencial de Keras.


Como se visualiza en la figura 14 el modelo secuencial de Keras de 4 capas densas.
53
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.10 Tercera configuración red neuronal profunda.

En la figura 15, y tabla 16 se plantean 6 capas densas: la capa inicial densa contiene 90 neuronas,
con función de activación relu, la segunda capa densa tiene 80 neuronas, con función de activación
relu; la tercera capa densa tiene 80 neuronas, con función de activación relu; la cuarta capa densa
tiene 80 neuronas, con función de activación relu; la quinta capa densa tiene 80 neuronas, con
función de activación relu; la sexta capa tiene 78 neuronas, con función de activación softmax.
Se compila el modelo con una función de pérdida sparce categorical crossentropy, con
optimizador Nadam con una tasa de aprendizaje de 0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-
07, nombre='Nadam' y con la configuración de hiperparametros de la tabla 15.

Se entrena el modelo con X_entrenamiento, y_entrenamiento, datos de


validacionX_prueba,y_prueba, tamaño del paquete =200, llamada a tensorboard,verbose 1,
numero de épocas = 20, multiprocesamiento habilitado.

Figura 15: Red neuronal profunda 6 capas.


Tabla 15: Hiper parametros 6 capas ocultas.
Hiperparámetros Ajustes
Capas ocultas 6
Función de activación en la capa oculta Relu
Función de activación en la capa de salida Softmax
Optimizador NAdam
Tate de aprendizaje 0,001
Tamaño del lote 200
Épocas 20
Función de pérdida Entropía cruzada escasa-categórica.

54
Capítulo 3 Materiales y Métodos
______________________________________________________________________________

Tabla 16: Resumen del modelo secuencial de Keras de la red neuronal profunda de 6 capas.
Model:"sequential"_______________________________________________
Layer (type) Output Shape Param #
=================================================================
dense (Dense) (None, 90) 7110
_________________________________________________________________
dense_1 (Dense) (None, 80) 7280
_________________________________________________________________
dense_2 (Dense) (None, 80) 6480
_________________________________________________________________
dense_3 (Dense) (None, 80) 6480
_________________________________________________________________
dense_4 (Dense) (None, 80) 6480
_________________________________________________________________
dense_5 (Dense) (None, 78) 6318
=================================================================
Total params: 40,148
Trainable params: 40,148
Non-trainable params: 0

Figura 16: Modelo secuencial de keras.

55
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.11 Tensorgraf.

En la figura 16 , 17 y 18 se muestra el modelo de tensores de la segunda configuración de red


neuronal donde se observan los nodos de conexión además de la relación con el gradiente, con el
optimizador, el tamaño de las neuronas, el casteo, el modelo secuencial, la conexión entre las
etiquetas esperadas y las reales; es de anotar que el mayor número de tensores está en la vía del
modelo secuencial de Keras, el gradiente y el optimizador Nadam.

Figura 17: Tensorgraf tercera configuracion neuronal.

Figura 18: Modelo de red neuronal 6 capas densas.

56
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.12 Cuarta configuración de red neuronal Profunda.

Como se aprecia en la figura 19 y tabla 17 se plantean tres capas densas: la primera capa con
120 neuronas y función de activación relu, la segunda capa densa con 80 neuronas y función de
activación relu, la tercera capa densa con 78 neuronas y función de activación Softmax.

Se compila el modelo con una función de pérdida sparce categorical crossentropy, con
optimizador Nadam con una tasa de aprendizaje de 0.001 beta_1=0.9, beta_2=0.999, epsilon=1e-
07, nombre='Nadam'

Se entrena el modelo con X_entrenamiento, y_entrenamiento, partición de validacion = 0.2,


tamaño del paquete = 200, llamada a tensorboard,verbose 1, numero de épocas = 30
multiprocesamiento habilitado.

Figura 19:Red neuronal profunda 3 capas ocultas.

57
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
Tabla 17: Hiper parámetros 3 capas ocultas.
Hiperparámetros Ajustes
Capas ocultas 3
Función de activación en la capa oculta Relu
Función de activación en la capa de salida Softmax
Optimizador NAdam
Tate de aprendizaje 0,001
Tamaño del lote 200
Épocas 30
Función de pérdida Entropía cruzada escasa-categórica.

Figura 20: Diagrama de la arquitectura profunda.


Tabla 18: Resumen del modelo secuencial de keras de la red neuronal profunda de 3 capas.
Model: "sequential_1"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
dense_3 (Dense) (None, 128) 10112
_________________________________________________________________
dense_4 (Dense) (None, 80) 10320
_________________________________________________________________
dense_5 (Dense) (None, 78) 6318
=================================================================
Total params: 26,750
Trainable params: 26,750
Non-trainable params: 0

58
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.13 Red Neuronal Convolucional.

En la figura 21 se aprecia el flujo del proceso de los datos contenidos en x a un arreglo en numpy,
se hace la partición de los datos x_entrenamiento, x_prueba, y_entrenamiento, y_prueba con un
tamaño de prueba del 20%, se realiza un cambio en el arreglo de los datos en x_entrenamiento de
la forma (2263508,1,78,1 ) es un tratamiento de los datos a un estilo de imagen conocido como un
aplanamiento de datos.
En la tabla 19 se define un modelo secuencial de keras con una capa conv2D,100 neuronas,
tamaño del kernel(1,10), strides (1,1), padding, función de activación relu, con capa
MaxPooling2D(tamaño de pool(1,2), una capa de aplanamiento, una capa densa con 80 neuronas,
función de activación Relu, una capa densa con 78 neuronas y función de activación como se
plantea en la tabla 19 de hiperparametros.

Figura 21: Red neuronal convolucional.


Tabla 19: Hiper parámetros red neuronal convolucional.
Hiperparámetros Ajustes
Capas ocultas 2
Función de activación en la capa oculta Relu
Función de activación en la capa de salida Softmax
Optimizador Adam
Tate de aprendizaje 0,001
Tamaño del lote 200
Épocas 20
Función de pérdida Entropía cruzada escasa-categórica.

59
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
Una neurona artificial es un conjunto de operaciones matemáticas. En primer lugar, se aplica
un peso y un sesgo de manera afín a un valor de entrada: en el análisis de imágenes, el cual es el
valor de un píxel y luego se aplica una función de activación al resultado intermedio para
representar los datos en el espacio de datos de esa función. A menudo esta función de activación
no es lineal, porque permite representar datos complejos donde la combinación lineal no funciona.

La arquitectura de la red neuronal convolucional está conformada por una sucesión de bloques de
procesamiento para extraer las características que discriminan la clase de pertenencia de la imagen
de los demás. Un bloque de procesamiento consta de uno a varios:

• capas convolucionales (CONV) que procesan los datos de un campo receptor.


• capas de corrección (ReLU) en referencia a la función de activación (unidad de
rectificación lineal).
• capas de agrupación (POOL) que permiten comprimir la información reduciendo el tamaño
de la imagen intermedia (a menudo reduciendo la resolución).

Los bloques de procesamiento están vinculados a las capas finales de la red que realizan la
clasificación de la imagen y el cálculo del error entre la predicción y el valor objetivo:

• capa "totalmente conectada" (Fully Conected), que es una capa similar a un perceptrón;
• capa de pérdida (LOSS)

En la figura 22 se aprecia el modelo secuencial de la capa convolucional 2d conectada con el max


pool, el flaten la capa densa y la capa densa 1.

Figura 22: Modelo de red neuronal convolucional.

60
Capítulo 3 Materiales y Métodos
______________________________________________________________________________
3.2.4.14 Tensorgraf.

Como se aprecia en la Figura 23 el Tensorgraf de la red neuronal convolucional muestra una


fortaleza en el tensor secuencial hasta el tipo de gradiente y terminando en el optimizador Adam
y una derivación adicional del modelo secuencial.

Figura 23: Tensorgraf red neuronal convolucional.


Nota: También se experimentó con algoritmos convencionales de Machine Learning tales como
Regresión logística, K vecinos cercanos, Naive Bayes Gaussiano, Naive Bayes multinomial,
Maquina de soporte vectorial, para conocer detalles de esta investigación remitirse al (Anexo A).

61
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Capítulo 4: Análisis de Resultados.

Para demostrar el rendimiento y la eficacia de un IDS, se utilizan ampliamente las siguientes


métricas de rendimiento. Las medidas incluyen exactitud, tasa de detección, precisión, tasa de
falsos positivos), tasa de verdaderos negativos, puntaje F1, curva ROC y AUC. Estas medidas de
rendimiento se derivan de la matriz de confusión en la clasificación de anomalías de red. Todas
las métricas se utilizan para evaluar la eficiencia del modelo implementado. En la matriz de
confusión, TP (Verdaderos positivos) es el número de registros de anomalías que se detectan con
precisión como anomalías, TN (Verdaderos negativos) es el número de registros habituales que se
detectan con precisión como normales, FP (Falsos positivos) son registros habituales detectados
de forma incorrecta como anomalías y FN (falsos negativos) son el número de registros de
anomalías detectados incorrectamente como de costumbre. Las métricas se pueden cuantificar de
la siguiente manera:

𝑻𝑷+𝑻𝑵
Exactitud:
𝑻𝑷+𝑻𝑵+𝑭𝑷+𝑭𝑵
𝑻𝑷
Precisión:
𝑻𝑷+𝑭𝑷
𝒑𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏 ∗ 𝒓𝒆𝒄𝒂𝒍𝒍
Puntuación F1: 𝟐∗
𝒑𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏 +𝒓𝒆𝒄𝒂𝒍𝒍

𝑻𝑷
Exhaustividad:
𝑻𝑷+𝑭𝑵
Precisión: la precisión es la proporción del número de registros anómalos detectados con
precisión y registros normales con respecto a todos los registros.

Puntuación F1: La puntuación F1 es la media armónica tanto de recuperación como de


precisión. La puntuación F1 es más eficiente que la precisión para determinar el rendimiento del
modelo frente al conjunto de datos desequilibrado.

Tasa de detección: Es una proporción de registros de anomalías reales que se identifican con
precisión. También se considera como (Tasa de Verdaderos Positivos), Sensibilidad o recuerdo.

Tasa de falsos positivos: Es la proporción de registros normales que se identifican


incorrectamente como registros anómalos.

62
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Tasa de verdaderos negativos: Es la proporción de registros normales que se identifican con
precisión. También se conoce como Especificidad.

Precisión: la precisión es la proporción de todos los registros de anomalías pronosticados que


en realidad son registros de anomalías.

Si la precisión, precisión y puntaje F1 es alto, el rendimiento de la metodología implementada


es mejor, de la misma manera, si el Tasa de falsos positivos es bajo, el rendimiento de la
metodología es mejor.

Curva característica operativa del receptor: ROC muestra claramente el rendimiento de un


clasificador sobre todos los umbrales practicables. Si ajustamos el umbral para asignar
observaciones a una clase dada, la curva se dibuja con la coordenada horizontal de un punto en un
plano del sistema de coordenadas cartesianas para Tasa de falsos positivos y Tasa de verdaderos
positivos.

4.1 Métricas de red neuronal profunda 3 capas ocultas.

Tabla 20: Métricas red neuronal profunda en fase de entrenamiento.

Exactitud Precisión Puntuación F1 Exhaustividad


0,9948 0,9953 1 0,9953

Tabla 21: Métricas red neuronal profunda en fase de prueba.

Exactitud Precisión Puntuación F1 Exhaustividad


0,9953 0,9953 1 0,9953

Tiempo de entrenamiento y prueba en segundos: 1671.375 ó 27.85 minutos

Como se observa en las tablas 20 y 21, la red neuronal profunda en fase de entrenamiento y en
fase de prueba, se logran unas buenas métricas de exactitud, precisión, puntuación f1 y
sensibilidad, lo cual indica que el modelo de red neuronal profunda obtiene una buena respuesta
de predicción frente a la etiqueta real, cuestión muy importante en la clasificación de intrusiones.

63
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Como se puede observar en la figura 24 el modelo de red neuronal profunda presenta una
trayectoria en la fase de entrenamiento como la fase de prueba estable por cada época, lo que se
busca es que las trayectorias estén lo más cerca posible y sin rizados.

Figura 24: Épocas y función de coste en red neuronal profunda 3 capas ocultas.

64
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Acorde con la Figura 25 y tabla 22, la matriz de confusión de la red neuronal profunda en
fase de entrenamiento, se evidencia una buena clasificación en 15 de 16 ataques propuesto en el
dataset CICIDS 2017, pendiente de mejoras en el ataque Dos GoldenEye y se puede perfeccionar
aumentando el número de muestras ya que en este caso presenta 32 ataques; además es de tener en
cuenta que el dataset es de tipología desbalanceada, común en este tipo de datos en tiempo real y
por el numero existente de vulnerabilidades conocidas hasta el año 2017 en ataque distribuido dos
GoldenEye.

Figura 25: Matriz de confusión red neuronal profunda en fase de entrenamiento.


Tabla 22: Reporte de clasificación red neuronal profunda en fase de entrenamiento.
precision recall f1-score support

BENIGN 0.9976 0.9968 0.9972 2649895


DDoS 0.9967 0.3798 0.5500 1572
PortScan 0.9897 0.9950 0.9923 102424
Bot 0.9715 0.9707 0.9711 16658
Infiltration 0.9873 0.9974 0.9924 368283
Web Attack � Brute Force 0.8869 0.8223 0.8534 8852
Web Attack � XSS 0.9738 0.7316 0.8355 9261
Web Attack � Sql Injection 0.9984 0.9961 0.9972 12739
FTP-Patator 0.7619 1.0000 0.8649 16
SSH-Patator 0.8333 0.1786 0.2941 28
DoS slowloris 0.9844 0.9971 0.9907 127129
DoS Slowhttptest 0.9878 0.9887 0.9882 9306
DoS Hulk 0.6957 0.9570 0.8057 2441
DoS GoldenEye 0.1667 0.2812 0.2093 32
Heartbleed 0.7798 0.0794 0.1441 1071
accuracy 0.9949 3309707
macro avg 0.8674 0.7581 0.7657 3309707
weighted avg 0.9949 0.9949 0.9946 3309707

65
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 26: Matriz de confusión red neuronal profunda en fase de prueba.


Tabla 23: Reporte de clasificación red neuronal profunda en fase de prueba.
precision recall f1-score support

BENIGN 0.9976 0.9969 0.9972 662804


DDoS 1.0000 0.3274 0.4933 394
PortScan 0.9889 0.9946 0.9917 25603
Bot 0.9679 0.9674 0.9677 3928
Infiltration 0.9872 0.9974 0.9923 91965
Web Attack � Brute Force 0.8873 0.8327 0.8591 2146
Web Attack � XSS 0.9690 0.7366 0.8369 2331
Web Attack � Sql Injection 0.9987 0.9955 0.9971 3137
FTP-Patator 0.8571 1.0000 0.9231 6
SSH-Patator 1.0000 0.3750 0.5455 8
DoS slowloris 0.9856 0.9971 0.9913 31801
DoS Slowhttptest 0.9868 0.9883 0.9876 2488
DoS Hulk 0.7160 0.9459 0.8150 573
DoS GoldenEye 0.1579 0.3000 0.2069 10
Heartbleed 0.8400 0.0901 0.1628 233

accuracy 0.9949 827427


macro avg 0.8893 0.7697 0.7845 827427
weighted avg 0.9949 0.9949 0.9947 827427

66
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Tanto en la figura 26 como en la tabla 23 se observa un buen comportamiento en la clasificación
de la red neuronal en fase de prueba; se debe implementar un aumento en la clasificación de
ataques perteneciente a la clase Dos Goldeneye ya que presenta un bajo rendimiento de
clasificación; es de tener en cuenta que solamente son 10 ataques Goldeneye para la fase de prueba
debido al bajo número de ataques de esta categoría en el dataset CICIDS 2017. De otra parte, el
ataque SSH Patator si bien tiene una buena precisión en las métricas de puntaje f1 y en la
sensibilidad, presenta un bajo puntaje debido a que solamente se plantean 8 ataques pertenecientes
a esta categoría; revela una buena clasificación en 14 de 16 tipos de ataques modernos propuestos
en el dataset cicids 2017. Es necesario hacer énfasis en la detección de ataques día cero y en ataques
donde todavía se tienen pocas muestras disponibles y con respaldo científico y vulnerabilidades
disponibles hasta el año 2017.

En este modelo de red neuronal profunda es de destacar que con data aumentation es escalable
y aprende de los datos teniendo en cuenta que se tiene poca representación de los datos, comparado
con los más de seiscientos mil en la categoría de ataques benignos y otro tipo de ataques que tiene
un mayor número de muestras.

Figura 27: Curva ROC general en fase de entrenamiento de la red neuronal profunda.
Como se observa en la figura 27, la curva roc en fase de entrenamiento general presenta un área
de 1, siendo 1 la mejor clasificación y sensibilidad del modelo de red neuronal profundo por ser
capaz de dar una correcta detección en los casos positivos por todas las clases de ataques, como
un modelo general.

67
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 28: Curva ROC en fase de entrenamiento por todas las clases en el modelo de red
neuronal.
Bening clase 0, DDOS clase 1, Portscan clase 2, Bot clase 3, infiltrarion clase 4, web atack brute forcé clase 5,
web attack xss clase 6, web attack sql injection clase 7,fpt patator clase 8,ssh patator clase 9,dos slowloris clase
10, Dos slowhttptest clase 11, dos hulk clase 12, dos goldeneye clase 13,heartbleed clase 14.

Como se puede apreciar en la figura 28 de la curva roc en fase de entrenamiento del modelo de
red neuronal profunda, en la clase 9 ssh patator ataque tiene un área de 0.98, además la tasa de
verdaderos positivos es de 0,8 y tiene unas clasificaciones de falsos positivos en un pequeño
umbral desde el 0,2 hasta 0,3 de tasa de falsos positivos; la clase 13 dos goldeneye tiene un área
de 1 con una tasas de verdaderos positivos de 0,9 y > 0,1 en tasa de falsos positivos; el resto de
clases de ataques presentan un área de curva roc ideal demostrando que el modelo tiene una buena
sensibilidad y especificidad.

68
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 29: Curva roc general de la Red neuronal profunda en fase de prueba.
Como se observa en la figura 29 la curva roc del modelo de red neuronal profundo presenta un
área de curva roc general de 1 clasificado como test con resultados prometedores, lo cual indica
que el modelo de red neuronal profunda en la clasificación de las etiquetas tiene una tasa de
verdaderos positivos alta, y el número de características presentes en el dataset contribuyen al
modelo propuesto.

69
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 30: Curva roc por todas las clases en fase de prueba red neuronal profunda.
Bening clase 0, DDOS clase 1, Portscan clase 2, Bot clase 3, infiltrarion clase 4, web atack brute forcé clase 5,
web attack xss clase 6, web attack sql injection clase 7, fpt patator clase 8, ssh patator clase 9, dos slowloris clase
10, Dos slowhttptest clase 11, dos hulk clase 12, dos goldeneye clase 13, heartbleed clase 14.

Como se observa en la figura 30, la clase 9 ssh patator tiene un área de curva roc de 0,98, en el
eje de tasa de verdaderos positivos tiene una tasa de 0,9 y en el eje de tasa de falso positivos con
un 0,26; la clase 13 DoS Goldeneye tiene una leve tasa de falsos positivos y se recupera
rápidamente, además cuenta con un área de curva roc de 1; el resto de clases de ataques en la fase
de prueba tienen una área de 1 siendo ésta la mejor clasificación, lo cual indica que el modelo
propuesto presenta una alta sensibilidad y una alta especificidad en todas las clases. Se puede
considerar como una propuesta interesante ya que al ser ataques modernos el modelo presenta una
buena discriminación de ataques en los flujos de datos tomados por expertos y propuesto en el
dataset de cicids 2017.

Un modelo de estas prestaciones presentaría una buena respuesta ante las intrusiones lo cual es
lo que se busca: minimizar el número de intrusiones presentes en la red o en la organización que
implantaría un modelo de detección y prevención de ataques e intrusiones.

70
Capítulo 4 Análisis de resultados
______________________________________________________________________________

4.2 Métricas red neuronal convolucional

Tabla 24: Métrica Clasificador red neuronal convolucional en fase de entrenamiento.

Exactitud Precisión Puntuación F1 Exhaustividad


0,9925 0,8901 0,9923 0,9000

Tabla 25: Métrica Clasificador red neuronal convolucional en fase de prueba.

Exactitud Precisión Puntuación F1 Exhaustividad


0,9925 0,8900 0,9923 0,9000

Tiempo de entrenamiento y prueba en segundos: 899.013 s o 14.98 minutos.

Como se observa en las tablas 24 y 25, las métricas de la red neuronal convolucional puesta en
entrenamiento y prueba con el dataset cicids 2017, tienen unos buenos rendimientos con el
tratamiento de los datos, como son el aplanamiento y la transformación para ser procesado en las
capas convolucionales y en las neuronas, para dar como respuesta una etiqueta predicha que será
comparada con la etiqueta real; es de precisar que el modelo tiene una buena exactitud en 0,99 en
ambas fases de prueba y entrenamiento, presenta una precisión buena de 0,89 en ambas fases de
entrenamiento y prueba.

Figura 31: Modelo de exactitud red neuronal convolucional.


Como se observa en la figura 31 el modelo de exactitud tiene un rizado invertido entre la época
12.5 y 15.0 debido al desbalance de los datos a partir de la época 15 el modelo se estabiliza y
mantiene la cercanía en la fase de prueba y entrenamiento.

71
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 32: Modelo de perdida red neuronal convolucional.


Como se aprecia en la figura 32 el modelo de perdida de la red neuronal convolucional es muy
estable y presenta una buena trayectoria en el transcurso de las épocas.

Figura 33: Matriz de confusión Red Neuronal Convolucional en fase de entrenamiento.

72
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Tabla 26: Reporte de clasificación red neuronal convolucional en fase de entrenamiento.
precision recall f1-score support
BENIGN 1.00 1.00 1.00 2649895
DDoS 1.00 0.37 0.54 1572
PortScan 0.99 0.99 0.99 102424
Bot 0.98 0.97 0.97 16658
Infiltration 0.97 0.99 0.98 368283
Web Attack � Brute Force 0.85 0.83 0.84 8852
Web Attack � XSS 0.95 0.75 0.84 9261
Web Attack � Sql Injection 0.96 0.99 0.98 12739
FTP-Patator 0.00 0.00 0.00 16
SSH-Patator 0.00 0.00 0.00 28
DoS slowloris 0.99 0.99 0.99 127129
DoS Slowhttptest 0.97 0.98 0.97 9306
DoS Hulk 0.68 0.92 0.78 2441
DoS GoldenEye 1.00 0.12 0.22 32
Heartbleed 0.95 0.02 0.03 1071
accuracy 0.99 3309707
macro avg 0.82 0.66 0.68 3309707
weighted avg 0.99 0.99 0.99 3309707

Como se observa en la figura 33 y en la tabla 26, la red neuronal convolucional reconoce bien
la tipología de ataques; sin embargo, no reconoce el tipo de ataque ssh patator y el ataque fpt
patator, dado el número de muestras bajo en el dataset en la fase de entrenamiento que el modelo
alcanza a detectar; es de tener en cuenta la transformación de datos y la extracción de
características.

Figura 34: Matriz de confusión red neuronal convolucional en fase de prueba.


73
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Como se observa en la figura 34, la red neuronal convolucional reconoce bien la tipología de
ataques; sin embargo, no reconoce el tipo de ataque ssh patator y el ataque fpt patator, dado el
número de muestras bajo en el dataset en la fase de prueba que el modelo alcanza a detectar; es
de tener en cuenta la transformación de datos y la extracción de características.

Figura 35: Curvas roc en fase de entrenamiento Red Neuronal Convolucional.


Como se observa en la figura 35 la curva roc en fase de entrenamiento de la red neuronal
convolucional tiene un área de curva general de 1, dando como test prometedor.

74
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 36: Curva Roc en fase de entrenamiento multiclase red neuronal convolucional.
Bening clase 0, DDOS clase 1, Portscan clase 2, Bot clase 3, infiltration clase 4, web atack brute forcé clase 5, web
attack xss clase 6, web attack sql injection clase 7, fpt patator clase 8, ssh patator clase 9, dos slowloris clase 10, Dos
slowhttptest clase 11, dos hulk clase 12, dos goldeneye clase 13, heartbleed clase 14.

Como se observa en la figura 36, la curva roc en fase de entrenamiento multiclase en la red
neuronal convolucional, el tipo de ataque ssh patator clase 9 tiene un área de curva roc de 0,5 0,
un test malo, lo que indica que no lo reconoce o no lo puede clasificar; el tipo de ataque clase 13
dos goldeneye tiene un área de curva roc de 0,50 un test malo no lo reconoce ni lo clasifica; el
ataque dos hulk clase 12 tiene un área de curva roc de 0,53 test malo no lo reconoce ni lo clasifica;
el ataque clase clase 14 heartbleed tiene un área de curva roc de 0,52 test malo ni lo clasifica ni lo
reconoce; los 11 restantes tipos de ataque incluídos los paquetes benignos tienen una buena
clasificación y una buena área de curva roc.

75
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 37: Curva Roc en fase de prueba Red Neuronal Convolucional.


Como se observa en la figura 37, el área de curva roc es de 1, test perfecto para la fase de prueba
de la red neuronal convolucional con el dataset CICIDS 2017, lo que indica que el modelo
comprende bien los datos y da una buena precisión de las etiquetas predicas con las etiquetas
reales.

76
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 38: Curva Roc en fase de prueba Red Neuronal Convolucional.


Bening clase 0, DDOS clase 1, Portscan clase 2, Bot clase 3, infiltration clase 4, web atack brute forcé clase 5, web
attack xss clase 6, web attack sql injection clase 7, fpt patator clase 8,ssh patator clase 9,dos slowloris clase 10, Dos
slowhttptest clase 11, dos hulk clase 12, dos goldeneye clase 13, heartbleed clase 14.

Según la figura 38, el área de curva roc en fase de prueba multiclase, la clase 9 ssh patator tiene
un área de 0,50 lo que es un test malo e indica que no se reconoce o no se muestra en el modelo
convolucional; la clase 12 dos hulk área de curva roc 0,53 no se reconoce o no se logra identificar;
clase 13 dos goldeneye área de la curva roc 0,50 test malo, no logra reconocer el tipo de ataque;
los otros 12 tipos de ataques tienen una buena área de curva roc como test prometedor.

77
Capítulo 4 Análisis de resultados
______________________________________________________________________________

METRICAS DE LOS CLASIFICADORES USADOS CON


EL DATASET CICIDS
Exactitud Puntaje F1 Precision Sensibilidad
0,9953

0,9953
0,9953

0,9948

0,9948
0,9948

0,9925
0,9919
0,99

0,9411

0,9411
0,9407
1

0,9268
0,9267

0,9267

0,94
0,93

0,8799

0,89
0,9
0,8003
0,7981
0,79

0,79

0,3787

0,3787
0,38
MAQUINA DE
MULTINOMIAL
REGRESION

K VECINOS

NAIVE BAYES
RED NURONAL

CONVOLUCIONAL
CERCANOS
LOGISTICA

GAUSSIANO
NAIVE BAYES

VECTORIAL

RED NURONAL
PROFUNDA

SOPORTE

Figura 39: Diagrama de barras las métricas de los clasificadores usados con el dataset cicids
Como se observa en la figura 39 el diagrama de barras las métricas de los clasificadores usados
con el dataset cicids, la Red Neuronal profunda de 3 capas densas obtiene las mejores métricas
en entrenamiento y validacion.

Para más detalles en la clasificación general y clasificación por cada clase remitirse al Anexo A y
Anexo B.

En la fase de validación conjunta con la Universidad Nacional de Colombia se analizará de


nuevo el comportamiento de todos los clasificadores en tiempo real.

78
Capítulo 4 Análisis de resultados
______________________________________________________________________________

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

Proyecto: Prototipo para detección de ataques de ddos (denegación de servicios distribuida)


basado en aprendizaje de maquina en una arquitectura orientada a servicios en la nube. Entre el
2021 y 2023.

Nota: También se validó con algoritmos convencionales de Machine Learning tales como
Regresión logística, K vecinos cercanos, Naive Bayes Gaussiano, Naive Bayes multinomial,
Maquina de soporte vectorial, para conocer detalles de esta investigación remitirse al (Anexo B)
adicionalmente se muestra el proceso de captura y transformación de los datos en tiempo real en
ataques de denegación de servicios distribuidos.

4.3.1 Métricas red neuronal profunda en la validación.

Tabla 27:Métrica Clasificador red neuronal profunda en fase de entrenamiento.

Exactitud Precisión Puntuación F1 Exhaustividad


0.9887 0.9893 0.99 0.9887

Tabla 28:Métrica Clasificador red neuronal profunda en fase de validación.

Exactitud Precisión Puntuación F1 Exhaustividad


0.9886 0.9892 0.99 0.9886

Tiempo de entrenamiento y prueba en segundos: 463.397 s o 7.73 minutos.

Como se observa en las tablas 27 y 28, la red neuronal profunda en fase de entrenamiento y en
fase de validación, se logran unas buenas métricas de exactitud de 98.86%, precisión 98.92%,
puntuación f1 de 0,99 y sensibilidad de 98.87%, lo cual indica que el modelo de red neuronal
profunda obtiene una buena respuesta de predicción frente a la etiqueta real, cuestión muy
importante en la clasificación de intrusiones.

79
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Tabla 29: Métricas de red neuronal profunda con enriquecimiento de datos en fase de
entrenamiento.
precision recall f1-score support

BENIGN 0.9970 0.9949 0.9960 1830889


DDoS 0.9895 0.9923 0.9909 217046
DoS GoldenEye 0.9465 0.9703 0.9583 32319
DoS Hulk 0.9702 0.9833 0.9767 231026
DoS Slowhttptest 0.7051 0.9095 0.7944 20589
DoS slowloris 0.9291 0.7741 0.8445 40396

accuracy 0.9887 2372265


macro avg 0.9229 0.9374 0.9268 2372265
weighted avg 0.9893 0.9887 0.9888 2372265

Como se aprecia en la tabla 29 de las métricas la red neuronal profunda obtiene unos resultados
prometedores métricas superiores en exactitud, precisión, puntuación f1 en la fase de entrenamiento
para todas las clases de ataques de denegación de servicios, lo cual demuestra que el modelo es el
más apropiado para poner a prueba en la validación.

Tabla 30: Métricas de red neuronal profunda con enriquecimiento de datos en fase de validación.
precision recall f1-score support

BENIGN 0.9969 0.9950 0.9960 456983


DDoS 0.9906 0.9925 0.9916 54821
DoS GoldenEye 0.9500 0.9710 0.9604 8058
DoS Hulk 0.9701 0.9834 0.9767 57933
DoS Slowhttptest 0.7039 0.9039 0.7915 5192
DoS slowloris 0.9251 0.7695 0.8402 10080

accuracy 0.9887 593067


macro avg 0.9228 0.9359 0.9260 593067
weighted avg 0.9893 0.9887 0.9887 593067

Como se aprecia en la tabla 30 de las métricas la red neuronal profunda obtiene unos resultados
prometedores métricas superiores exactitud precisión puntuación f1 en la fase de prueba para todas
las clases de ataques de denegación de servicios, lo cual demuestra que el modelo es el más
apropiado para poner a prueba en la validación.

80
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 40: Modelo de Exactitud en funcion de las epocas en fase de entrenamiento y validación.

Figura 41: Modelo de perdida en función de las épocas en fase de entrenamiento y validación.
Como se observa en las figuras 40 y 41 el modelo de red neuronal profunda es muy estable
logrando la exactitud en valores muy cercanos en entrenamiento y validación que es lo que se busca
en un modelo ideal, que el desfase de una con respecto a la otra sea lo más pequeño posible y sin
rizados en el transcurso de los entrenamientos en cada época.

81
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 42: Matriz de confusión en fase de entrenamiento red neuronal profunda.


Como se observa en la figura 42 la matriz de confusión presenta una diagonal muy representativa
de la correcta clasificación de los ataques de uno contra el mismo y contra los demás, si bien es
apreciable que se muestra otros ataques clasificados en otras categorías es una muy pequeña
proporción respecto a la diagonal más cercana, es de esperarse esta tipología por el tamaño del
dataset.

82
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 43: Matriz de confusión en fase de validación Red Neuronal Profunda.


Como se observa en la figura 43 la matriz de confusión presenta una diagonal muy representativa
de la correcta clasificación de los ataques de uno contra el mismo y contra los demás, si bien es
apreciable que se muestra otros ataques clasificados en otras categorías es una muy pequeña
proporción respecto a la diagonal más cercana, es de esperarse esta tipología por el tamaño del
dataset.

83
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 44: Curva Roc Red Neuronal Profunda en fase de entrenamiento.


Benign clase 0, Ddos clase 1, Dos Goldenye clase 2, Dos Hulk clase 3, Dos Slowhttptest clase 4, Dos Slowloris
clase 5.

Como se observa en la figura 44 las curva roc en fase de prueba presenta un área de 1 que es un
área de curva roc muy ideal por la estabilidad del modelo en la tasa de verdaderos positivos, que en
esta investigación es relevante la buena clasificación de los ataques para dar robustez a un sistema
de detección de intrusiones en un enfoque a los ataques de denegación de servicios.

84
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 45: Curva Roc Red Neuronal Profunda en fase de validación.


Benign clase 0, Ddos clase 1, Dos Goldenye clase 2, Dos Hulk clase 3, Dos Slowhttptest clase 4, Dos Slowloris
clase 5.

Como se observa en la figura 45 las curva roc en fase de prueba presenta un área de 1 que es un
área de curva roc muy ideal por la estabilidad del modelo en la tasa de verdaderos positivos, que en
esta investigación es relevante la buena clasificación de los ataques para dar robustez a un sistema
de detección de intrusiones en un enfoque a los ataques de denegación de servicios.

85
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Ya que el modelo final está debidamente entrenado y el buen rendimiento en la fase de prueba
es que nos permitirá una buena clasificación en el entorno alojado en la nube para procesar grandes
flujos de datos y obtener unas predicciones prometedoras.

Figura 46: Evaluación de la clasificación de los datos puros de DDOS en fase de validación.
Evaluación de la clasificación de los datos puros de DDOS en fase de validación con registros
diferentes a los de entrenamiento y prueba.

Tabla 31: Evaluación de clasificación de datos puros de DDOS en fase de validación con
registros diferentes a los de entrenamiento y prueba.
Registros: 19235 Total
BENIGN 10
DDoS 19162
DoS GoldenEye 2
DoS Hulk 60
DoS Slowhttptest 1

Como se observa en la tabla 31 Cantidad total registros DDos 19235, registros bien clasificados
por el modelo 19162, mal clasificados 73 y en la figura 46 se observa el mayor dominio de ataques
DDoS frente a las otras categorías.

86
Capítulo 4 Análisis de resultados
______________________________________________________________________________
4.3.2 Métricas red neuronal convolucional en la validación.

Tabla 32: Métrica Clasificador red neuronal convolucional en fase de entrenamiento.

Exactitud Precisión Puntuación F1 Exhaustividad


0.9838 0.9838 0.9841 0.9838

Tabla 33: Métrica Clasificador red neuronal convolucional en fase de validación.

Exactitud Precisión Puntuación F1 Exhaustividad


0.9838 0.9838 0.9841 0.9841

Tiempo de entrenamiento y validacion en segundos: 1525.176 s o 25.41 minutos.


Como se observa en la tabla 32 y tabla 33, las métricas de la red neuronal profunda puesta en
entrenamiento y validacion con el dataset CICIDS, tienen unos buenos rendimientos con el
tratamiento de los datos, como son el aplanamiento y la transformación para ser procesado en las
capas convolucionales y en las neuronas, para dar como respuesta una etiqueta predicha que será
comparada con la etiqueta real; es de precisar que el modelo tiene una buena exactitud en ambas
fases de prueba y entrenamiento, presenta una precisión buena en ambas fases de entrenamiento y
prueba.

Tabla 34: Métricas de red neuronal convolucional con enriquecimiento de datos en fase de
entrenamiento.
precision recall f1-score support

BENIGN 0.9962 0.9896 0.9929 1830889


DDoS 0.9913 0.9885 0.9899 217046
DoS GoldenEye 0.7283 0.9774 0.8347 32319
DoS Hulk 0.9636 0.9835 0.9734 231026
DoS Slowhttptest 0.7212 0.8555 0.7826 20589
DoS slowloris 0.9415 0.7806 0.8536 40396

accuracy 0.9840 2372265


macro avg 0.8904 0.9292 0.9045 2372265
weighted avg 0.9856 0.9840 0.9843 2372265

Como se aprecia en la tabla 34 de las métricas la red neuronal convolucional se obtienen unos
resultados prometedores métricas superiores en precisión, puntuación f1y Exhaustividad, con una
exactitud general en la fase de entrenamiento para clases múltiples en la detección de ataques de
denegación de servicios, lo que demuestra que el modelo de red neuronal profunda es importante y
de gran aplicación para el sistema de detección de intrusos.

87
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Tabla 35: Métricas de red neuronal convolucional con enriquecimiento de datos en fase de
validación.
precision recall f1-score support

BENIGN 0.9959 0.9896 0.9928 456983


DDoS 0.9919 0.9881 0.9900 54821
DoS GoldenEye 0.7259 0.9769 0.8329 8058
DoS Hulk 0.9641 0.9827 0.9733 57933
DoS Slowhttptest 0.7239 0.8478 0.7810 5192
DoS slowloris 0.9379 0.7805 0.8520 10080
accuracy 0.9838 593067
macro avg 0.8899 0.9276 0.9037 593067
weighted avg 0.9854 0.9838 0.9842 593067

Como se aprecia en la tabla 35 de las métricas la red neuronal convolucional se obtienen unos
resultados prometedores métricas superiores al en precisión, puntuación F1y exhaustividad, con
una exactitud general en la fase de prueba. para clases múltiples en la detección de ataques de
denegación de servicios, lo que demuestra que el modelo de red neuronal convolucional es
importante y de gran aplicación para el sistema de detección de intrusos.

Figura 47: Matriz de confusión red neuronal Convolucional en fase de entrenamiento.

88
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Como se observa en la figura 47 la matriz de confusión presenta una buena diagonal de
clasificación de los ataques que corresponden con su etiqueta real, también se observa una
clasificación errónea en bajo porcentaje en otras clases de ataques, existe una pequeña tendencia
de clasificación errónea con benignos.

Figura 48: Matriz de confusión Red Neuronal Convolucional en fase de validación.


Como se observa en la gráfica 48 la matriz de confusión muestra el buen comportamiento de
clasificación y estabilidad de la red neuronal en las predicciones en la diagonal, pero con un
pequeño porcentaje de error de mala clasificación en otras clases de ataques.

89
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 49: Curva ROC Red Neuronal Convolucional en fase de entrenamiento.


Benign clase 0, Ddos clase 1, Dos Goldenye clase 2, Dos Hulk clase 3, Dos Slowhttptest clase 4, Dos Slowloris
clase 5.

Como se observa en la figura 49 el área de curva ROC demuestra una estabilidad del modelo
convolucional en el eje de tasa de verdaderos positivos, demostrando ser una buena aplicación de
modelo para la propuesta de solución a la detección de intrusiones en este caso detección de una
denegación de servicios distribuidas.

90
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 50: Curva ROC Red Neuronal Convolucional en fase de validación.


Benign clase 0, Ddos clase 1, Dos Goldenye clase 2, Dos Hulk clase 3, Dos Slowhttptest clase 4,
Dos Slowloris clase 5.

Como se observa en la figura 50 el área de curva ROC presenta una tasa de verdaderos positivos
superiores al 89% estableciendo que es un modelo estable y capaz de predecir correctamente la
mayoría de clases con las que fue puesto en validacion.

91
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 51: Evaluación de la clasificación de los datos puros de DDOS en fase de validación.
Evaluación de la clasificación de los datos puros de DDOS en fase de validación con registros
diferentes a los de entrenamiento y prueba.

Figura 52: Evaluación de la clasificación de los datos puros de DDOS en fase de validación.
Evaluación de la clasificación de los datos puros de DDOS en fase de validación con registros
diferentes a los de entrenamiento y prueba.
Registros: 19235 Total
BENIGN 13
DDoS 19140
DoS Hulk 81
DoS Slowhttptest 1

Como se observa en las figuras 51 y 52 se realiza una predicción con datos puros de DDOS y
distintos a los que fue entrenado el modelo, donde clasifica bien 19140 un 99.51% registros ddos
de un total de 19235 registros.

92
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Laboratorio LIGRED Universidad Nacional de Colombia Sede Manizales

Se realiza una validación externa en el Laboratorio LIGRED para comprobar la calidad de las
métricas en un entorno externo y conexión de red diferente, la topología de la red que implementó
el estudiante de Maestría José Albeiro Montes Gil de la Universidad Nacional de Colombia usando
los datos de red del celular.

Figura 53: Topología de red.


Como se observa la figura 53 la conexión a internet la da un proveedor de red móvil a través
de la red wifi que comparte el celular, el usuario 3 es el puente entre ethernet y NDIS que va
conectado al Swich capa 2 por el primer puerto, en el puerto 2 y 3 están dos usuarios generando
tráfico de red benigno en la navegación web, en el puerto 5 es desplegado el prototipo
IDS(Victima) y en el puerto 4 está la maquina atacante.

93
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Figura 54: Laboratorio LIGRED.


Como se observa en la figura 54 la topología de la red y los equipos conectados para realizar
las validaciones pertinentes al prototipo de red neuronal profunda y red neuronal convolucional y
KNN con los nuevos datos aplicando el filtrado de protocolos por cada categoría de ataques de
denegación de servicios.

Figura 55:Ataque Dos Slowloris


Tabla 36:Ataque DoS Slowloris

Ataque DoSSlowloris
Técnica Benigno DDoS DoSGoldenEye DoSHulk DoSSlowhttptes DoSSslowloris Total

KNN 118 1 162 0 150 11 442


DNN 40 2 1 0 0 399 442
CNN 40 0 1 0 1 400 442

94
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Como se observa en la figura 55 y en la tabla 36 la red neuronal profunda detecta de manera


correcta 399 registros de ataque en la categoría DoS Slowloris, 1 registro en la categoría DoS
Goldeneye, 2 registros en DDoS y 40 registros en la clase Benigno, de un total de registros de
442.

La red neuronal convolucional detecta de manera correcta 400 registros de ataque en la


categoría DoS Slowloris, 1 registro en la categoría DoS Goldeneye, 1 registros en DoS
Slowhttptest, 1 registro en la categoría DDoS y 40 registros en la clase Benigno, de un total de
registros de 442.

El Algoritmo k vecinos cercanos detecta de manera correcta 11 registros de ataque en la


categoría DoS Slowloris, 162 registro en la categoría DoS Goldeneye, 150 registros en DoS
Slowhttptest y 118 registros en la clase Benigno, de un total de registros de 442.

Figura 56:Ataque DDoS.

Tabla 37:Ataque DDoS.

Ataque DDoS

Técnica Benigno DDoS DoSGoldenEye DoSHulk DoSSlowhttptes DoSSslowloris Total


KNN 1887 0 56 0 6 4233 6182
DNN 72 5984 1 0 96 29 6182
CNN 48 6112 20 1 1 0 6182

95
Capítulo 4 Análisis de resultados
______________________________________________________________________________

Como se observa en la figura 56 y en la tabla 37 la red neuronal profunda detecta de manera


correcta 5984 registros de ataque en la categoría DDoS, 72 registro en la categoría Benigno,1
registros en la clase Dos Goldeneye,96 en Dos Slowhttptest,29 en Dos Slowloris de un total de
registros de 6182.
La red neuronal convolucional detecta de manera correcta 6112 registros de ataque en la
categoría DDoS, 48 registro en la categoría Benigno, 20 registros en la clase Dos Goldeneye, 1 en
la clase Dos Hulk, 1 en Dos Slowhttptest, de un total de registros de 6182.
El Algoritmo k vecinos cercanos detecta de manera correcta 0 registros de ataque en la categoría
DDoS, 1887 registro en la categoría Benigno,56 registros en la clase Dos Goldeneye, 6 en Dos
Slowhttptest, 4233 en Dos Slowloris de un total de registros de 6182.
Tabla 38:Ataque DDoS.

Ataque DoSGoldeneye

Técnica Benigno DDoS DoSGoldenEye DoSHulk DoSSlowhttptes DoSSslowloris Total


KNN 1904 0 5635 28 2791 251 10609
DNN 273 2 7213 7 2292 822 10609
CNN 390 22 7240 6 409 2542 10609

Figura 57:Ataque Dos Goldeneye.


Como se observa en la figura 57 y en la tabla 38 la red neuronal profunda detecta de manera
correcta 7213 registros de ataque en la categoría DoS Goldeneye, 273 registro en la categoría

96
Capítulo 4 Análisis de resultados
______________________________________________________________________________
Benigno, 2 registros en la clase DDoS, 7 en la categoría DoS Hulk, 2292 en Dos Slowhttptest, 822
en Dos Slowloris de un total de registros de 10609.
La red neuronal convolucional detecta de manera correcta 7240 registros de ataque en la
categoría DoS Goldeneye, 390 registro en la categoría Benigno, 22 registros en la clase DDos, 409
en Dos Slowhttptest, 2542 en Dos Slowloris de un total de registros de 10609.
El Algoritmo k vecinos cercanos detecta de manera correcta 5635 registros de ataque en la
categoría DoS Goldeneye, 1904 registro en la categoría Benigno, 28 registros en la clase Dos Hulk,
2791 en Dos Slowhttptest, 251 en Dos Slowloris de un total de registros de 10609.
Tabla 39:Ataque DoS Slowhttptest.

Ataque DoSSlowhttptest

Técnica Benigno DDoS DoSGoldenEye DoSHulk DoSSlowhttptes DoSSslowloris Total


KNN 737 0 176 0 60 64 1037
DNN 17 1 1 1 1008 9 1037
CNN 269 2 3 0 753 10 1037

Figura 58:Ataque DoS Slowhttptest.


Como se observa en la figura 58 y en la tabla 39 la red neuronal profunda detecta de manera
correcta 1008 registros de ataque en la categoría DoS Slowhttptest, 17 registro en la categoría
Benigno, 1 en categoría DDoS, 1 en categoría Dos Goldeneye, 1 registros en la clase Dos Hulk, 9
en Dos Slowloris de un total de registros de 1037.
La red neuronal convolucional detecta de manera correcta 753 registros de ataque en la
categoría DoS Slowhttptest, 269 registro en la categoría Benigno, 2 en categoría DDoS, 3 en
categoría Dos Goldeneye, 10 en Dos Slowloris de un total de registros de 1037.

97
Capítulo 4 Análisis de resultados
______________________________________________________________________________
El Algoritmo k vecinos cercanos detecta de manera correcta 60 registros de ataque en la
categoría DoS Slowhttptest, 737 registro en la categoría Benigno, 176 en categoría Dos Goldeneye,
64 en Dos Slowloris de un total de registros de 1037.
Tabla 40:Ataque Dos Hulk.
Ataque DoSHulk

Técnica Benigno DDoS DoSGoldenEye DoSHulk DoSSlowhttptes DoSSslowloris Total


KNN 5826 13551 6284 1036 403 731 27831
DNN 1522 458 131 25386 0 334 27831
CNN 2577 886 231 24122 0 15 27831

Figura 59:Ataque Dos Hulk.


Como se observa en la figura 59 y en la tabla 40 la red neuronal profunda detecta de manera
correcta 25386 registros de ataque en la categoría DoS Hulk, 1522 registro en la categoría Benigno,
458 en categoría DDoS, 131 en categoría Dos Goldeneye, 334 en Dos Slowloris de un total de
registros de 27831.
La red neuronal convolucional detecta de manera correcta 24122 registros de ataque en la
categoría DoS Hulk, 2577 registro en la categoría Benigno, 886 en categoría DDoS, 231 en
categoría Dos Goldeneye, 15 en Dos Slowloris de un total de registros de 27831.
El Algoritmo k vecinos cercanos detecta de manera correcta 1036 registros de ataque en la
categoría DoS Hulk, 5826 registro en la categoría Benigno, 13551 en categoría DDoS, 6284 en
categoría Dos Goldeneye, 403 registros en la clase Dos Slowhttptest, 731 en Dos Slowloris de un
total de registros de 27831.

98
Capítulo 4 Análisis de resultados
______________________________________________________________________________

METRICAS CLASIFICADORES EN LA
VALIDACION EN TIEMPO REAL
Exactitud Puntaje F1 precision sensibilidad

0,9896
0,9891
0,9887

0,9887
0,9883

0,989
0,9841

0,9841
0,9838

0,9838
0,99

0,99

0,8687

0,8687
0,8672
0,86

RED NEURONAL RED NEURONAL K VECINOS CERCANOS MAQUINA DE SOPORTE


PROFUNDA CONVOLUCIONAL VECTORIAL

Figura 60: Diagrama de barras las métricas de los clasificadores usados en la validación
conjunta Universidad Nacional de Colombia, Universidad de Caldas con el uso de dataset
estándares.
Como se observa en la figura 60 el diagrama de barras las métricas de los clasificadores usados
con el dataset CICIDS desplegada en la red de la universidad Nacional de Colombia en tiempo
real, la Red Neuronal profunda de 3 capas densas y la red neuronal convolucional obtienen los
mejores comportamientos en el despliegue y en la detección de ataques de denegación de servicio
y ataques de denegación de servicios distribuida evaluada con una amplia gama de ataques de
denegación de servicios desarrollados en varios lenguajes para obtener un campo de análisis
grande y determinante.

Para más detalles en la clasificación general y clasificación por cada clase remitirse al Anexo A y
Anexo B.

99
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________

Capítulo 5: Conclusiones y recomendaciones.

En el desarrollo de la presente tesis se evidenció que el uso del Deep Learning para la detección
de ataque e intrusiones no sólo es factible, sino que se demostró que es mejor en diferentes aspectos
como la velocidad de ejecución, las métricas y curvas ROC por clase de ataque gracias a la
capacidad de los modelos para identificar patrones en grandes conjuntos de datos y de tipología
desbalanceada. Sin embargo, la aplicación del Deep Learning se adapta a los retos significativos,
especialmente para el procesamiento de información suministrado por la herramienta
cicflowmeter, donde se evidencia que las 79 características de trafico de red aportan al modelo. En
este capítulo se discutirán estos retos, cómo se han resuelto o cómo los trabajos futuros podrían
contribuir con las soluciones.

Además, se experimentó con algoritmos de Machine Learning tradicional como Regresión


logística, k vecinos cercanos, Naive Bayes multinomial, Naive Bayes Gaussiano, Maquina de
soporte vectorial sobre conjuntos de datos propuestos por sharafaldin y realizando una validación
con énfasis en los ataques de denegación de servicios en una investigación conjunta Universidad
Nacional de Colombia - Universidad de Caldas. El objetivo de esta tesis se definió como
“¿Implementar un prototipo de arquitectura Deep learning aplicado a la detección de
intrusiones?". Se realizaron un total de 4 prototipos de red neuronal profunda, donde el cuarto
prototipo demostró ser la mejor configuración en la respuesta de modelo de perdida y modelo de
accuracy ya que se logró un accuracy de 99.45%, adicionalmente se obtuvieron resultados
significativos en los reportes de clasificación que demuestran que el modelo es capaz de dar
correctas predicciones en la fase de prueba y en la fase de entrenamiento como en la validación
realizada conjuntamente con la Universidad Nacional.

En los prototipos se realizaron diferentes ajustes en los parámetros e hiperparametros, ajustes


del número de neuronas, el número de capas, función de activación, limpieza y transformación de
datos, como la adquisición de nuevos datos en tiempo real con la herramienta cicflowmeter. En
los resultados de las distintas configuraciones de red neuronal profunda y red neuronal
convolucional indica que la cuarta configuración de red neuronal profunda y red neuronal
convolucional es bastante robusta para dar las predicciones de forma estática y en la validación en
tiempo real con resultados bastante prometedores y ágil en las predicciones

El prototipo demostró ser bastante potente tanto en conjunto de datos original de sharafaldin
como en el conjunto de datos con nuevos registros tomados en tiempo real de ataques de
denegación de servicios en las siguientes categorías DoS Hulk, Dos Goldeneye, Dos Slowloris,
Dos Slowhttptes, DDoS y benignos, con un accuracy de 99.45% en la general y por cada clase de
ataque en sus 15 categorías.

100
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________
Las tecnologías de aprendizaje profundo, un subconjunto de algoritmos de aprendizaje
automático (en sí mismo es un subconjunto de algoritmos de inteligencia artificial) puede predecir
y proteger a las organizaciones de ciberataques conocidos y desconocidos en tiempo real, al tiempo
que mitiga el problema de los falsos positivos, con lo cual se aproxima al reconocimiento de
nuevos patrones de ataques e intrusiones.

Las redes profundas pueden reducir automáticamente la complejidad del tráfico de la red para
encontrar las correlaciones entre los datos sin intervención humana. Además, el aprendizaje
profundo es más poderoso para detectar ataques de día cero y patrones de ataque sofisticados al
aprender de un gran número de muestras de entrenamiento para construir el modelo de detección.

Las arquitecturas Deep Learning se construyen normalmente como redes multicapa, de modo
que las características más abstractas se calculan como funciones no lineales de características de
nivel inferior; Estas técnicas pueden abordar problemas de datos a gran escala en comparación con
los algoritmos de Machine Learning poco profundos.

5.1 Relación con los objetivos.

Diseño e implementación de arquitecturas híbridas a partir del estado del arte del Deep
learning en la detección intrusiones.

En el capítulo 3 y subcapítulo 3.2, Diseño de la Solución, se presentan las distintas


configuraciones de la red neuronal profunda y sus grafos, donde se indica el número de
épocas, el algoritmo de gradiente, la función de pérdida, el número de neuronas y número
de capas, como el learning rate.

Se diseñaron varias arquitecturas profundas comenzando por 7 capas densas se


evidenció “overfiting” sobre entrenamiento presentando risos en la precisión respecto a las
épocas en entrenamiento y prueba al igual que la perdida de coste en función de las épocas
se probó con los optimizadores Nadam y Adam que presento mejoría en el modelo, se
ensayó con todos los otros optimizadores Adadelta, Adagrad, Adamax, RMSprop, sgd,
presentando bajos resultados y sobre entrenamiento, además se ensayó con las funciones
de activación deserialize, elu, exponencial, gelu, get, hard-sigmoid, linear, relu, selu,
sigmoid, serialize, softmax, softplus, softsing, swish, tanh lo que llevo a realizar técnicas
de disminución de capas y numero de neuronas en función de los datos de entrada.

Lo que conllevo al diseño final de 3 capas densas llegando a un punto ideal en los
modelos de perdida y modelos de precisión en la fase de entrenamiento y prueba, que es la
simetría y cercanía de las dos fases de entrenamiento como de prueba y logró el punto
global del descenso de gradiente que brinda un modelo de red neuronal profundo y modelo
101
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________
de red neuronal convolucional robusto, eficaz, ágil y un nivel de métricas de detección de
intrusiones alto, muy superior al estado del arte reportado, además se logró una correcta
detección por cada una de las 14 clases de ataque y validación con 6 clases de denegación
de servicio distribuido con sus variantes en la categoría respectiva.

Exploracion el estado del arte del Deep learning en la detección de intrusiones.

En el capítulo 2, Marco Teórico y Estado del Arte, se hace una descripción siguiendo el
estilo de una revisión bibliográfica narrativa, donde se incluyen tablas con las principales
investigaciones científicas y de revistas científicas como Science Direct, Scopus, Springer,
IEEE, a fin de proporcionar una amplia visión sobre las principales técnicas y métodos para
proponer una arquitectura Deep learning, aplicada a un sistema de detección y prevención
de ataques e intrusiones; Se realiza una revisión detallada y sistemática en torno a la
detección de intrusiones para el análisis de las líneas de investigación más actuales, así
como las recomendaciones a tener en cuenta en trabajos futuros.

En el capítulo 2 se plantean las diferentes alternativas de los sistemas de detección de


intrusiones, los sistemas tradicionales y los sistemas de detección de intrusiones basados
en Machine Learning y su taxonomía.

Se establece un marco comparativo en el capítulo 3 sobre los principales clasificadores


del Machine Learning en clases múltiples, adaptando el uso de los dataset estandares para
dar una comparación frente a la propuesta de red neuronal profunda. Los principales
algoritmos son Regresión Logistica, K vecinos cercanos, Naive Bayes multinomial,
Máquina de soporte vectorial, Naive Bayes gaussiano, Red neuronal profunda, Red
neuronal convolucional como la debida aplicación de métricas para analizar el rendimiento
de estos clasificadores.

En la revisión del estado del arte permite conocer las arquitecturas orientadas a la
detección de ataque es intrusiones en red, si bien algunas investigaciones reducían atributos
al dataset CICIDS 2017, mostraban una baja en las métricas, otro factor que se identificó
es la baja representación de ataques en algunas categorías, lo que nos da indicios de realizar
un aumento de datos que sea lo suficientemente significativo para que el modelo los detecte
y brinde unas buenas métricas, se realizó una amplia investigación en las funciones de
activación y en los optimizadores, entre otros ajustes de hiperparametros, en otras
investigaciones se representan los modelos en clasificación binaria etiquetando solo la
clase benignos y malignos.

102
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________
La fase de revisión de la literatura proporciona las respuestas a las preguntas de
investigación, que están relacionadas con los objetivos principales de este trabajo de
investigación. A partir de la revisión de la literatura, se propone un marco híbrido de
detección de intrusiones enriquecido con capas profundas, funciones de activación para
una tipología de dataset grande con desbalance de las clases de ataques, entre otras técnicas
del aprendizaje automático. Se integraron diferentes componentes, la técnica de detección
basada en el comportamiento, para aumentar la seguridad. Una de nuestras principales
contribuciones está relacionada con el diseño combinado del enfoque de aprendizaje
automático, que aumenta el rendimiento de nuestro marco propuesto, identificando,
clasificando las intrusiones y reduciendo las falsas alarmas con mayor precisión. Los
registros de salida de esta detección serían muy útiles para la seguridad de un sistema, ya
que ayudaría a los desarrolladores a definir nuevas contramedidas de seguridad. Sería más
fácil para los desarrolladores formular estrategias de defensa, que podrían evitar que el
sistema presente fallos o intrusiones y ampliar su funcionalidad durante más tiempo. En la
fase experimental se midió el rendimiento de diferentes tipos de algoritmos. Los resultados
mostraron que estos algoritmos pueden utilizarse conjuntamente para minimizar los
inconvenientes de cada uno. Por lo tanto, la aplicación y puesta en marcha en el marco de
trabajo que se ha diseñado, esta combinación ayuda a las empresas o partes interesadas a
identificar las amenazas antes de que se produzcan daños.

Experimento arquitecturas de impacto de la comunidad científica que usen Deep learning


en el problema de detección de intrusiones.

Se logro evidenciar que utilizando redes neuronales profundas y redes neuronales


convolucionales en arquitecturas basadas en 3 capas profundas, con un preprocesamiento
de los datos se logra mejorar las métricas de reconocimiento y predicción de los ataques
con unas métricas en la fase de entrenamiento con una exactitud del 99.48%, precisión de
99,53%,puntuación F1 de 1, Exhaustividad de 99,53%, y en la fase de prueba una exactitud
del 99.53%, precisión de 99,53%,puntuación F1 de 1, Exhaustividad de 99,53% unas
métricas muy prometedoras que ofrece la red neuronal profunda con un tiempo de
entrenamiento y prueba de 27.85 minutos.

Las métricas de la red neuronal convolucional en la fase de entrenamiento con una


exactitud del 99.25%, precisión de 89,01%, puntuación F1 de 99,23 y en la fase de prueba
una exactitud del 99.25%, precisión de 89.00%, puntuación F1 de 99,23 tanto que superan
lo que estaba reportado a la fecha en el estado del arte en la red neuronal profunda como
en la red neuronal convolucional, esto derivado de utilizar una estrategia como la que se
explica en el experimento.

103
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________
Además de mejorar las métricas existentes el prototipo de arquitectura profunda y con
técnicas hibridas demuestra una solides en la detección por cada una de las 15 categorías
de ataques, siendo confirmadas y consolidadas en la validación conjunta entre la
Universidad Nacional de Colombia y la Universidad de Caldas donde el modelo demuestra
que es estable, veloz y una gran precisión en la detección de ataque de denegación de
servicios en tiempo real, la detección en tiempo real incrementa la complejidad, ratificando
que el modelo de red neuronal profundo es ágil dando predicciones a altos volúmenes de
tráfico, estable y se ajusta a datos desbalanceados y de alta dimensionalidad de
características, que son las requeridas para la detección en tiempo real.

Valido arquitecturas hibridas con base en métricas de detección de intrusiones.

Los resultados de estas técnicas de detección de intrusiones de la red neuronal


convolucional y red neuronal profunda se materializa en ventajas y acciones prometedoras
que brindan una solución real y factible a la problemática de la detección de intrusiones y
a la extensa variedad de ataques cibernéticos, aplicando la solución presentada en este
documento de tesis brinda un mejor nivel de seguridad, mediante la identificación
comprobada de todos los eventos maliciosos observados en la red, debido a que se tuvo en
cuenta todas las 79 características de trafico de red que permite analizar amenazas
complejas y difíciles, como se evidencia en la investigación conjunta experimentando con
ataques de denegación de servicios distribuido nuevos y complejos que para los enfoques
tradicionales son difíciles de identificar con claridad, lo que permite superar a los enfoques
basados en firmas y basados en anomalías que quedan cortos en redes de alta velocidad y
gran flujo de datos.

Por eso se pone a disposición esta solución en los sistemas de detección de intrusiones
basados en Deep Learning ya que se ajusta a la sofisticación de las amenazas cibernéticas
lo que permite a las empresas y usuarios implementar esta estrategia sobre la seguridad de
sus redes.

Se evidencia que es efectiva la aplicación de filtros de protocolos para la detección en


tiempo real ya que las clasificaciones en tiempo real son prometedoras tanto en el modelo
de red neuronal profundo como en el modelo de red neuronal convolucional.

Las métricas de la red neuronal Profunda en la fase validación con una exactitud del
98.38, precisión de 98.38%, puntuación F1 de 98.41 tanto que superan lo que estaba
reportado a la fecha en el estado del arte en la red neuronal profunda como en la red
neuronal convolucional, esto derivado de utilizar una estrategia como la que se explica en
el experimento.

104
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________

5.2 Recomendaciones y trabajos futuros.

Se recomienda la cuarta configuración de red neuronal profunda y la red neuronal convolucional


para uso en el sistema de detección de intrusiones con conexión en red o desplegado en la nube.

En un dataset con registros superiores a los 4 millones de datos se sugiere utilizar la 3 y 2


configuración de red neuronal profunda y red neuronal convolucional respectiva.

En ajustes de hiperparametros se recomienda la función de activación Relu, para cada capa


profunda y empezar con la utilización del optimizador Nadam con un learning rate en 0.01, 0.001,
0.0001 además observar los modelos de perdida de coste y modelo de accuracy en fase de
entrenamiento y prueba, si se llega a experimentar rizados en los modelos de perdida ajustar el
número de neuronas por capa.

Se sugiere no utilizar la tasa de abandono dropout en estos modelos profundos ya que induce a
errores y sesgos en los datos, o si se aplican que no sea de manera intensiva.

Se recomienda la utilización de todas las características del dataset ya que se comprobó en la


investigación que una reducción de características conlleva a unas métricas regulares o bajas con
respecto al estado del arte y un rendimiento deficiente en los modelos.

Como recomendación adicional en la captura de datos utilizar la herramienta cicflowmeter y un


filtrado de protocolos en los vectores de ataque, para eliminar el ruido de la red y el reetiquetado
de paquetes de carácter benigno y usual en la conexión de red.

En la experimentación con los algoritmos tradicionales del Machine Learning la red neuronal
convolucional y la red neuronal profunda demostraron ser superiores en velocidad, tiempo de
entrenamiento y en las métricas, de precisión, exactitud, puntaje f1 y sensibilidad.

En esta tesis se logra una mejor detección por cada clase de ataque en las 15 categorías con la red
neuronal profunda de 3 capas y la red neuronal convolucional y un accuracy estable en 99.45%

• Una futura investigación se concentrará en la tipología de ataques de denegación de


servicios distribuida, integrando un modelo de Deep learning aplicado a un sistema de
detección y prevención de ataques e intrusiones aplicación basada en la nube y que tenga
la característica autoadaptable.
• En líneas futuras implementar la red neuronal con dataset especializados en una tipología
de ataques dataset enriquecidos por ejemplo dataset CIRA-CIC-DoHBrw-2020, CIC-
DDoS2019, Bot-IoT y TON-IoT. CICMalDroid 2020, CIC-Darknet2020 para tener un
espectro más amplio en categorías de ataques.

105
Capítulo 5 Conclusiones y recomendaciones
______________________________________________________________________________
• En trabajos futuros aplicar inteligencia artificial en detección de ofuscación de código
malicioso - ataques avanzados persistentes.

Producción académica derivada

Participación en ponencias de industrias 4.0 en torno a la inteligencia artificial, congreso


CIITA.

Participación como ponente en el simposio de maestría y doctorado de la Sociedad


Colombiana de Computación capitulo inteligencia artificial, como una fuente de
apropiación del conocimiento.

Participación como estudiante de maestría investigador en el proyecto conjunto


Universidad de Caldas - Universidad Nacional de Colombia dentro del proyecto Prototipo
para detección de ataques de ddos (denegación de servicio distribuida) basado en
aprendizaje de maquina en una arquitectura orientada a servicios en la nube con código
54308.

1 Paper Convolutional Neural Network for DDoS Detection published in Springer.

1 Paper DDoS Attacks Detection with Deep Learning Model using a Cloud architecture
published in Springer

Anexos

Anexo A: Experimentación de Técnicas convencionales de Machine Learning

Anexo B: Validación Conjunta Universidad Nacional de Colombia, Universidad de Caldas

106
Referencias
______________________________________________________________________________

Referencias
Abusitta A., Bellaiche M., Dagenais M., Halabi T. (2019). A deep learning approach for proactive
multi-cloud cooperative intrusion detection system. Future Generation Computer Systems,
98: 308-318.
Aldweesh A., Derhab A., Emam A.Z. (2019). Deep learning approaches for anomaly-based
intrusion detection systems: A survey, taxonomy, and open issues. Knowledge-Based
Systems: 105124.
Almiani M., AbuGhazleh A., Al-Rahayfeh A., Atiewi S., Razaque A. (2020). Deep recurrent
neural network for IoT intrusion detection system. Simulation Modelling Practice and
Theory, 101: 102031.
Andresini G., Appice A., Malerba D. (2021). Autoencoder-based deep metric learning for network
intrusion detection. Information Sciences, 569: 706-727.
Axelsson S. (2000). The base-rate fallacy and the difficulty of intrusion detection. ACM Trans.
Inf. Syst. Secur., 3(3): 186-205.
Aziz A.S.A., Hassanien A.E., Hanaf S.E., Tolba M.F. (2013). Multi-layer hybrid machine learning
techniques for anomalies detection and classification approach. En: 13th International
Conference on Hybrid Intelligent Systems (HIS 2013). pp. 215-220.
Bessis N., Huang Y., Norrington P., Brown A., Kuonen P., Hirsbrunner B. (2011). Modelling of a
self-led critical friend topology in inter-cooperative grid communities. Simulation
Modelling Practice and Theory, 19(1): 5-16.
Bhuyan M.H., Bhattacharyya D.K., Kalita J.K. (2014). Network anomaly detection: Methods,
systems and tools. IEEE Communications Surveys & Tutorials, 16(1): 303-336.
Blowers M., Williams J. (2014). Machine Learning Applied to Cyber Operations. En: Network
science and cybersecurity. Pino R.E. (Ed.). Springer New York: New York, NY. pp. 155-
175.
Chabathula K.J., Jaidhar C.D., Kumara M.A.A. (2015). Comparative study of principal component
analysis based intrusion detection approach using machine learning algorithms. En: 2015
3rd International Conference on Signal Processing, Communication and Networking
(ICSCN). pp. 1-6.
Chiba Z., Abghour N., Moussaid K., Omri A.E., Rida M. (2018). A hybrid optimization framework
based on genetic algorithm and simulated annealing algorithm to enhance performance of
anomaly network intrusion detection system based on bp neural network. En: 2018
International Symposium on Advanced Electrical and Communication Technologies
(ISAECT). pp. 1-6.
Chowdhury N., kashem M.A. (2008). A comparative analysis of Feed-forward neural network &
Recurrent Neural network to detect intrusion. En: 2008 International Conference on
Electrical and Computer Engineering. pp. 488-492.
da Costa K.A.P., Papa J.P., Lisboa C.O., Munoz R., de Albuquerque V.H.C. (2019). Internet of
Things: A survey on machine learning-based intrusion detection approaches. Computer
Networks, 151: 147-157.
DARPA. (1998). 1998 DARPA INTRUSION DETECTION EVALUATION DATASET.Disponible
en: https://www.ll.mit.edu/r-d/datasets/1998-darpa-intrusion-detection-evaluation-dataset.
[Visitada en de

107
Referencias
______________________________________________________________________________
Darwish S.M. (2016). Machine learning approach to detect intruders in database based on hexplet
data structure. Journal of Electrical Systems and Information Technology, 3(2): 261-269.
De la Hoz E., De La Hoz E., Ortiz A., Ortega J., Prieto B. (2015). PCA filtering and probabilistic
SOM for network intrusion detection. Neurocomputing, 164: 71-81.
Deng C., Qiao H. (2016). Network security intrusion detection system based on incremental
improved convolutional neural network model. En: 2016 International Conference on
Communication and Electronics Systems (ICCES). pp. 1-5.
Ferrag M.A., Maglaras L., Moschoyiannis S., Janicke H. (2020). Deep learning for cyber security
intrusion detection: Approaches, datasets, and comparative study. Journal of Information
Security and Applications, 50: 102419.
Garfinkel T.S. (2010). Paradigms for virtualization based host security.Thesis Doctoral.
Department of Computer Science, Stanford University: Stanford, Palo Alto, California
EUA. 143 p.
Hao Y., Sheng Y., Wang J. (2019). Variant gated recurrent units with encoders to preprocess
packets for payload-aware intrusion detection. IEEE Access, 7: 49985-49998.
Hoglund A.J., Hatonen K., Sorvari A.S. (2000). Computer host-based user anomaly detection
system using the Self-Organizing Map. En: International Joint Conference on Neural
Networks (IJCNN'2000). IEEE. Piscataway, NJ, United States. pp. 411-416.
Holgado Ortiz M.d.P. (2018). Sistema de respuesta a intrusiones proactivo basado en modelos de
markov y redes neuronales.Tesis Doctoral. Departamento de Ingenieria de Sistemas
Telematicos, Universidad Politecnica de Madrid. 171 p.
Huang H., Yang L., Wang Y., Xu X., Lu Y. (2021). Digital Twin-driven online anomaly detection
for an automation system based on edge intelligence. Journal of Manufacturing Systems,
59: 138-150.
IBM. (2021a). How much does a data breach cost?Disponible en:
https://www.ibm.com/security/data-breach. [Visitada en 22 09 2021 de 2021].
IBM. (2021b). What is a cyber attack?Disponible en: https://www.ibm.com/topics/cyber-attack.
[Visitada en 22 09 2021 de 2021].
Ishitaki T., Obukata R., Oda T., Barolli L. (2017). Application of deep recurrent neural networks
for prediction of user behavior in tor networks. En: 2017 31st International Conference on
Advanced Information Networking and Applications Workshops (WAINA). pp. 238-243.
Jang-Jaccard J., Nepal S. (2014). A survey of emerging threats in cybersecurity. Journal of
Computer and System Sciences, 80(5): 973-993.
Jin K., Nara S., Jo S.Y., Sang Hyun K. (2017). Method of intrusion detection using deep neural
network. En: 2017 IEEE International Conference on Big Data and Smart Computing
(BigComp). pp. 313-316.
Kholidy H.A., Baiardi F. (2012). CIDS: A Framework for Intrusion Detection in Cloud Systems.
En: 2012 Ninth International Conference on Information Technology - New Generations.
pp. 379-385.
Kim D.E., Gofman M. (2018). Comparison of shallow and deep neural networks for network
intrusion detection. En: 2018 IEEE 8th Annual Computing and Communication Workshop
and Conference (CCWC). pp. 204-208.
Komar M., Sachenko A., Golovko V., Dorosh V. (2018). Compression of network traffic
parameters for detecting cyber attacks based on deep learning. En: 2018 IEEE 9th
International Conference on Dependable Systems, Services and Technologies (DESSERT).
pp. 43-47.

108
Referencias
______________________________________________________________________________
Kumar M., Hanumanthappa M., Suresh Kumar T.V. (2012). Encrypted traffic and ipsec challenges
for intrusion detection system. En: Proceedings of International Conference on Advances
in Computing. Springer India. New Delhi. pp. 721-727.
Kumar V.D., Radhakrishnan S. (2014). Intrusion detection in MANET using Self Organizing Map
(SOM). En: 2014 International Conference on Recent Trends in Information Technology.
pp. 1-8.
Lin L.z., Liu Z.g., Duan X.h. (2010). Network intrusion detection by a hybrid method of rough set
and RBF neural network. En: 2010 2nd International Conference on Education Technology
and Computer. pp. V3-317-V313-320.
Lin S.Z., Shi Y., Xue Z. (2018a). Character-level intrusion detection based on convolutional neural
networks. En: 2018 International Joint Conference on Neural Networks (IJCNN). pp. 1-8.
Lin W., Lin H., Wang P., Wu B., Tsai J. (2018b). Using convolutional neural networks to network
intrusion detection for cyber threats. En: 2018 IEEE International Conference on Applied
System Invention (ICASI). pp. 1107-1110.
Mahdavifar S., Ghorbani A.A. (2019). Application of deep learning to cybersecurity: A survey.
Neurocomputing.
Makawana P.R., Jhaveri R.H. (2018). A bibliometric analysis of recent research on machine
learning for cyber security. En: Intelligent Communication and Computational
Technologies. Springer Singapore. Singapore. pp. 213-226.
Mhaskar H.N., Poggio T. (2016). Deep vs. shallow networks: An approximation theory
perspective. Analysis and Applications, 14(6): 829-848.
Moe L.P. (2018). Cyber security risk analysis framework - network traffic anomaly
detection.Thesis Masters. Department of system Design and Management, Massachusetts
Institute of Technology-MIT: Massachusetts, EUA. 86 p.
Moon D., Pan S.B., Kim I. (2016). Host-based intrusion detection system for secure human-centric
computing. The Journal of Supercomputing, 72(7): 2520-2536.
Narayana Rao K., Venkata Rao K., P.V.G.D P.R. (2021). A hybrid Intrusion Detection System
based on Sparse autoencoder and Deep Neural Network. Computer Communications.
Naseer S., Saleem Y., Khalid S., Bashir M.K., Han J., Iqbal M.M., Han K. (2018). Enhanced
network anomaly detection based on deep neural networks. IEEE Access, 6: 48231-48246.
Nikolov D., Kordev I., Stefanova S. (2018). Concept for network intrusion detection system based
on recurrent neural network classifier. En: 2018 IEEE XXVII International Scientific
Conference Electronics - ET. pp. 1-4.
Nye J.S. (2014). The regime complex for managing global cyber activities. Global Commission
on Internet Governance Paper Series, 1.Harvard Library: 1-21.
Patcha A., Park J.-M. (2007). An overview of anomaly detection techniques: Existing solutions
and latest technological trends. Computer Networks, 51(12): 3448-3470.
Peng J., Choo K.-K.R., Ashman H. (2016). User profiling in intrusion detection: A review. Journal
of Network and Computer Applications, 72: 14-27.
Rhode M., Burnap P., Jones K. (2018). Early-stage malware prediction using recurrent neural
networks. Computers & Security, 77: 578-594.
Sharafaldin I., Habibi Lashkari A., Ghorbani A.A. (2018). Toward Generating a New Intrusion
Detection Dataset and Intrusion Traffic Characterization, in 4th International Conference
on Information Systems Security and Privacy (ICISSP), Brunswick U.o.N., EditorPortugal,
: Portugal, .

109
Referencias
______________________________________________________________________________
Sharafaldin; I., Lashkari; A.H., Ghorbani; A.A. (2018). Intrusion Detection Evaluation Dataset
(CIC-IDS2017).Disponible en: https://www.unb.ca/cic/datasets/ids-2017.html. [Visitada
en de
Singh N.B., Singh M.M., Sarkar A., Mandal J.K. (2021). A novel wide & deep transfer learning
stacked GRU framework for network intrusion detection. Journal of Information Security
and Applications, 61: 102899.
Subba B., Gupta P. (2021). A tfidfvectorizer and singular value decomposition based host intrusion
detection system framework for detecting anomalous system processes. Computers &
Security, 100: 102084.
Tang T.A., Mhamdi L., McLernon D., Zaidi S.A.R., Ghogho M. (2018). Deep recurrent neural
network for intrusion detection in sdn-based networks. En: 2018 4th IEEE Conference on
Network Softwarization and Workshops (NetSoft). pp. 202-206.
Tao W., Zhang W., Hu C. (2020). A network intrusion detection model based on convolutional
neural network. Yang CN., Peng SL., Jain L. (eds) Security with Intelligent Computing and
Big-data Services. SICBS 2018. Advances in Intelligent Systems and Computing, Springer,
Cham, vol 895.
Tavallaee; M., Bagheri; E., Lu; W., Ghorbani; A. (2009). NSL-KDD dataset.Disponible en:
https://www.unb.ca/cic/datasets/nsl.html. [Visitada en de
Tiwari S., Roy S.S., Charaborty S., Kumar A. (2013). A novel hybrid model for network intrusion
detection. En: 2013 International Conference on Green Computing, Communication and
Conservation of Energy (ICGCE). pp. 685-688.
University of California Irvine KDD Cup 1999 Data. (1999). KDD Cup 1999 Data.Disponible en:
http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html. [Visitada en de
Viegas E.K., Santin A.O., Oliveira L.S. (2017). Toward a reliable anomaly-based intrusion
detection in real-world environments. Computer Networks, 127: 200-216.
Vinayakumar R., Soman K.P., Poornachandran P. (2017). Applying convolutional neural network
for network intrusion detection. En: 2017 International Conference on Advances in
Computing, Communications and Informatics (ICACCI). pp. 1222-1228.
Voegtlin T., Dominey P.F. (2001). Recursive self-organizing maps. En: Advances in Self-
Organising Maps. Springer London. London. pp. 210-215.
Wang W., Guan X., Zhang X., Yang L. (2006). Profiling program behavior for anomaly intrusion
detection based on the transition and frequency property of computer audit data. Computers
& Security, 25(7): 539-550.
Wang W., Sheng Y., Wang J., Zeng X., Ye X., Huang Y., Zhu M. (2018). Hast-ids: Learning
hierarchical spatial-temporal features using deep neural networks to improve intrusion
detection. IEEE Access, 6: 1792-1806.
Wang Z., Liu Y., He D., Chan S. (2021). Intrusion detection methods based on integrated deep
learning model. Computers & Security, 103: 102177.
Warzyński A., Kołaczek G. (2018). Intrusion detection systems vulnerability on adversarial
examples. En: 2018 Innovations in Intelligent Systems and Applications (INISTA). pp. 1-4.
Whyte D. (2017). Using a systems-theoretic approach to analyze cyber attacks on cyber-physical
systems.Thesis Master. Department Science in Engineering and Management,
Massachusetts Institute of Technology-MIT: Massachusetts EUA. 118 p.
Wieringa R.J. (2014). Design Science Methodology for Information Systems and Software
Engineering. Springer, Berlin, Heidelberg.

110
Referencias
______________________________________________________________________________
Woo J., Song J., Choi Y. (2019). Performance enhancement of deep neural network using feature
selection and preprocessing for intrusion detection. En: 2019 International Conference on
Artificial Intelligence in Information and Communication (ICAIIC). pp. 415-417.
Wu K., Chen Z., Li W. (2018). A novel intrusion detection model for a massive network using
convolutional neural networks. IEEE Access, 6: 50850-50859.
Wu S.X., Banzhaf W. (2010). The use of computational intelligence in intrusion detection systems:
A review. Applied Soft Computing, 10(1): 1-35.
Xiao Y., Xing C., Zhang T., Zhao Z. (2019). An intrusion detection model based on feature
reduction and convolutional neural networks. IEEE Access, 7: 42210-42219.
XiaoHang Y. (2010). A network intrusion detection approach combined with genetic algorithm
and back propagation neural network. En: 2010 International Conference on E-Health
Networking Digital Ecosystems and Technologies (EDT). pp. 402-405.
Xu C., Shen J., Du X., Zhang F. (2018). An intrusion detection system using a deep neural network
with gated recurrent units. IEEE Access, 6: 48697-48707.
Yin C., Zhu Y., Fei J., He X. (2017). A deep learning approach for intrusion detection using
recurrent neural networks. IEEE Access, 5: 21954-21961.
Zhao G., Zhang C., Zheng L. (2017). Intrusion Detection Using Deep Belief Network and
Probabilistic Neural Network. En: 2017 IEEE International Conference on Computational
Science and Engineering (CSE) and IEEE International Conference on Embedded and
Ubiquitous Computing (EUC). pp. 639-642.
Zhou Y. (2009). Hybrid model based on artificial immune system and pca neural networks for
intrusion detection. En: 2009 Asia-Pacific Conference on Information Processing. pp. 21-
24.

111

También podría gustarte