Ilustracin 2: Proceso de entrenamiento y prueba Estudio I (Ataque - Normal)
Tabla 1: Precisin con rbol de decisin
Ilustracin 3: rbol de decisin Estudio I
1.1.1.2 Anlisis Al realizar el estudio a nivel de 2 categoras (normal o ataque) podemos evidenciar que al tomar una muestra de 20.000 registros para el estudio con el modelo de rboles de decisin y luego hacer una seleccin de las variables para el estudio que se realiz en el punto 10.2 y 10.3, se logra obtener una precisin del modelo de 96.47%; en la ilustracin 53 se muestra el rbol generado con los datos del data set y cul sera la prediccin siguiendo el camino de acuerdo a las variables. De acuerdo al rbol de decisin generado en rapidminer a partir de los datos del data set, resultados que se muestran en el apartado rbol de decisin se puede definir la logged_in como nuestro nodo principal para poder comenzar la deteccin de intrusos en una red.
En base al rbol de decisin obtenido, se pudieron identificar de manera general
que dependiendo de los valores de las 15 variables escogidas para el desarrollo de esta investigacin podemos encontrar varios caminos para poder detectar si es un ataque o no mediante los datos de una conexin. Una vez analizado el rbol de decisin generado en rapidminer, encontramos que de las 15 variables escogidas del data set, las que nos ayudaran a descubrir si estamos ante una intrusin o no son las siguientes:
logged_in.- 1 = logeo exitoso, caso contrario = 0
dst_host_srv_count.- Suma de conexiones al mismo puerto destino. count.- Nmero de conexiones del mismo host en la conexin actual protocol_type.- El tipo de protocolo por el cual se realiza la conexin. Service.- Servicio de red en el destino. serror_rate.- Porcentaje de conexiones que tienen error de sincronizacin. Flag.- Estado de la conexin (normal, error).
En base a estas variables podemos deducir que:
Si estamos logeados NO es un ataque.
Si no estamos logeados y la suma de las conexiones al mismo puerto es mayor a 210 y menor o igual a 255, se deber analizar el protocolo por el cual se realiza la conexin. o Si el protocolo es TCP o UDP NO es un ataque. o Si el protocolo es ICMP, se deber verificar el nmero de conexiones del mismo host. Si es mayor a 3 conexiones se trata de un ataque. Si es menor o igual a 3 debemos nuevamente verificar la variable Si nmero de conexiones del mismo host es mayor a 1 y menor o igual a 3, NO es un ataque. Si nmero de conexiones del mismo host es menor o igual a 1, es un ataque. Si no estamos logeados y la suma de las conexiones al mismo puerto es menor o igual a 210, se deber analizar el nmero de conexiones en el mismo host. o Si el nmero de conexiones del mismo host es mayor a 12 y menor o igual a 511, se debe realizar el anlisis de la suma de conexiones al mismo puerto. Si la suma de conexiones al mismo puerto es mayor a 161 y menor o igual a 210, se deber analizar el servicio. Si el servicio es: un usuario de dominio, http u otros; NO es un ataque.
Si el servicio es: ecr_i o privado, es un ataque.
Si la suma de conexiones al mismo puerto es menor o igual a 161, se debe verificar nuevamente el nmero de conexiones desde el mismo host. Si el nmero de conexiones desde el mismo host es mayor a 18 y menor o igual a 511, se deber verificar el tipo de protocolo. o Si tipo de protocolo es TCP, se deber verificar nuevamente la suma de conexiones al mismo puerto. Si es mayor a 81 y menor o igual a 161, NO es un ataque. Si es menor o igual a 81, se deber verificar el nmero de conexiones desde el mismo host. Si el nmero de conexiones desde el mismo host es mayor a 22 y menor o igual a 511, es un ataque. Si el nmero de conexiones desde el mismo host en menor o igual a 22, se debe verificar el estado de la conexin. o Si el estado es igual a REJ o S0, es un ataque. o Si el estado es SF, NO es un ataque. o Si el tipo de protocolo es ICMP, se deber verificar el servicio. Si el servicio es ecr_i, es un ataque. Si el servicio es urp_i, NO es un ataque. o Si el tipo de protocolo es UDP, se deber verificar el servicio. Si el servicio es privado, es un ataque. Si el servicio es un usuario de dominio, se deber verificar el nmero de conexiones del mismo host. Si es mayor a 24 y menor o igual a 511, NO es un ataque. Si es menor o igual a 24, es probable que se trate de un ataque. Si el servicio es otro, se deber verificar la suma de las conexiones al mismo puerto.
Si es mayor a 18 y menor o igual a
161, NO es un ataque. Si es menor o igual a 18 es un ataque. Si el nmero de conexiones desde el mismo host es menor o igual a 18, se deber verificar la suma de conexiones al mismo puerto. o Si es menor o igual a 69, es probable que sea un ataque. o Si es mayor a 69 y menor o igual a 161, se deber analizar el porcentaje de errores de sincronizacin. Si es 0, NO es un ataque. Si es 1, es un ataque. o Si el nmero de conexiones del mismo host es menor o igual a 12, se debe realizar el anlisis del tipo de protocolo. Si el tipo de protocolo es ICMP, se deber analizar el nmero de conexiones desde el mismo host. Si es menor o igual a 1, es un ataque. Si es mayor a 1 y menor o igual a 210, es ms probable que no sea un ataque. Si el tipo de protocolo es TCP, se debe verificar la suma de conexiones al mismo puerto. Si es menor o igual a 2, es un ataque. Si es mayor a 2 y menor o igual 210, se debe verificar el nmero de conexiones desde el mismo host. o Si es mayor a 2 y menor igual a 12, es muy probable que sea un ataque. o Si es menor o igual a 2, se debe verificar el porcentaje de errores de sincronizacin. Si es 0 o 0.5, NO es un ataque. Si es 1, es muy probable que sea un ataque. Si el tipo de protocolo es UDP, se debe verificar el servicio. Si es un usuario de dominio, ntp_u u otros, no es un ataque. Si es privado, se debe analizar el nmero de conexiones desde el mismo host. o Si es mayor a 7 y menor o igual a 12, es un ataque. o Si es menor o igual a 7, se deber analizar la suma de conexiones al mismo puerto.
Si es mayor a 7 y menor o igual a 210, es
muy probable que NO sea un ataque. Si es menor o igual a 7, es un ataque.
En base al anlisis realizado, se pueden generan reglas que permitan automatizar
la deteccin de una conexin normal o un ataque, que podra ser implementado en un IDS.