85
MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL ARTIFICIAL BASADA EN UN ALGORITMO DE APRENDIZAJE PARA LA DETECCIÓN DE INTRUSOS, EN UNA RED PAN. ERICK ANDRES AVILA JORGE EDUARDO BLANCO DIEGO CABEZAS GARCIA ANGELICA MATA BELLO DANIEL ALBERTO MOLINA CASTIBLANCO MAYERLY VANEGAS AGUDELO SANDRA MILENA RAMIREZ FUNDACIÓN UNIVERSITARIA PANAMERICANA FACULTAD DE INGENIERIA BOGOTA D.C. 2008

MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL ARTIFICIAL BASADA EN UN ALGORITMO DE APRENDIZAJE PARA LA DETECCIÓN DE INTRUSOS, EN

UNA RED PAN.

ERICK ANDRES AVILA JORGE EDUARDO BLANCO DIEGO CABEZAS GARCIA ANGELICA MATA BELLO

DANIEL ALBERTO MOLINA CASTIBLANCO MAYERLY VANEGAS AGUDELO SANDRA MILENA RAMIREZ

FUNDACIÓN UNIVERSITARIA PANAMERICANA FACULTAD DE INGENIERIA

BOGOTA D.C. 2008

Page 2: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL ARTIFICIAL BASADA EN UN ALGORITMO DE APRENDIZAJE PARA LA DETECCIÓN DE INTRUSOS, EN

UNA RED PAN.

ERICK ANDRES AVILA JORGE EDUARDO BLANCO DIEGO CABEZAS GARCIA ANGÉLICA MATA BELLO

DANIEL ALBERTO MOLINA CASTIBLANCO SANDRA MILENA RAMIREZ

MAYERLY VANEGAS AGUDELO

Trabajo de Grado para optar al titulo de Ingeniero de sistemas

Asesor ERIKA PAOLA HOLGUIN ONTIVEROS

Ingeniera de Sistemas

FUNDACIÓN UNIVERSITARIA PANAMERICANA FACULTAD DE INGENIERIA

BOGOTA D.C. 2008

Page 3: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Los autores certifican que el trabajo enviado es de su autoría, para su elaboración se

han respetado las normas de citación de fuentes y ninguna copia textual supera las

400 palabras. Por tanto, no se ha incurrido en ninguna forma de plagio, ni por similitud

ni por identidad. Los autores son responsables del contenido y de los juicios y

opiniones emitidas.

ERICK ANDRES AVILA

JORGE EDUARDO BLANCO

DIEGO CABEZAS GARCIA

ANGELICA MATA BELLO

DANIEL ALBERTO MOLINA CASTIBLANCO

MAYERLY VANEGAS AGUDELO

SANDRA MILENA RAMIREZ Se autoriza a los interesados, a consultar y reproducir parcialmente el contenido del

trabajo de investigación titulado MODELADO DE UN PROTOTIPO DE UNA RED

NEURONAL ARTIFICIAL BASADA EN UN ALGORITMO DE APRENDIZAJE PARA LA

DETECCIÓN DE INTRUSOS, EN UNA RED PAN dirigido por ERIKA PAOLA HOLGUIN

ONTIVEROS con la participación como asistentes de investigación del MODELADO DE

UN PROTOTIPO DE UNA RED NEURONAL ARTIFICIAL BASADA EN UN ALGORITMO DE

APRENDIZAJE PARA LA DETECCIÓN DE INTRUSOS, EN UNA RED PAN siempre que se

haga la respectiva cita bibliográfica que dé crédito al trabajo y a sus autores, así

especificar según la norma Icontec, la forma de referenciar y citar la investigación.

Page 4: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

DEDICATORIA

Dedicamos este trabajo a todas aquellas personas que nos brindaron su tiempo

y ayuda incondicional al realizar este proyecto.

Page 5: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

AGRADECIMIENTOS

Expresamos los más sinceros agradecimientos a todos los Docentes que

estuvieron en el transcurso de la carrera por sus conocimientos, tutoría y

orientación durante la elaboración de este proyecto, a los compañeros, por su

colaboración y apoyo.

Page 6: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

RESUMEN

El proyecto pretende modelar la interacción de la RNA con la herramienta de

seguridad informática para la detección de intrusos en una red PAN.

Para las empresas la información que se trasmite en la red es su activo más

importante, motivo por el cual busca su protección, requiere optimizar

procesos, minimizar tiempos en las tareas que se realizan, compartir recursos e

información.

Luego de estudiar varios sistemas de detección de intrusos y sus características

mas relevantes se selecciono el IDS SNORT, por ser una herramienta que

aumenta la seguridad, vigila el tráfico y examina los paquetes en la red,

analizándolos en busca de datos sospechosos y detectando las primeras fases

de cualquier ataque; además es un software libre que permite ser adaptado

fácilmente en casi cualquier red.

Dentro del desarrollo del trabajo se destacan las características más

importantes de los IDS, su clasificación, la justificación de la implementación

del IDS SNORT sobre las redes PAN y el papel que juegan la redes neuronales

artificiales con el IDS con el propósito de evitar cualquier actividad sospechosa

sobre la red.

PALABRAS CLAVES

IDS, SNORT, Redes Neuronales Artificiales, Algoritmo de aprendizaje, Ataque,

Red Pan, Perceptrón.

Page 7: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

ABSTRAC

The project aims to model the interaction of RNA with the computer security

tool for detecting intruders on a network PAN.

For business information that is transmitted on the network is its most

important asset, also looking for their protection requires streamline processes,

minimizing time when the tasks are carried out, share resources and

information.

We inquired potential intrusion detection systems that exist and select the IDS

Snort, as a tool that enhances security, traffic monitors and reviews the packets

on the network, analysing data in search of suspects and detect the early

stages of any attack; addition is a free software that allows easily be adapted

by the companies.

In the theoretical framework highlights the most important features of IDS,

classification, the justification for implementing the IDS Snort on networks PAN

and the role the artificial neural networks with IDS, in order to avoid any

suspicious activity on the network.

Keyword

IDS, snort, neural networks, learning algorithm, attack, red pan, perceptron.

Page 8: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

GLOSARIO

Las siguientes definiciones han sido tomadas de la página de internet La web

del programador1, Alegsa.com2 y Wikipedia3 por ser específicos y claros con

respecto a las palabras claves mencionadas en el proyecto.

Algoritmo: Conjunto de procedimientos mediante los que se consigue un

efecto. Suelen expresarse a través de letras, cifras y símbolos, que forman un

algoritmo determinado

Amenaza: Acción que da a entender el querer hacer un mal, daño o perjuicio a

otro.

Aprendizaje: Es una rama de la Inteligencia Artificial cuyo objetivo es

desarrollar técnicas que permitan a las computadoras aprender.

Ataques: Intento organizado y deliberado de una o más personas para causar

daño o problemas a un sistema informático o red.

Automático: aprendizaje que contiene métodos adaptativos, que permiten

aprender de la experiencia, aprender por ejemplificación y aprender por

analogía.

Autoorganización: capacidad que tiene las Redes Neuronales para clasificar

la información que adquieren de su entorno y así poder realizar las labores de

aprendizaje.

Axón: prolongación filiforme que arranca de la célula nerviosa y termina

formando una ramificación terminal. Haciendo la analogía con una neurona

artificial, sería la Función de Activación.

1LA WEB DEL PROGRAMADOR.COM. Diccionario Informático. 2008 Enlace: http://www.lawebdelprogramador.com/diccionario. 2 ALEGSA.COM. Diccionario Informático. Argentina 2008. Enlace: http://www.alegsa.com.ar/Dic 3 WIKIPEDIA.COM. La enciclopedia libre. 2007. Enlace: http://es.wikipedia.org/wiki

Page 9: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Cortafuegos: barreras implementadas sobre software y hardware en un

equipo de computo y evitar ataques desde las redes externas e internas.

Dendritas: prolongación protoplásmica ramificada de una célula nerviosa,

encargada de recibir los impulsos eléctricos nerviosos, entre neuronas.

Entradas: componente de una neurona artificial, equivalente a las dendritas de

una neurona biológica.

Entrenamiento: algoritmos implementados en redes neuronales artificiales

para que se desempeñen dando solución a problemas.

Error: dícese de una señal no deseada, la cual debe ser optimizada por un

algoritmo que permita la minimización de la señal errónea o no deseada.

Excitación: alteración o perturbación de una neurona artificial, causado por su

entorno o por la señal de otra neurona.

Función de activación: es la encargada de arrojar un valor o señal deseada

mediante una evaluación matemática por parte de una neurona artificial.

Función costo: índice de desempeño, definida en términos de señal de error,

la cual debe ser minimizada mediante un algoritmo de corrección de errores.

Gradiente: magnitudes cuyo valor es distinto en los diversos puntos de una

región del espacio, proporción en la que varía la magnitud en función de la

distancia, a lo largo de la línea en que esta variación es máxima.

Page 10: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

TABLA DE CONTENIDO

Pág.

INTRODUCCIÓN ......................................................................................... 16

1. MARCO TEORICO ................................................................................... 19

1.1 IDS – Sistema de Detección de Intrusos ............................................. 19

1.1.2 Clasificación de los IDS ..................................................................... 20

1.1.2.1 Por la fuente de información ........................................................ 21

1.1.2.1.1 NIDS (Network Intruder Detection Systems) .................................. 21

1.1.2.1.2 HIDS (Host Intruder Detection Systems) ........................................ 21

1.1.2.1.3 DIDS (Distributed Intruder Detection Systems) .............................. 22

1.1.2 Según el análisis de los eventos ......................................................... 22

1.1.3 En función a las opciones de respuesta .............................................. 22

1.1.4.1 Pasivos ........................................................................................... 23

1.1.4.2 Activos ........................................................................................... 23

1.1.5 Cuadro Comparativo de IDS ............................................................... 23

1.1.5.1 IDS Snort ....................................................................................... 24

1.2 Redes Neuronales ............................................................................. 25

1.2.1 Diseño y programación de una RNA .................................................... 27

1.2.2 Funcionamiento de las RNA ................................................................ 27

1.2.3 Estructura de las RNA ........................................................................ 28

1.2.4 Tipología de las RNA .......................................................................... 30

1.2.4.1 Perceptrón simple ........................................................................... 30

Page 11: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.4.1.1 Arquitectura del perceptrón .......................................................... 30

1.2.4.1.2 Dinámica del perceptrón ............................................................... 31

1.2.4.2 Adaline ........................................................................................... 32

1.2.4.3 Perceptrón multicapa....................................................................... 32

1.2.4.4 La Red de Hopfield .......................................................................... 33

1.2.4.5 Red Competitiva .............................................................................. 34

1.2.4.6 Red de Elman ................................................................................. 34

1.2.5 Topología de las Redes Neuronales ..................................................... 35

1.2.5.1 Redes Monocapa ............................................................................. 35

1.2.5.2 Redes Multicapa .............................................................................. 35

1.2.6 Aprendizaje de las Redes Neuronales Artificiales .................................. 36

1.2.6.1 Redes con Aprendizaje Supervisado ................................................. 36

1.2.6.2 Aprendizaje por corrección de error .................................................. 36

1.2.6.3 Aprendizaje por refuerzo ................................................................. 36

1.2.6.4 Aprendizaje estocástico ................................................................... 37

1.2.6.5 Redes con Aprendizaje No Supervisado ............................................ 37

1.2.7 Redes de computadoras ..................................................................... 37

1.2.7.1 Por alcance ..................................................................................... 37

1.2.7.2 Por método de la conexión .............................................................. 38

1.2.7.2 Por relación funcional ...................................................................... 38

1.2 Algoritmo de Aprendizaje ...................................................................... 39

1.3.1 ¿Qué es el Aprendizaje? ..................................................................... 40

1.3.2 ¿Qué es un algoritmo de aprendizaje? ................................................. 40

1.3.3 Tipos de algoritmos de aprendizaje ..................................................... 41

Page 12: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.3.3.1 Paradigma supervisado .................................................................... 42

1.3.3.2 Paradigma no supervisado ............................................................... 42

1.3.3.3 Paradigma por refuerzo ................................................................... 42

1.3.3.4 Transducción .................................................................................. 42

1.3.3.5 Aprendizaje multi-tarea ................................................................... 43

1.3.4 Tipos de algoritmos ............................................................................ 43

1.3.4.1 Algoritmo de aprendizaje por corrección de error .............................. 45

1.3.5 Regla Delta de Widrow-Hoff (1960) .................................................... 47

1.4 Marco de Antecedentes ......................................................................... 48

1.4.1 Diseño de un modelo de una RNA para la Detección de Intrusos en redes LAN conectadas a la Web por medio de IDS ................................................. 48

1.4.2 Presente y Futuro de los IDS .............................................................. 50

1.4.3 Detección de intrusos en la red utilizando redes neuronales.................. 50

1.5 Marco Conceptual ................................................................................. 51

2.DISEÑO BASE DE DATOS ......................................................................... 56

2.1 Diccionario de Datos ............................................................................. 57

2.2 Modelos del prototipo de la RNA con el algoritmo de aprendizaje y la interacción del IDS SNORT. ......................................................................... 63

2.2.1 Diagramas de caso de uso .................................................................. 63

2.2.2 Diagramas de Actividades ................................................................... 67

2.2.3 Diagrama de secuencias ..................................................................... 72

2.2.4 Diagramas de Colaboración ................................................................ 76

3. DISEÑO METODOLOGICO ....................................................................... 77

4. CONCLUSIONES ..................................................................................... 80

5. RECOMENDACIONES .............................................................................. 81

Page 13: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

6. BIBLIOGRAFIA ....................................................................................... 82

Page 14: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

LISTA DE TABLAS

Pág.

Tabla N.1 Comparativo de los IDS 23

Tabla N.2 Comparativo de Tipos de Aprendizaje de Redes Neuronales

Artificiales 45

Tabla N.3 Relación De Tablas 57

Tabla N.4 Ataquefecha 58

Tabla N.5 Clasificación 59

Tabla N.6 Fecha 60

Tabla N.7 Nivel 61

Tabla N.8 Tipo Ataque 62

Tabla N.9 Diseño Metodológico 80

Page 15: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

LISTA DE FIGURAS

Pág.

Figura N.1 Modelo de una neurona artificial 29

Figura N.2 Arquitectura de un Perceptrón 31

Figura N.3 Modelo Relacional de la Base de Datos 56

Figura N.4 Aprendizaje de la neurona 63

Figura N.5 Recolección de datos 64

Figura N.6 Interacción neurona, base de datos y Snort 65

Figura N.7 Interacción Snort, usuarios y neurona 66

Figura N.8 Funcionamiento red (IDS y RNA) 67

Figura N.9 Aprendizaje neurona 68

Figura N.10 Funcionamiento de la neurona 69

Figura N.11 Funcionamiento base de datos y Snort 70

Figura N.12 Filtro del ataque 71

Figura N.13 Funcionamiento de la red (IDS y RNA) 72

Figura N.14 Funcionamiento Snort y neurona 73

Figura N.15 Funcionamiento Snort y neurona (ataque) 74

Figura N.16 Funcionamiento Snort y neurona (hacker) 75

Figura N.17 Aprendizaje 76

Figura N.18 Snort y neurona 76

Figura N.19 El ciclo "Planificar-Hacer-Verificar-Actuar" 79

Page 16: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

INTRODUCCIÓN

Actualmente las organizaciones buscan optimizar sus procesos tecnológicos a

nivel de hardware y software, para acceder a nuevas tecnologías y lograr sus

objetivos. Los investigadores de la ciencia buscan detectar y corregir errores

dentro de las actividades y procesos que se realizan diariamente, creando

modelos que se ajustan al mundo real empleando la información en procesos

de retroalimentación y resolviendo así diferentes situaciones.

El presente proyecto está enfocado al modelado de un prototipo de RNA basada

en un algoritmo de aprendizaje para evitar intrusiones a nivel de seguridad

informática dentro de una red PAN; destacando como característica principal de

la RNA “simular las capacidades del sistema nervioso, específicamente el

cerebro”. El objetivo de las RNA es la creación de un sistema compuesto por

múltiples neuronas interconectadas, las cuales trabajan entre si para producir a

través de una entrada y una función de operación una salida deseada. Las RNA

pueden trabajar sobre un IDS (Sistema de Detección de Intrusos), ya que son

herramientas que han sido diseñadas para aumentar y fortalecer la seguridad

informática en una red por que tienen la capacidad de aprendizaje.

Para optimizar los niveles de seguridad informática en una red PAN, surge el

interrogante ¿Las RNA basadas en un algoritmo de aprendizaje para la

detección de intrusos, utilizando el IDS SNORT es la herramienta informática

mas adecuada para detectar ataques y actividades sospechosas en una red

PAN?

Page 17: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Partiendo del concepto de las Redes Neuronales Artificiales y de acuerdo al

análisis realizado a su funcionamiento con el IDS, se puede afirmar que son

sistemas que tienen la capacidad para resolver problemas complejos, como son

la inseguridad informática; por lo anterior, el objetivo principal del presente

proyecto es modelar un prototipo de red neuronal artificial basada en un

algoritmo matemático de aprendizaje sobre el IDS SNORT, que permita la

optimización de la detección de intrusos en una red PAN a nivel interno

evitando y previniendo posibles ataques haciendo vulnerable el sistema.

Con el propósito de cumplir con el objetivo general del proyecto se aplica la

metodología PHVA (Planear, Hacer, verificar, actuar) siendo esta un ciclo de

mejora continua que permite el desarrollo del proyecto a través de la

descripción de cada fase. Por tanto la primera fase que se empieza a aplicar es

el PLANEAR donde se describen los siguientes pasos: conocer los conceptos

básicos de los sistemas de redes neuronales artificiales (RNA) y de los sistemas

para detección de intrusos (IDS), conocer el funcionamiento de los IDS y

seleccionar el que se ajuste a los requerimientos del proyecto, se debe

estructurar, adaptar e implementar un algoritmo de aprendizaje que se adapte

a las RNA, modelar los diagramas de cada sistema con el propósito de conocer

su funcionamiento en la detección de intrusos.

Dentro de las ventajas de las RNA se pueden destacar, la escalabilidad, debido

a que tienen la habilidad para manejar el crecimiento continuo del trabajo sin

perder la calidad del servicio que se ofrece, se ajustan a los cambios, facilita su

adaptación e implementación en proyectos de seguridad informática, son

eficaces para procesos que presenten problemas complejos y adicionalmente

pueden procesar una gran cantidad de datos en tiempo real y trabajan en

paralelo actualizando las entradas y salidas. Tiene autonomía ya que trabaja

Page 18: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

sobre un algoritmo de aprendizaje, las RNA organizan y actualizan la

información, disminuyendo la intervención del administrador del sistema,

cuentan con una mayor seguridad, son tolerantes a fallos y son capaces de

seguir respondiendo aun si la red ha sido alterada.

Page 19: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1. MARCO TEORICO

La información es el elemento y la herramienta más importante para cualquier

empresa, por ello es necesario establecer su correcta administración y un nivel

de seguridad para los datos. La seguridad de la información involucra a

personas y procesos que se hacen cada vez más responsables por su manejo.

Por tal motivo, es importante conocer acerca de nuevas tecnologías para

minimizar el riesgo informático y evitar posibles ataques a la red.

La siguiente fase a realizar es el HACER de la metodología PHVA, que permite el

desarrollo de cada uno de los capítulos o pasos establecidos en la fase del

planear y que apoyan a la realización del objetivo principal del proyecto.

1.1 IDS – Sistema de Detección de Intrusos

El IDS (Sistema de Detección de Intrusos) es un programa usado para detectar

accesos no autorizados a un computador o a una red. Estos accesos pueden ser

ataques de piratas informáticos que usan herramientas automáticas4.

El IDS suele tener sensores virtuales como por ejemplo, el sniffer de red, con el

que el núcleo del IDS puede obtener datos externos generalmente sobre el

tráfico de red. El IDS detecta, gracias a dichos sensores, anomalías que pueden

ser indicio de la presencia de ataques o falsas alarmas. Los IDS se caracterizan

por ser:

4 TORRES MEJIA, Efraín. Sistema Inmunológico para la Detección de Intrusos a nivel de protocolo http. Bogotá, Mayo 2003

Page 20: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

• Recolectores de datos o Sensores: Programas que capturan los datos de

la fuente para su análisis en tiempo real o posterior.

• Reglas o firmas: Estas reglas son las que caracterizan las violaciones que

pueden ser cometidas y contra las que se contrastan los datos obtenidos en

el punto anterior.

• Filtro: Esta parte se encarga de contrastar las reglas o firmas contra los

datos obtenidos.

• Generador de informes o alarmas: Después de procesar los datos

contra las reglas por el filtro, si existe alguna situación que haga creer que

se ha vulnerado o intentado vulnerar la seguridad del sistema, esta parte del

detector de intrusos informa este hecho.

• Mecanismo de administración: Para facilitar la administración del IDS y

monitorear su estado, se desarrollan interfaces gráficas amigables las cuales

permiten a los administradores, realizar el mantenimiento y control del IDS.

1.1.2 Clasificación de los IDS

Los detectores de intrusos (IDS) se clasifican según en función a la fuente de

información, al análisis de los eventos y a las opciones de respuesta después de

haber detectado una intrusión5.

5 GONZALEZ, Diego. Sistemas de Detección de Intrusos. España Julio, 2003.

Page 21: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.1.2.1 Por la fuente de información

Según la fuente de información los IDS se clasifican en:

1.1.2.1.1 NIDS (Network Intruder Detection Systems)

“Utilizan el tráfico de red, paquetes TCP/IP, como fuente de información,

revisando los paquetes que circulan por la red en busca de elementos que

denoten un ataque contra alguno de los sistemas ubicados en ella. De dichos

paquetes verifican la validez de algunos parámetros y el comportamiento de los

protocolos de la familia TCP/IP empleados. Tienen la ventaja de utilizar como

fuente, el tráfico de red, porque no afecta el rendimiento de todos los

computadores; operan en toda una red protegiendo a un conjunto de

máquina”6.

1.1.2.1.2 HIDS (Host Intruder Detection Systems)

“Los HIDS protegen únicamente a la máquina en la que son instalados: utilizan

como fuente de información, datos generados por el computador en la que

operan, especialmente a nivel de sistema operativo: ficheros de auditoria del

sistema, ficheros logs o cualquier fichero que el usuario desee proteger; tienen

como ventaja su capacidad de detectar situaciones como los intentos fallidos de

acceso o modificaciones en archivos considerados críticos. La desventaja

principal de este tipo de IDS es que, al ser instalado en la propia máquina que

desea proteger, consume recursos de la misma además, está expuesto él

mismo a ser víctima de algún ataque”7.

6 Ibíd.

7 Ibíd.

Page 22: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.1.2.1.3 DIDS (Distributed Intruder Detection Systems)

Un IDS Distribuido (DIDS) consta de varios IDS en una red, comunicándose

unos con otros, o con un servidor central que facilita la supervisión de red

avanzada. En un entorno distribuido, DIDS se realiza utilizando agentes

inteligentes distribuidos a través de la red.

1.1.2 Según el análisis de los eventos

Los IDS según el análisis de los eventos son aquellos basados en firmas o

detección de mal uso, manejan un bajo porcentaje de falsas alarmas y una de

sus desventajas es que solamente detectan aquellas intrusiones que conocen

por lo cual requieren de una permanente actualización de las firmas.

Existen dos grandes técnicas de detección de intrusos, las basadas en la

detección de anomalías (anomaly detection) y las basadas en la detección de

usos indebidos del sistema (misuse detection). En la detección de anomalías se

supone que una intrusión se puede ver como una anomalía en el sistema, por

lo que si se establece un perfil del comportamiento normal de los sistemas es

posible detectar las intrusiones, una intrusión sería básicamente una desviación

del comportamiento normal establecido. Para la detección de usos indebidos se

establecen firmas para cada uno de los diferentes ataques conocidos y algunas

de sus variaciones8.

1.1.3 En función a las opciones de respuesta

Por el tipo de respuesta los IDS se pueden clasificar:

8 Conferencia. Enlace: http://www.fi.uba.ar/laboratorios/lsi/R-ITBA-26-rrnn-ags.pdf

Page 23: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.1.4.1 Pasivos

Son aquellos IDS que notifican a la autoridad competente o administrador de la

red mediante el sistema que sea, alerta, etc., pero no actúa sobre el ataque o

atacante9.

1.1.4.2 Activos

Generan algún tipo de respuesta sobre el sistema atacante o fuente de ataque

como cerrar la conexión o enviar algún tipo de respuesta predefinida en la

configuración.

1.1.5 Cuadro Comparativo de IDS

Tabla N. 1 Comparativo de los IDS. Fuente: Realizado por los investigadores.

9 Ibíd.

Page 24: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.1.5.1 IDS Snort

Para la selección del IDS que se implementará en la presente investigación se

tuvieron consideraciones como lo son objetivos de seguridad, políticas,

requerimientos y limitaciones que presente el IDS escogido, al igual que las

características que lo conformen.

El IDS a utilizar es el SNORT porque es un sistema de detección de intrusiones

basado en red (NIDS). Implementa un motor de detección de ataques y barrido

de puertos que permite registrar, alertar y responder ante cualquier anomalía

previamente definida como patrones que corresponden a ataques, barridos,

intentos de aprovechar alguna vulnerabilidad, análisis de protocolos, etc.

Conocidos; todo esto en tiempo real.

Trabaja bajo licencia GPL, gratuito, funciona bajo plataformas Windows y

UNIX/Linux. Puede funcionar como sniffer verificando el tráfico de la red,

registrando paquetes y permitiendo guardar en un archivo los logs para su

posterior análisis. Como ventajas, se puede mencionar que es un sistema

probado y viable, tiene soporte y actualización, funciona sobre diferentes

operativos y arquitecturas10.

EL diseño que utiliza el SNORT es el libpcap como fuente de tráfico, está

basado en plugins, el cual contiene tres fases preprocesador11: el tráfico es

analizado o manipulado antes de ser pasado al motor de detección, detección:

realiza pruebas sencillas en partes específicas de los paquetes y la salida:

reporta los resultados de otros plugins; que permiten una flexibilidad

prácticamente ilimitada, activando módulos que vienen con la distribución o

creando nuevos.

10 Snort. Enlace: http://www.maestrosdelweb.com/editorial/snort/ 11 Ibíd.

Page 25: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2 Redes Neuronales

“Las redes neuronales artificiales surgieron con el fin de emular características

de las redes neuronales biológicas, siendo así un modelo de razonamiento

basado en el cerebro humano. Las RNA Permiten extraer las capacidades y

habilidades del sistema neuronal para resolver problemas complejos, como por

ejemplo evitar ataques a una red (PAN, LAN, CAN, MAN, WAN) logrando de

esta manera minimizar las intrusiones no deseadas. A diferencia de las

computadoras, las RNA pueden realizan muchas operaciones simultáneamente

debido al sistema de distribución paralelo que maneja. Las ventajas de las RNA

que se pueden evidenciar son”12:

• Comportamiento altamente no-lineal, lo que les permite procesar

información procedente de otros fenómenos no-lineales. Esta propiedad

las hace convenientes en ciertas aplicaciones, donde, una avería puede

constituir un serio peligro.

• Posibilidad de procesamiento paralelo, aspecto que aprovechado en la

implementación lleva a aumentar considerablemente la velocidad de

procesamiento.

• Inclinación natural a adquirir el conocimiento a través de la experiencia,

el cual es almacenado, al igual que en el cerebro, en el peso relativo de

las conexiones ínter

Neuronales.

• Altísima plasticidad y gran adaptabilidad, son capaces de cambiar

dinámicamente con el medio.

12

Aplicación de redes neuronales artificiales. Enlace: http://nopiedra.files.wordpress.com/2007/10/aplicacion-de-redes-neuronales-artificiales-para-la-ingenieria-de-trafico-de-internet.pdf

Page 26: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

• Alto nivel de tolerancia a fallas, es decir, pueden sufrir un daño

considerable y continuar teniendo un gran comportamiento, al igual que

ocurre con los sistemas biológicos.

• La red puede generalizar el conjunto de entrenamiento y así tratar con

ejemplos no conocidos.

• Son sistemas robustos y tolerantes a fallas, diariamente mueren

neuronas sin afectar su desempeño.

• Se ajustan a nuevos ambientes de aprendizaje, no hay que

programarlas.

• Pueden manejar información difusa, con ruido o inconsistentes.

• Escalabilidad13: actualmente las RNA al igual que las redes LAN, son

redes escalables por que tienen la habilidad para manejar el crecimiento

continuo del trabajo, sin perder la calidad del servicio que se ofrece, se

ajustan a los cambios y por tanto se facilita su adaptación e

implementación en proyectos de seguridad informática.

• Mayor capacidad y velocidad: las RNA son eficaces para procesos que

presenten problemas complejos y adicionalmente pueden procesar una

gran cantidad de datos en poco tiempo, por que operan en tiempo real y

trabajan en paralelo actualizando las entradas y salidas.

• Autonomía: el algoritmo de auto aprendizaje de la RNA organiza y

actualiza la información, disminuyendo la intervención del administrador

del sistema.

• Mayor seguridad: en cuanto a la tolerancia de fallas las RNA son capaces

de seguir respondiendo aun si la red ha sido alterada

• Tiempo real: la estructura de una RNA es paralela, por lo cuál si esto es

implementado con computadoras o en dispositivos electrónicos

especiales, se pueden obtener respuestas en tiempo real.

13 Ibíd.

Page 27: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.1 Diseño y programación de una RNA

“El objetivo es modelar matemáticamente el problema para poder formular una

solución mediante un algoritmo codificado que permitan resolver dicho

problema. Por consiguiente las RNA parten de un conjunto de datos de entrada

con el fin de conseguir que la red aprenda automáticamente las propiedades

deseadas. El diseño de la red debe manejar la selección del modelo de red, las

variables a incorporar y el preprocesamiento de la información que formará el

conjunto de entrenamiento”14.

1.2.2 Funcionamiento de las RNA

Una red neuronal consiste en simular las propiedades observadas en los

sistemas neuronales biológicos que a través de modelos matemáticos recreados

mediante mecanismos artificiales tienen como objetivo conseguir que las

máquinas den respuestas similares a las que es capaz de dar el cerebro que se

caracterizan por su generalización y su robustez.

Una red neuronal se compone de unidades llamadas neuronas. Cada neurona

recibe una serie de entradas a través de interconexiones y emite una salida.

Esta salida viene dada por tres funciones15:

Una función de propagación que consiste en la sumatoria de cada entrada

multiplicada por el peso de su interconexión (valor neto). Si el peso es positivo,

la conexión se denomina excitatoria; si es negativo, se denomina inhibitoria.

Una función de activación, que modifica a la anterior. Puede no existir, siendo

en este caso la salida la misma función de propagación.

14

Red neuronal artificial. Enlace: http://eva.comenius.usach.cl/recursosenlaces/iartificial/SRPAN_henriquez_donoso_flores/IA/rna.htm 15

Ibíd.

Page 28: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Una función de transferencia, que se aplica al valor devuelto por la función de

activación. Se utiliza para acotar la salida de la neurona, algunas de las más

utilizadas son la sigmoide (para obtener valores en el intervalo [0,1]) y la

tangente hiperbólica (para obtener valores en el intervalo [-1,1]).

1.2.3 Estructura de las RNA

“De acuerdo a la simulación de las neuronas biológicas la reorganización de las

conexiones sinápticas biológicas se modela mediante un mecanismo de pesos,

que son ajustados durante la fase de aprendizaje. En una RNA entrenada, el

conjunto de los pesos determina el conocimiento de esa RNA y tiene la

propiedad de resolver el problema para el que la RNA ha sido entrenada”16.

Las RNA además de los pesos y las conexiones, cada neurona tiene asociada

una función matemática denominada función de transferencia. Dicha función

genera la señal de salida de la neurona a partir de las señales de entrada. La

entrada de la función es la suma de todas las señales de entrada por el peso

asociado a la conexión de entrada de la señal.

Una red neuronal se compone de unidades llamadas neuronas. Cada neurona

recibe una serie de entradas a través de interconexiones y emite una salida. En

esta salida se puede dar tres funciones:

� Función de propagación o de excitación: consiste en el sumatorio de cada

entrada multiplicada por el peso de su valor neto. Si el peso es positivo, la

conexión se denomina excitatoria; si es negativo, se denomina inhibitoria.

� Función de activación: modifica al anterior. Puede no existir, siendo en

este caso la salida la misma función de propagación.

16

EMILIO SORIA, Antonio Blanco. Redes Neuronales Artificiales. Abril 2004. España.

Page 29: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

� Función de transferencia: se

activación. Se utiliza para acotar la salida de la neurona y generalmente

viene dada por la interpretación que se quiera dar a dichas salidas.

Algunas de las más utilizadas son la sigmoide (para obtener valores e

intervalo) y la tangente hiperbólica (para obtener valores en el intervalo).

Fuente:

� Xi están enviando señales de entrada que representa los valores

numéricos.

� Wj representan los

la red y determina la señal de entrada registrada por la neurona artificial.

� El Punto de suma es donde se realiza la sumatoria de las entradas por los

pesos sinápticos a

� En la función de activación es donde se realiza el aprendizaje de la

neurona dependiendo los datos a medir.

� Señal de salida es donde encontramos la salida deseada.

Función de transferencia: se aplica al valor devuelto por la función de

activación. Se utiliza para acotar la salida de la neurona y generalmente

viene dada por la interpretación que se quiera dar a dichas salidas.

Algunas de las más utilizadas son la sigmoide (para obtener valores e

intervalo) y la tangente hiperbólica (para obtener valores en el intervalo).

Figura N.1 Modelo de una neurona artificialFuente: SANCHEZ CAMPEROS, Edgar. Redes Neuronales.

Xi están enviando señales de entrada que representa los valores

Wj representan los pesos que son coeficientes que se pueden adaptar en

la red y determina la señal de entrada registrada por la neurona artificial.

El Punto de suma es donde se realiza la sumatoria de las entradas por los

pesos sinápticos adicionándole a su resultado el umbral.

En la función de activación es donde se realiza el aprendizaje de la

neurona dependiendo los datos a medir.

Señal de salida es donde encontramos la salida deseada.

aplica al valor devuelto por la función de

activación. Se utiliza para acotar la salida de la neurona y generalmente

viene dada por la interpretación que se quiera dar a dichas salidas.

Algunas de las más utilizadas son la sigmoide (para obtener valores en el

intervalo) y la tangente hiperbólica (para obtener valores en el intervalo).

1 Modelo de una neurona artificial SANCHEZ CAMPEROS, Edgar. Redes Neuronales.

Xi están enviando señales de entrada que representa los valores

son coeficientes que se pueden adaptar en

la red y determina la señal de entrada registrada por la neurona artificial.

El Punto de suma es donde se realiza la sumatoria de las entradas por los

dicionándole a su resultado el umbral.

En la función de activación es donde se realiza el aprendizaje de la

Señal de salida es donde encontramos la salida deseada.

Page 30: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.4 Tipología de las RNA

Son tomadas las tipologías de las redes neuronales como modelos, a

continuación se expondrán algunos de ellos.

1.2.4.1 Perceptrón simple

El perceptrón es una red de alimentación directa, que permite que la

información fluya desde la capa de entrada hacia la capa de salida de esta

manera cada vector pertenece a una de las particiones que crea el

perceptrón17.

1.2.4.1.1 Arquitectura del perceptrón

El perceptrón simple es una red que consta de dos capas de neuronas

los cuales emite valores binarios o bipolares como entrada para los sensores y

los valores de su salida están en el mismo rango que los de entrada.

En la primera capa el sensor es el que realiza la función por la cual entran las

señales a la red. En la segunda capa se realiza la interconexión entre todas las

capas ya que la neurona de la primera capa esta interconectada con las otras18.

17

Redes Neuronales. Enlace: http://es.wikipedia.org/wiki/Redes_neuronales_artificiales 18

Perceptrón simple. Enlace: http://www.redes-neuronales.netfirms.com/tutorial-redes-neuronales/el-perceptron-simple.htm

Page 31: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N.2 Arquitectura de un Perceptrón. Fuente: http://www.redes-neuronales.netfirms.com/tutorial-redes-neuronales/el-

perceptron-simple.htm

1.2.4.1.2 Dinámica del perceptrón

Se establece el patrón de entrada en los sensores y la capa de entrada. Se

actualizan las neuronas de la capa de Salida. Las neuronas se actualizan de la

siguiente manera19:

• Sea el potencial de la neurona i,

• El peso asociado a la sinapsis que une la neurona i de la capa actual

y j de la capa de sensores.

• El estado del sensor j, entonces Y el estado de la neurona es o bien la

función escalón si las entradas de la red son binarias o bien la función

19

Ibíd.

Page 32: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

signo si las entradas son bipolares {-1 ,1} estadoneuronaJ= Signo(

Sumatorio( Peso(ij)*Estado(j))

1.2.4.2 Adaline

“La palabra Adaline proviene de la fusión de las palabras inglesas “Adaptive

Linear Element”, traduciéndola al español el elemento lineal adaptable, también

nombrado Adalina, desarrollada por Windrow y Holf en 1969”20.

En una implementación física simple, está compuesto por un conjunto de

reóstatos conectados a un circuito que puede sumar corriente encausadas por

las señales de voltaje de entrada. Usualmente el bloque central, el sumador,

también es seguido por un cuantificador que produce +1 o -1, dependiendo

sobre la polaridad de la suma.

1.2.4.3 Perceptrón multicapa

“Es una ampliación del perceptrón en la cual se incrementan una serie de capas

en la cual hacen una transformación sobre las variables de entrada. Esto acaba

con el problema del perceptrón, convirtiendo las funciones linealmente no

independientes en linealmente independientes gracias a la transformación de la

capa oculta”21.

Las capas pueden clasificarse en tres tipos:

• Capa de entrada: Constituida por neuronas que introducen los patrones

de entrada en la red. En estas neuronas no se produce procesamiento.

20

DEL BRIO, Bonifacio. Redes Neuronales y Sistemas Difusos. Ed. Alfa omega. México. 21

Ibíd.

Page 33: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

• Capas ocultas: Conformada por neuronas cuyas entradas provienen de

capas anteriores y las salidas pasan a neuronas de capas posteriores.

• Capa de salida: Neuronas cuyos valores de salida se corresponden con

las salidas de toda la red.

1.2.4.4 La Red de Hopfield

Es una red autoasociativa no lineal que fue desarrollada por Hopfield22 en 1982

basándose en los modelos de redes de McCulloch y Pitts y los símiles de los

campos magnéticos con spin de Amit, Gutfreund, & Sompolinsky.

En la arquitectura de la red de hopfield es una red monocapa, aunque también

se puede ver como una red bicapa es decir de dos capas, en donde la primera

capa es de sensores y la segunda capa será la capa donde se realiza el

procesamiento.

En la red bicapa la manera de interconexión de ambas capas es unir la primera

capa a la segunda linealmente, esto es cada neurona con su respectiva, y

después unir todas las neuronas con todas en la misma capa.

Encontramos que en la red Hopfiels puede tomar valores bipolares de -1 hasta

1 o valores binarios de 0 a 1.

La dinámica de la red de hopfield Ejecuta un patrón en la red que consiste en

enviar un patrón en la red y actualizar las neuronas repetidamente hasta que se

estabilicen los estados de las neuronas a un patrón memorizado.

22

Ibíd.

Page 34: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.4.5 Red Competitiva

Se diferencian de las otras redes neuronales en que en las anteriores redes las

neuronas colaboran en la representación de los patrones, y en este tipo de

redes cada neurona compite con las otras neuronas para representar los

patrones.

Las neuronas compiten en cual representa mejor al patrón y la ganadora se

lleva todo el aprendizaje de ese patrón. El objetivo de estas redes es que se

formen grupos de patrones, categorías, que son representados por cada

neurona23.

Cuando ejecutamos un patrón en una red competitiva solamente se activa una

neurona que es la que representa mejor el patrón.

1.2.4.6 Red de Elman

Estructura de la Red: La red de Elman típicamente posee dos capas, cada una

compuesta de una red tipo Backpropagation, con la adición de una conexión de

realimentación desde la salida de la capa oculta hacia la entrada de la misma

capa oculta, esta realimentación permite a la red de Elman aprender a

reconocer y generar patrones temporales o variantes con el tiempo24.

23

Ibíd. 24

SANCHEZ CAMPERO, Edgar. Redes Neuronales Conceptos fundamentales y aplicaciones a control automático. Ed. Prentice Hall 2006. Madrid.

Page 35: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.5 Topología de las Redes Neuronales

La arquitectura de las redes neuronales consiste en la organización y

disposición de las neuronas formando capas más o menos alejadas de la

entrada y salida de la red.

Existen dos tipos de redes de propagación hacia delante o a cíclicas en las que

todas las señales van desde la capa de entrada hacia la salida sin existir ciclos,

ni conexiones entre neuronas de la misma capa25.

1.2.5.1 Redes Monocapa

“Establece conexiones entre las neuronas que pertenecen a la única capa que

constituye la red. Se utilizan en tareas; por ejemplo, para generar

informaciones de entrada que se presentan a las redes incompletas o

distorsionadas”26.

1.2.5.2 Redes Multicapa

“Son conjuntos de neuronas agrupadas en varios niveles o capas. Para poder

distinguir la capa a la que pertenece la neurona, se debe fijar en el origen de

las señales que recibe a la entrada y el destino de la señal de salida”27. Según

el tipo de conexión, como se vio previamente, se distinguen las redes

feedforward, y las redes feedforward/feedback.

25

Ibíd. 26

Ibíd. 27

Monografías. Enlace: http://www.monografias.com/trabajos12/redneur/redneur.shtml#ESRUCT

Page 36: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.6 Aprendizaje de las Redes Neuronales Artificiales

Aprendizaje es el proceso por el cual una red neuronal modifica sus pesos en

respuesta a una información de entrada. En este proceso de aprendizaje

encontramos algunos cambios en el que se reducen a la destrucción,

modificación y creación de conexiones entre las neuronas, la creación de una

nueva conexión implica que el peso de la misma pasa a tener un valor distinto

de cero, una conexión se destruye cuando su peso pasa a ser cero28.

1.2.6.1 Redes con Aprendizaje Supervisado

“Se realiza mediante un entrenamiento controlado por un agente maestro que

determina la respuesta que debería generar la red a partir de una entrada

determinada. El maestro comprueba la salida de la red y en el caso de que ésta

no coincida con la deseada, se procederá a modificar los pesos de las

conexiones, con el fin de conseguir que la salida se aproxime a la deseada”29.

1.2.6.2 Aprendizaje por corrección de error

Ajusta los pesos en función de la diferencia entre los valores deseados y los

obtenidos en la salida de la red.

1.2.6.3 Aprendizaje por refuerzo

Consiste en no indicar durante el entrenamiento exactamente la salida que se

desea que proporcione la red ante una determinada entrada. La función del

maestro se reduce a indicar mediante una señal de refuerzo si la salida

obtenida en la red se ajusta a la deseada.

28

Ibíd. 29

Ibíd.

Page 37: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.6.4 Aprendizaje estocástico

Este tipo de aprendizaje consiste básicamente en realizar cambios aleatorios en

los valores de los pesos de las conexiones de la red y evaluar su efecto a partir

del objetivo deseado y de distribuciones de probabilidad30.

1.2.6.5 Redes con Aprendizaje No Supervisado

Estas redes no requieren influencia externa para ajustar los pesos de las

conexiones entre neuronas. La red no recibe ninguna información por parte del

entorno que le indique si la salida generada es o no correcta, así que existen

varias posibilidades en cuanto a la interpretación de la salida de estas redes.

1.2.7 Redes de computadoras

Para determinar la red sobre la cual se oriento el desarrollo del trabajo, es

necesario realizar una breve descripción de la clasificación de las redes y su

arquitectura.

En primer lugar las redes se pueden clasificar de tres maneras, por alcance, por

método de conexión y por relación funcional.31

1.2.7.1 Por alcance

• (PAN - Personal Área Network) Red de área personal

• (LAN - Local Área Network) Red de área local

• (CAN - Campus Área Network) Red de área de campus

• (MAN - Metropolitan Área Network) Red de área metropolitana

• (WAN - Wide Área Network) Red de área amplia

30

OLMEDA, Ignacio. Redes Neuronales Artificiales: fundamentos y aplicaciones. Alcalá: universidad de Alcalá. Servicio de publicaciones, 1993. 31 Redes de computadoras. Enlace: http://es.wikipedia.org/wiki/Red_de_computadoras

Page 38: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.2.7.2 Por método de la conexión32

• Medios guiados: cable coaxial, cable de par trenzado, fibra óptica

y otros tipos de cables.

• Medios no guiados: radio, infrarrojos, microondas, láser y otras

redes inalámbricas.

1.2.7.2 Por relación funcional

• Cliente-servidor

• Igual-a-Igual (p2p)

Adicionalmente se debe tener en cuenta la arquitectura de la red, la cual puede

ser definida de dos maneras, por topología de red y por los tipos de transmisión

ó direccionalidad de los datos. Por Topología de red33:

• Red de bus

• Red de estrella

• Red de anillo (o doble anillo)

• Red en malla (o totalmente conexa)

• Red en árbol

• Red Mixta (cualquier combinación de las anteriores)

Por la direccionalidad de los datos (tipos de transmisión):

• Simplex (unidireccionales), un Equipo Terminal de Datos transmite

y otro recibe. (p.e. Streaming)

32

Ibíd. 33

Ibíd.

Page 39: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

• Half-Duplex (bidireccionales), sólo un equipo transmite a la vez.

También se llama Semi-Duplex. (p.e. Una comunicación por

equipos de radio, si los equipos no son full dúplex, uno no podría

transmitir (hablar) si la otra persona está también transmitiendo

(hablando) porque su equipo estaría recibiendo (escuchando) en

ese momento).

• Full-Duplex (bidireccionales), ambos pueden transmitir y recibir a

la vez una misma información. (p.e. Video-Conferencia)

Una vez revisados estos conceptos se define que la red a trabajar será una red

PAN (Personal Área Network) ó red de área personal, escogida por ser la red

de menor alcance, lo cual permite aprovechar de mejor forma los recursos

existentes además de permitir un trabajo mas minucioso y detallado; en cuanto

a los métodos de conexión, los elementos existentes permiten realizar

conexiones por medios guiados y no guiados al mismo tiempo, La relación

funcional será de tipo cliente-servidor ya que será en un servidor en donde se

planteara la utilización del prototipo, para la arquitectura utilizaremos una

topología tipo estrella y el tipo de transmisión será full-duplex.

1.2 Algoritmo de Aprendizaje

“Un algoritmo es el conjunto de operaciones y procedimientos que deben

seguirse para resolver un problema. El lenguaje algorítmico es aquel por

medio del cual se realiza un análisis previo del problema a resolver y encontrar

un método que permita resolverlo. El conjunto de todas las operaciones a

realizar, y el orden en el que deben efectuarse, se le denomina algoritmo”34.

34

Wikipedia: La Enciclopedia Libre. Red neuronal artificial [en línea]. [ref. de 7 de Mayo de 2008]. http://es.wikipedia.org/wiki/Red_neuronal_artificial

Page 40: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Con las anteriores definiciones se establece la diferencia y relación entre lo que

es una paradigma y un algoritmo; el paradigma es el modelo que se sigue y el

algoritmo es el conjunto de operaciones y procedimientos que han de

implementarse dentro de dicho modelo.

El algoritmo que se emplea en el prototipo es el Algoritmo de Corrección de

Errores, implementado sobre la tipología de RNA Perceptrón simple.

En el marco de la investigación se trata el tema de las RNA implementada a un

IDS, basada en una de las características que poseen las RNA como son los

algoritmos de aprendizaje. A continuación, se citarán algunos temas referentes

al del aprendizaje.

1.3.1 ¿Qué es el Aprendizaje?

La definición mas sencilla es la de “Proceso mediante el cual un ente adquiere

conocimiento”, pero desde la perspectiva del problema que se está abordando,

se afirma que el aprendizaje es “Creación de programas capaces de generalizar

comportamientos a partir de información sin estructurar, suministrada en forma

de ejemplos”.35

1.3.2 ¿Qué es un algoritmo de aprendizaje?

Es un conjunto de reglas bien definidas que tenga la capacidad de dar solución

a un problema de aprendizaje en un ambiente dinámico36. Se dice que es un

ambiente dinámico por que la neurona que se emplea, tiene la capacidad de

afrontar cambios en su entorno y poseer la capacidad de aprender de los

cambios suscitados.

35 Ibid. 36 Ibid.

Page 41: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Dado lo anterior se puede concluir, el aprendizaje es un proceso inductivo y que

un algoritmo de aprendizaje, es un conjunto de parámetros definidos sujetos a

un proceso de inducción de conocimiento proveído por un entorno, en este caso

una red PAN.

1.3.3 Tipos de algoritmos de aprendizaje

Antes de empezar con los tipos, es importante tener definido el concepto de

paradigma: un modelo o patrón en cualquier disciplina científica u otro contexto

epistemológico.

El Aprendizaje Automático o Learning Machine37, comprende diferentes

mecanismos, reglas enfoques y tecnologías mediante los cuales un computador

puede aprender a desarrollar tareas que los seres humanos lo hacemos de

forma natural y rápida, como por ejemplo; reconocer imágenes, entender el

lenguaje natural, tomar decisiones, etc. Existen dos maneras como se puede

llevar el aprendizaje; supervisado y no supervisado; la diferencia básica entre

uno y otro tipo es la presencia o no de la variable dependiente38.

Diferentes aplicaciones han sido implementadas utilizando por ejemplo, redes

neuronales o algoritmos de clasificación por vecindad para detectar fraudes en

cajeros electrónicos; el crecimiento de los datos corporativos; donde se

requiere identificar patrones desconocidos y generar conocimiento que ayude a

la toma de decisiones.

37 T, Mitchell. Machine Learning, McGraw Hill.1997 38 Universidad Nacional de Colombia: Redes Neuronales Artificiales [Ref. Mayo 28 de 2008] http://www.virtual.unal.edu.co/cursos/ingenieria/2001832/lecciones/cap_4/intro_rna.htm

Page 42: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.3.3.1 Paradigma supervisado

El algoritmo produce una función que establece una correspondencia entre las

entradas y las salidas deseadas del sistema. Un ejemplo de este tipo de

algoritmo es el problema de clasificación, donde el sistema de aprendizaje trata

de etiquetar (clasificar) una serie de vectores utilizando una entre varias

categorías (clases). La base de conocimiento del sistema está formada por

ejemplos de etiquetados anteriores39.

1.3.3.2 Paradigma no supervisado

Todo el proceso de modelado se lleva a cabo sobre un conjunto de ejemplos

formado tan sólo por entradas al sistema. No se tiene información sobre las

categorías de esos ejemplos40.

1.3.3.3 Paradigma por refuerzo

El algoritmo aprende observando el mundo que le rodea. Su información de

entrada es el feedback o retroalimentación que obtiene del mundo exterior

como respuesta a sus acciones41.

1.3.3.4 Transducción

Similar al aprendizaje supervisado, pero no construye de forma explícita una

función. Trata de predecir las categorías de los futuros ejemplos basándose en

39 Ibíd. 40 Ibíd. 41 Ibíd.

Page 43: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

los ejemplos de entrada, sus respectivas categorías y los ejemplos nuevos al

sistema42.

1.3.3.5 Aprendizaje multi-tarea

Métodos de aprendizaje que usan conocimiento previamente aprendido por el

sistema de cara a enfrentarse a problemas parecidos a los ya vistos43.

En el aprendizaje hay que tener en cuenta los siguientes pasos:

� Estimulación de la Red Neuronal Artificial por un ambiente.

� La red neuronal sufre cambios en sus parámetros libres como resultado

de dicha estimulación.

� La red neuronal responde de manera diferente al ambiente debido a los

cambios que ocurrieron en su estructura interna.

1.3.4 Tipos de algoritmos

Corrección de Error44 Aprendizaje

Hebbiano45

Basados en

memoria46

Aprendizaj

e

competitiv

o47

Aprendizaje Estocástico48

Se busca minimizar la

función de error

Es una de las más

antiguas y famosas reglas

de aprendizaje

propuesta por el

Neuropsicólogo Hebb en

su libro The Organization

of Behavior [1949]:

En este tipo

de

aprendizaje,

la mayoría

de las

experiencias

pasadas son

almacenadas

Explícitament

e en una

Mientras que

en una RNA

basada en

aprendizaje

Hebbiano,

pueden

activarse

simultáneam

ente

diferentes

Basada en la Maquina de

Boltzmann. La MB constituye

una estructura recurrente

con salidas binarias.

La MB se caracteriza por una

función

de energía E, cuyo valor está

definido por los estados de

cada neurona.

42 WIKIPEDIA.COM. La enciclopedia libre. 2007. Enlace: http://es.wikipedia.org/wiki 43 WIKIPEDIA.COM. La enciclopedia libre. 2007. Enlace: http://es.wikipedia.org/wiki/algoritmo 44 Ibíd. 45 Ibíd. 46 Ibíd. 47 Ibíd. 48 Ibíd.

Page 44: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

gran

memoria.

neuronas de

salida, en

aprendizaje

competitivo

solamente

una neurona

se activa al

tiempo.

Modelo matemático

)()()( txtetw jkkj η=∆

ηηηη es una constante

positiva que determina

la tasa de aprendizaje

en cada paso.

Modelo matemático

),(()( xtyFtw jkkj =∆

F es una función de las

señales pre y post-

sinápticas.

Modelo

matemático

( ){ }N

i 1ii d,x =

Elementos

básicos

[Rumelhart

1985]:

Un conjunto

de neuronas

que

responden

diferente

para un

conjunto

dado de

patrones

Se impone

un límite en

la

“intensidad”

de cada

neurona un

mecanismo

que les

permite a las

neuronas

competir.

Modelo matemático

kkjkj

xxwE ∑∑−=2

1

kj ≠

Page 45: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Actualización de pesos

sinápticos

)()()( txtetw jkkj η=∆

Hipótesis de Hebb

)()()( txtytw jkkj η=∆

Estos

algoritmos

involucran:

•Criterio

usado para

definir el

vecino

más cercano.

•Regla de

aprendizaje a

aplicar a los

ejemplos de

entrenamient

o.

Tabla N. 2 Comparativo de Tipos de Aprendizaje de Redes Neuronales Artificiales.

Fuente: Realizado por los Investigadores

1.3.4.1 Algoritmo de aprendizaje por corrección de error

Por sugerencia del docente asesor del grupo de investigación y previo estudio

realizado con otros algoritmos de aprendizaje, se optó por elegir el Algoritmo de

Corrección de Error por el fácil manejo en la implementación e interpretación

del modelo matemático que maneja. El algoritmo está basado en la regla Delta

propuesto por Widrow – Hoff en 1960, que busca minimizar la función de error

usando un gradiente descendente49. Este algoritmo es motivo de estudio en el

presente trabajo y se ajusta a las necesidades que presenta el IDS SNORT de sobre

una red PAN.

Al comparar la señal de salida con una respuesta deseada o salida

objetivo, d(t), se produce una señal de error e(t), donde t denota tiempo

discreto.

(t)=d(t) - y(t)

49

CAICEDO BRAVO, Eduardo, Redes Neuronales Artificiales, Arquitecturas y Aprendizaje. Facultad de

Ingeniería de la Universidad del Valle. Cali. Abril 3003.

Page 46: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

La señal de error activa un mecanismo de control, cuyo propósito es aplicar una

secuencia de ajustes correctivos a los pesos sinápticos de la neurona de salida.

Los ajustes correctivos están diseñados para hacer que la señal de salida y(t) se

acerque a la respuesta deseada después de cada paso.

El objetivo del algoritmo de corrección de error es minimizar una función

costo o índice de desempeño J(t) definida en términos de la señal de error,

expresado de la siguiente manera:

Realizando la minimización el error se tiene lo siguiente:

Partiendo en dirección contraria al gradiente se obtiene:

Para soportar la selección del algoritmo de Corrección de Errores, se enuncian

en la siguiente tabla a modo informativo o símil, de los más usuales algoritmos

o modos de aprendizaje de las Redes Neuronales.

( )tetJ 2

2

1)( =

( ) ))()()(2)((2

1))((

2

1)( 222 tytytdtdtytdtJ +−=−=

))(

)(2)(

)(2(2

1)(

w

tyty

w

tytd

w

tJ

∂∂+

∂∂−=

∂∂

jkj

j

p

kkj

kj

xw

xw

w

ty =∂

∂=

∂∂ ∑

=1)(

)())()(()(

txtytdw

tJ −=∂

Page 47: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.3.5 Regla Delta de Widrow-Hoff (1960)

A continuación se enuncia los modelos matemáticos que constituye la Regla Delta50:

Paso 1: Sea ( )twkj el valor del peso sináptico ( )twkj de la neurona k excitada

por el elemento ( )tx j del vector señal ( )tx en el paso de tiempo t. El ajuste ∆

( )twkj aplicado al peso sináptico ( )twkj en el tiempo t se define por:

η: Parámetro tasa de aprendizaje

η Es una constante positiva que determina la tasa de aprendizaje en cada

paso del algoritmo.

Paso 2: El ajuste de un peso sináptico de una neurona es proporcional al

producto de la señal de error y a la señal de entrada de la sinapsis en cuestión.

• La señal de error es medible directamente, se requiere conocer la

respuesta deseada desde una fuente externa

• Regla de corrección de error local (alrededor de la neurona k).

Paso 3: Actualización del peso sináptico wkj

η(t) controla el ajuste aplicado al vector peso en la iteración t.

Regla de adaptación de incremento fijo

50

Ibíd.

)()()( txtetw jkkj η=∆

)()()( txtetw jkkj η=∆

)()()1( twtwtw kjkjkj ∆+=+

Page 48: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Si η(t)=η>0, donde η es constante independiente del número de iteración.

1.4 Marco de Antecedentes

Alcanzar la máxima seguridad en los procesos tele informáticos es uno de los

principales objetivos de cualquier empresa, para ello existen actualmente

herramientas y proyectos con dicho objetivo. El presente trabajo se apoya en

documentos, que por su contenido, referente a la temática central del presente

proyecto, sirven como guía y sustento para alcanzar los objetivos propuestos,

por lo tanto se presenta el resumen de cada uno de ellos.

El primero es el trabajo de grado presentado por un grupo de investigación del

programa de Ingeniería de Sistemas de la Fundación Universitaria

Panamericana en el año 2007 y da una breve introducción a las Redes

Neuronales Artificiales, los Sistemas Detectores de intrusos y la seguridad

informática, coincidiendo con la temática y orientación del presente proyecto.

Los dos trabajos siguientes se citan teniendo en cuenta los dos temas

principales a tratar en el desarrollo del proyecto (Los Sistemas Detectores de

Intrusos (IDS) y Las Redes Neuronales Artificiales).

1.4.1 Diseño de un modelo de una RNA para la Detección de Intrusos

en redes LAN conectadas a la Web por medio de IDS

RESUMEN

Este trabajo muestra el diseño de un modelo de red neuronal basado en el

concepto de sistemas de detección de intrusos, también la gran influencia de la

inseguridad informática sobre el mundo empresarial en la actualidad, la

Page 49: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

repercusión negativa de los fraudes y delitos informáticos y la necesidad de una

herramienta que este en plena capacidad de detectar posibles intrusiones o

ataques a la información a nivel de redes conectadas a la Web51.

Se presenta un modelo cuyo diseño se basa en teorías y conceptos propios de

redes neuronales como estructura, arquitectura, diseño y entrenamiento,

también se lleva a cabo un estudio detallado de temas concernientes a los

sistemas de detección de intrusos considerando sus principales tareas, realizar

la detección de violaciones de seguridad que no pueden ser previstos, llevar a

cabo la detección preliminar de ataques, documentar el riesgo para la

organización, dar a conocer información de los actos de los intrusos, todo con

el fin de cumplir con los objetivos propuestos en el presente trabajo, que en

resumidas cuentas consisten en desarrollar el modelo de una red neuronal

basada en el concepto de sistema de detección de intrusos, capaz de alertar a

un administrador de red de posibles ataques.

El resultado es claro, la red neuronal fue diseñada teniendo en cuenta recientes

estudios y tesis que trataban de crear una herramienta capaz de garantizar la

seguridad informática, el modelo que se presenta en este trabajo es un sistema

detector de anomalías de respuesta pasiva que evalúa algunas condiciones y

características de la información y de la red que la transporta.

51

GARCIA JIMENEZ, Fredy Alfonso. MARTINEZ QUIÑONES, Edwin Andrés. PINEDA RODRIGUEZ, Viviana. Diseño de un modelo de una RNA para IDS. Fundación Universitaria Panamericana

Page 50: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

1.4.2 Presente y Futuro de los IDS

Resumen

La detección de intrusos en una red telemática sigue siendo, hoy por hoy, un

problema de difícil resolución. Dada la naturaleza del problema, no existe un

método probado que permita la detección infalible. No obstante, el presente

documento intenta exponer un nuevo enfoque sobre la detección de intrusos,

analizando cual es la problemática de estos sistemas (NIDS 1) y señalando las

carencias actuales de dichas infraestructuras. Se propone un nuevo modelo

neuronal que permita realizar una detección heurística que disminuya la tasa

media de falsos positivos de los sistemas actuales. Por ultimo, se exponen

razonadamente las fortalezas y debilidades del nuevo modelo así como una

valoración de los resultados esperados de la aplicación del mismo52.

1.4.3 Detección de intrusos en la red utilizando redes neuronales

Resumen.

La seguridad de redes ha comenzado a ser un problema importante en el

mundo moderno. El número de computadoras, la conectividad entre ellas y la

importancia de su uso para la vida cotidiana del hombre es cada vez mayor y

por tanto se hace cada vez más complejo mantener los estándares de

seguridad esperados. Para poner freno a esta situación han surgido un grupo

significativo de herramientas, entre las que se destacan por sus grandes

potencialidades los Sistemas de Detección de Intrusos (IDS). Estos son los

encargados de monitorizar los eventos que ocurren en un sistema o red, para

52

BARRERA GARCIA, Alejandro. Presente y futuro de los IDS. Universidad Politécnica de Madrid. Enlace: http://neurosecurity.com/whitepapers/futureIDS.pdf

Page 51: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

analizarlos en busca de problemas de seguridad. La inteligencia artificial ha sido

ampliamente utilizada en este tipo de herramientas, destacándose algunas

técnicas específicas como las redes neuronales (RN). El uso de RN con estos

fines ha producido algunos logros aunque aún no se han obtenido los

resultados esperados53.

La selección de la arquitectura de RN adecuada para la clasificación de

comportamientos en la red, es el problema principal a solucionar, primeramente

con una correcta selección de datos de entradas al clasificador neuronal y luego

con una definición de las salidas a tener en cuenta.

El presente trabajo propone una manera de resolver algunos de los problemas

existentes para la clasificación de ataques a partir de paquetes TCP/IP con

redes neuronales, utilizando para ello el Análisis de Componentes Principales

(PCA) como técnica de reducción de rasgos para la selección de las entradas.

1.5 Marco Conceptual

El tema de la seguridad informática es de importante relevancia dentro de las

organizaciones, aunando esfuerzos y recursos para evitar ataques a sus

sistemas de información y sus redes de computadores. A continuación se

enuncian conceptos básicos pero fundamentales, en la aplicación de las Redes

Neuronales Artificiales sobre los Sistemas de Detección de Intrusos54.

• INTRUSIÓN

Es un conglomerado de acciones dirigidas a poner en riesgo la integridad,

confidencialidad y disponibilidad de recursos de una red y el correcto acceso a

53

Ing. FONSECA, Iren Lorenzo. Dr. FERNANDEZ, Rogelio Lau. Detección de Intrusos en la red utilizando redes neuronales. Enlace:http://www.cujae.edu.cu/eventos/cittel/trabajos/Trabajos/Comision%201/CITTEL-12.pdf 54

WIKIPEDIA.COM. La enciclopedia libre. 2007. Enlace: http://es.wikipedia.org/wiki

Page 52: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

la información en un sistema; actos perpetrados generalmente por terceros,

realizados desde la Internet.

• COMPARACIÓN DE PATRONES

El IDS trabaja bajo patrones de ataques conocidos, y buscan semejanza entre

estos y los paquetes que se analizan en el ingreso a la red. Para un óptimo

funcionamiento de este método depende en buena parte de una adecuada

actualización de su base de patrones de ataques55.

• COMPORTAMIENTO DE LA RED

En este método se analizan mediante prácticas estadísticas y técnicas de

Inteligencia Artificial, el flujo de una red, considerando una intrusión como algo

anormal de acuerdo a los parámetros estandarizados o considerados de

comportamiento normal.

• ATAQUES DE ESCANEO

Estos se utilizan para la recopilación de información sobre los puertos que se

escuchan en la red y después acceder a los recursos a través de ellos.

• ATAQUES DE ESCANEO TCP

Estos se basan en usar los flags que son bits de control para mantener la

conexión y el protocolo se incorpora para regular la comunicación.

55

Ibíd.

Page 53: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

• ATAQUES POR FRAGMENTACION

Se fragmentan los paquetes de ataques SYN Y FIN, con el fin de cuando se

realicen los filtros de la red no se puedan detectar56.

• ATAQUE SNNIFING

Son ataques pasivos que recopilan y almacenan la información que circula en

la red.

• ATAQUES SNOOPING

Accede y desclara los datos para después manipularlos.

• WEB SOOPFING

Suplanta un sitio web por completo y recopila toda la información de los

usuarios.

• ATAQUES DE INGENIERIA SOCIAL

En este el atacante tiene la habilidad para que el usuario revele el login y

password.

• ATAQUES DE PUERTAS TRASERAS BACKDOORS

En este se accede con total libertad a la red y para el usuario es totalmente

transparente.

56

Ibíd.

Page 54: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

• LOS HACKERS

“El hacker es aquél que entra ilegalmente a los sistemas de las organizaciones,

ingresa la red puede revisar la información y provocar caos en los sistemas

remotos si así lo quisiera, aunque no se consideran un peligro para la red por

no contar con intenciones delictivas, pueden vulnerar su seguridad. Los

hackers tienen elevados conocimientos de informática en cuanto a hardware y

software, manejan los sistemas operativos, lenguajes de programación,

conocen de errores y fallas en los sistemas haciéndolos de esta manera fuertes

para vulnerar cualquier sistema. Su objetivo es manipular los servicios de la

red y dejar constancia de su ingreso”57.

Los ataques que puede llegar a realizar un hackers al ingresar ilegalmente a la

red, puede ser adquirir passwords de sistemas, y adquisición de software,

También es común que entren a nuestros equipos de computo para ver qué

hacemos, o qué tenemos, pueden utilizar truco en las compras en líneas o

algún sistema que requiera autenticación, esto con el fin de recibir información

del usuario.

• LOS CRAKERS

El cracker es el que viola la seguridad de un sistema informático de forma

similar a como lo haría un hacker cuando logra ingresar a la red, la diferencia

entre el hacker y el cracker es que este ultimo realiza la intrusión con fines de

beneficio personal o para hacer daño ya sea a la información o a las personas

que suministran datos sin saber que están siendo vulnerados, mientras que el

hacker no lo hace con intenciones delictivas al contrario lo hace como un reto

informático que se puede vulnerar.

57

Ibíd.

Page 55: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Los crakers diseñan programas llamados cracks informáticos que sirven para

modificar el comportamiento y la funcionalidad de diferente software o

hardware, pueden modificar o alterar códigos fuentes de un programa58.

58

Ibíd.

Page 56: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

2. DISEÑO BASE DE DATOS

Continuando con la aplicación de la metodología PHVA, se refleja la fase del

VERIFICAR, donde se implementan los procesos y se realiza el desarrollo de

todas aquellas actividades involucradas en el proyecto, como lo son el diseño

de la base de datos relacionando las actividades que forman parte de la

propuesta y el desarrollo de los diagramas para el modelo del prototipo de la

RNA con el algoritmo de aprendizaje y la interacción del IDS SNORT.

Figura N. 3 Modelo Relacional de la Base de Datos Fuente: Realizado por los investigadores

Page 57: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

2.1 Diccionario de Datos

Nombre de la Base de Datos: neurona.

Descripción: La Base de Datos almacenará información respecto a las tablas

las cuales serán descritas a continuación.

La Base de Datos está compuesta por 5 tablas de la siguiente manera:

Nombre de la

Tabla

Número de

Campos

Llave

Primaria

Descripción

Ataquefecha 4 En esta tabla se sobre la fecha y el

tipo de ataque realizado a la red

Clasificación

3 Id_clasificacion En esta tabla se almacenará

diferentes tipos de clasificación

generar para los diferentes

ataques

Fecha 3 Idfecha En esta tabla se almacenara la

fecha en que se realizaron los

ataque a la red

Nivel 2 Id nivel En esta tabla se guardara los 3

niveles que puede tener un tipo de

a ataque (alto, medio, bajo)

Tipo_ataque 4 Id_tipo En esta tabla se guardara toda la

información sobre los diferentes

tipos de ataque y sus respectivos

nombres

Tabla N. 3 Relación De Tablas Fuente: Realizado por los Investigadores

Page 58: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Tabla: ATAQUEFECHA

Llave Primaria: Llave Foránea: id_nivel,

id_clasificacion, id_tipo, idfecha Auto incremento:

CAMPOS QUE LA COMPONEN:

Nombre Descripción Tipo Longitud. Obligatorio

Id_nivel identificador del

código del nivel es

llave foránea,

pertenece a la tabla

nivel

Integer Si

Id_clasifica

cion

identificador del

código del

clasificación es llave

foránea, pertenece a

la tabla clasificación

Integer Si

Id_tipo identificador de el

código del tipo es

llave foránea,

pertenece a la tabla

tipo

Integer

Si

Idfecha identificador de el

código del tipo es

llave foránea,

pertenece a la tabla

tipo

Integer Si

Tabla N. 4 Ataquefecha

Fuente: Realizado por los investigadores

Page 59: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Tabla: CLASIFICACION

Llave Primaria: Id_clasificacion Llave Foránea: id_nivel

Auto incremento: si CAMPOS QUE LA COMPONEN:

Nombre Descripción Tipo Longitud. Obligatorio

Id_nivel identificador del

código del nivel es

llave foránea,

pertenece a la

tabla nivel

Integer Si

Id_clasificacio

n

Identificador del

código del

clasificación es

llave primaria. De

esta tabla.

Integer Si

Nombre En este campo se

guardara el

nombre que le

asignamos a cada

tipo de

clasificación.

text Si

Tabla N.5 Clasificación

Fuente: Realizado por los investigadores

Page 60: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Tabla: FECHA

Llave Primaria: Idfecha Llave Foránea:

Auto incremento: si CAMPOS QUE LA COMPONEN:

Nombre Descripción Tipo Longitud. Obligatorio

Idfecha identificador del

código del fecha es

llave primaria de

esta tabla

Integer Si

Fecha En este campo se

guardara la fecha

en que se

producen los

diferentes ataques

date Si

Hora En este campo se

guardara las

diferentes horas en

la cual se pueden

producir los

diferentes ataques

Datetim

e

Si

Tabla N. 6 Fecha Fuente: Realizado por los Investigadores

Page 61: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Tabla: NIVEL

Llave Primaria: Id_nivel Llave Foránea:

Auto incremento: si CAMPOS QUE LA COMPONEN:

Nombre Descripción Tipo Longitud. Obligatorio

Id_nivel identificador del

código del nivel es

llave primaria, en

esta tabla

Integer Si

Nivel En este campo se

guardara el

nombre del nivel

que la

asignaremos a

cada ataque (Alto,

Medio, Bajo)

text Si

Tabla N. 7 Nivel

Fuente: Realizado por los investigadores

Page 62: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Tabla: TIPO_ATAQUE

Llave Primaria: Id_tipo Llave Foránea: id_tipo,

id_clasificacion Auto incremento: si

CAMPOS QUE LA COMPONEN:

Nombre Descripción Tipo Longitud. Obligatorio

Id_tipo Identificador del

código del tipo

es llave

primaria, para

esta tabla.

Integer Si

Id_clasificacion Identificador del

código del

clasificación es

llave foránea,

pertenece a la

tabla

clasificación

Integer Si

Id_nivel identificador del

código del nivel

es llave foránea,

pertenece a la

tabla nivel

Integer Si

Nombra_ataque Nombre de los

diferentes

ataques que se

realizan en la

red.

Text si

Tabla N. 8 Tipo Ataque

Fuente: Realizado por los investigadores

Page 63: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

2.2 Modelos del prototipo de la RNA con el algoritmo de

aprendizaje y la interacción del IDS SNORT.

A continuación se presenta el modelado propuesto para el prototipo, que

servirá de base para el diseño y la implementación de la red neuronal en

una red PAN.

2.2.1 Diagramas de caso de uso

Figura N.4 Aprendizaje de la Neurona

Fuente: Realizado por los investigadores

System

IDS1RNA1

Enviar tráfico1

Revisión de tráfico

Revisar Base Datos

Realizar aprendizaje

Alimentar B.D.

Enviar restricción

Page 64: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 5 Recolección de datos Fuente: Realizado por los investigadores

System

IDS2

RNA2

Enviar tráfico2

Clasificación

Tipo de ataque

Fecha

Nivel

Revisar Base de datos

Alimentar Base de datos

Enviar restricciones

"incluir"

"incluir"

"incluir"

"incluir"

Page 65: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 6 Interacción neurona, Base de datos y Snort Fuente: Realizado por los investigadores

System

snort

neurona

base datos

verifica informacion

deside si es ataque

guarda informacion<<include>>

Page 66: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 7 Interacción Snort, usuarios y Neurona

Fuente: Realizado por los investigadores

System

UsuarioSnort

Hacker // Cracker

Neurona

Accede al Sistema

Crea Registro

Filtra Informacion

Acceso a Usuario

Bloque de Usuario

Page 67: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

2.2.2 Diagramas de Actividades

Figura N. 8 Funcionamiento Red (IDS y RNA) Fuente: Realizado por los investigadores

[IDS]

Inciar envío de tráfico

[RNA]

Revisión de tráfico IDS

Enviar tráfico anómalo

Alimentar la B.D. No se conoce ataque

Enviar respuesta a RNA

Se conoce ataque

Enviar restricción a IDS

Page 68: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 9 Aprendizaje Neurona Fuente: Realizado por los investigadores

[IDS]

Iniciar envío de tráfico

[RNA]

Revisar tráfico de IDS

Evaluar tráfico anómalo de IDS

Ejecutar algoritmo de aprendizaje

Alimentar Base de Datos

No se conoce ataque

Enviar confirmación a RNA

Enviar restricción a IDS

Se conoce ataque

Page 69: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 10 Funcionamiento de la neurona Fuente: Realizado por los investigadores

señal=n

ataque

guarda informacionen la base de datos

no pasainformacion

detieneataque

no ataque

pasa informacion

Page 70: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 11 Funcionamiento base de datos y Snort Fuente: Realizado por los investigadores

informacion snort

toda informacionataque

fecha horaataque

Page 71: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 12 Filtro del Ataque Fuente: Realizado por los investigadores

Snort NeuronaUsuario

Acceso al Sistema Recolecta Información

Filtra Información

Autoriza Usuario

Bloquea Usuario

Brinda Acceso

Bloquea Acesso

Accede a la Información

Page 72: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

2.2.3 Diagrama de secuencias

Figura N. 13 Funcionamiento de la Red (IDS y RNA) Fuente: Realizado por los investigadores

IDS1 RNA1 Base de Datos1

1 : Envío de tráfico a()

2 : Revisión de trafico con()3 : Envío revisión anomalías en()

4 : Revisión anomalías()

5 : Alimentación de B.D.()

6 : Envío respuesta()

7 : Aprendizaje con respuesta()

8 : Envío de respuesta con restricción a()

Page 73: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 14 Funcionamiento Snort y Neurona Fuente: Realizado por los investigadores

IDS1 RNA1 Base de Datos1

1 : Envío de tráfico a()

2 : Revisión de trafico con()3 : Envío revisión anomalías en()

4 : Revisión anomalías()

5 : Alimentación de B.D.()

6 : Envío respuesta()

7 : Aprendizaje con respuesta()

8 : Envío de respuesta con restricción a()

Page 74: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 15 Funcionamiento Snort y Neurona Ataque (usuarios) Fuente: Realizado por los investigadores

Snort NeuronaUsuarios

1 : Acceso al Sistema()

2 : Envio Informacion()

3 : Filtro Posible Ataque()

4 : No es Atauqe()

5 : Acceso a la Informacion()

6 : Obtiene Infromación()

7 : Salir del Sistema()

Page 75: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Figura N. 16 Funcionamiento Snort y Neurona Ataque (hacker) Fuente: Realizado por los investigadores

Hacker // Cracker Snort Neurona

1 : Acceso al Sistema()

2 : Envia Información()

3 : Filtro de Posible Ataque()

4 : Si es Ataque()

5 : Bloqueo A Usuario()

6 : Sale del Sistema()

Page 76: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

2.2.4 Diagramas de Colaboración

Figura N. 17 Aprendizaje Fuente: Realizado por los investigadores

Figura N. 18 Snort y Neurona Fuente: Realizado por los investigadores

Para finalizar con la metodología propuesta para este proyecto y que se ve

reflejado en su última fase ACTUAR, será la programación de la neurona

con base al modelado expuesto y a la posterior implementación que

servirá como herramienta de seguridad en una instancia para redes PAN y

en un futuro redes LAN.

IDS RNA

Algoritmo de aprendizaje

B.D.

IDS RNA

Base de datos

Page 77: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

3. DISEÑO METODOLOGICO

La metodología utilizada para el desarrollo del presente trabajo es la PHVA

(Planear, Hacer, Verificar y Actuar), porque es una metodología que

permite su desarrollo a través de fases que impulsan a un ciclo de mejora

continua en los procesos.

La metodología PHVA se aplica en cuatro (4) fases:

FASE 1 PLANEAR ACTIVIDADES A

REALIZAR

RESULTADOS

� Definición del

proyecto

� Determinar el

tema del proyecto

� Delimitación del

tema

� Definir la

importancia del

desarrollo del

proyecto

� Búsqueda de

Información

relacionada con el

tema

� Formulación del

problema

� Justificación del

proyecto

Planteamiento de objetivo

general y específicos

� Indagación y

profundización de

temas relacionado

con el proyecto

(Marco Teórico

antecedentes y

referencial)

� Alcance del

objetivo principal

del proyecto

� Aceptación del

estudio

� Factibilidad del

tema propuesto

FASE 2 HACER ACTIVIDADES A

REALIZAR

RESULTADOS

Recopilación de la

� Ejecución de las

Informe final del

Page 78: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

información relacionada

con el tema del proyecto

Análisis de la información

Representar los datos a

través de diagramas

Implementación de los

procesos

tareas programadas

� Elaboración del

informe

� Desarrollo del

proyecto

� Elaboración de

diagramas de

modelado de los

procesos involucrados

� Elaboración de la

base de datos

� Elaboración del

modelo relacional de

la base de datos

proyecto

FASE 3 VERIFICAR ACTIVIDADES A

REALIZAR

RESULTADOS

Verificación del desarrollo

del proyecto

Medición de procesos

Realizar pruebas de

escritorio

Determinar cumplimiento

de objetivos y metas

alcanzadas

Solución al problema

Resultados

aprobados

Solución a la

formulación del

problema

Informe final

aprobado

FASE 4 ACTUAR ACTIVIDADES A

REALIZAR

RESULTADOS

Ejecución e

implementación del

proyecto

Recomendación de

nuevos proyectos

Base para el diseño y la

implementación de la

RNA.

Ejecutar acciones

para mejoras

continuas al

proyecto

Tabla N.9 Diseño Metodológico Fuente: Realizado por los Investigadores

Page 79: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

La siguiente gráfica representa las cuatro (4) fases de la metodología

PHVA demostrando que es un ciclo de mejora continua para cualquier

proceso que se desee desarrollar.

Figura N. 19 El ciclo "Planificar-Hacer-Verificar-Actuar"

Fuente: Foro enlace: http/www.estrucplan.com

Page 80: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

4. CONCLUSIONES

Al presentar el anterior modelo se deja abierta la senda para posteriores

desarrollos e implementaciones de las redes neuronales en la seguridad

informática.

Las redes neuronales pueden ser tomadas como herramientas de

optimización y mejoramiento de aplicaciones existentes en cuanto a la

seguridad informática se refiere.

Debido a los constantes cambios y mejoras en las tácticas de los ataques

informáticos es necesario comenzar a implementar sistemas que se

adapten mejor y con mayor velocidad a estos factores de manera que sea

mucho mas fácil detectarlos y contrarrestarlos.

La implementación de redes neuronales artificiales en la seguridad de las

redes informáticas es hoy por hoy la mejor alternativa por su escalabilidad

y adaptabilidad.

Al implementar cada uno de los modelos propuestos en el presente

trabajo, en una red PAN, podrán actuar como una herramienta que

previene y evita posibles ataques o amenazas al trafico e información que

se envía a través de la red interna.

Page 81: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

5. RECOMENDACIONES

El presente proyecto es la base para el diseño e implementación de la RNA

en interacción con un IDS que sea compatible con plataformas como

UNIX/LINUX o WINDOWS, para que sea utilizado como una herramienta

de seguridad informática y se refleje el óptimo funcionamiento del IDS con

la neurona en su aprendizaje.

Con el modelado del prototipo propuesto se busca la continuidad del

proyecto para ser programado, definiendo los pesos de entrada de la

neurona, para que esta tenga el aprendizaje y facilite las tareas del

administrador de red donde sea implementado dicho proyecto.

Una vez realizadas las pruebas correspondientes en la red PAN es

aconsejable continuar el proceso con redes de mayor cobertura

geográfica.

Page 82: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

6. BIBLIOGRAFIA

BARRERA GARCIA, Alejandro. Presente y futuro de los IDS. Universidad

Politécnica de Madrid.

Enlace: http://neurosecurity.com/whitepapers/futureIDS.pdf

CAICEDO BRAVO, Eduardo, Redes Neuronales Artificiales, Arquitecturas y

Aprendizaje. Facultad de Ingeniería de la Universidad del Valle. Cali. Abril

3003.

DEL BRIO, Bonifacio. Redes Neuronales y Sistemas Difusos. Ed. Alfa

omega. México.

EMILIO SORIA, Antonio Blanco. Redes Neuronales Artificiales. Abril 2004.

España.

GARCIA JIMENEZ, Fredy Alfonso. MARTINEZ QUIÑONES, Edwin Andrés.

PINEDA RODRIGUEZ, Viviana. Diseño de un modelo de una RNA para IDS.

Fundación Universitaria Panamericana

Ing. FONSECA, Iren Lorenzo. Dr. FERNANDEZ, Rogelio Lau. Detección de

Intrusos en la red utilizando redes neuronales.

SANCHEZ CAMPERO, Edgar. Redes Neuronales Conceptos fundamentales

y aplicaciones a control automático. Ed. Prentice Hall 2006. Madrid.

Page 83: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

OLMEDA, Ignacio. Redes Neuronales Artificiales: fundamentos y

aplicaciones. Alcalá: universidad de Alcalá. Servicio de publicaciones,

1993.

T, Mitchell. Machine Learning, McGraw Hill.1997

TORRES MEJIA, Efraín. Sistema Inmunológico para la Detección de

Intrusos a nivel de protocolo http. Bogotá, Mayo 2003

ALEGSA.COM. Diccionario Informático. Argentina 2008.

Enlace: http://www.alegsa.com.ar/Dic

Aplicación de redes neuronales artificiales.

Enlace:http://nopiedra.files.wordpress.com/2007/10/aplicacion-de-redes-

neuronales-artificiales-para-la-ingenieria-de-trafico-de-internet.pdf

LA WEB DEL PROGRAMADOR.COM. Diccionario Informático. 2008

Enlace: http://www.lawebdelprogramador.com/diccionario.

Conferencia.

Enlace: http://www.fi.uba.ar/laboratorios/lsi/R-ITBA-26-rrnn-ags.pdf

Foro

Enlace: http/www.estrucplan.com

Monografías.

Enlace:

http://www.monografias.com/trabajos12/redneur/redneur.shtml#ESRUCT

Perceptrón simple.

Enlace:http://www.redes-neuronales.netfirms.com/tutorial-redes-

neuronales/el-perceptron-simple.htm

Page 84: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

Red neuronal artificial.

Enlace:http://eva.comenius.usach.cl/recursosenlaces/iartificial/SRPAN_hen

riquez_donoso_flores/IA/rna.htm

Redes Neuronales.

Enlace: http://es.wikipedia.org/wiki/Redes_neuronales_artificiales

Redes de computadoras.

Enlace: http://es.wikipedia.org/wiki/Red_de_computadoras

Snort.

Enlace: http://www.maestrosdelweb.com/editorial/snort/

Trabajos.

Enlace:http://www.cujae.edu.cu/eventos/cittel/trabajos/Trabajos/Comisio

n%201/CITTEL-12.pdf

Universidad Nacional de Colombia: Redes Neuronales Artificiales [Ref.

Mayo 28 de 2008]

Enlace:http://www.virtual.unal.edu.co/cursos/ingenieria/2001832/leccione

s/cap_4/intro_rna.htm

WIKIPEDIA.COM. La enciclopedia libre. 2007.

Enlace: http://es.wikipedia.org/wiki

Wikipedia: La Enciclopedia Libre. Red neuronal artificial [en línea]. [ref. de

7 de Mayo de 2008].

Enlace: http://es.wikipedia.org/wiki/Red_neuronal_artificial

Page 85: MODELADO DE UN PROTOTIPO DE UNA RED NEURONAL …

WIKIPEDIA.COM. La enciclopedia libre. 2007.

Enlace: http://es.wikipedia.org/wiki/algoritmo