Licenciada
Tesis de Licenciatura
Aplicaci´n de las Redes Neuronales al Reconocimiento de o Sistemas Operativos
Carlos Sarraute
Director: Mat´ Gra˜a ıas n
6/12/2007
Resumen En este trabajo vamos a presentar algunas familias de redes neuronales, las redes de perceptrones multi-capas, y algunosde los algoritmos que se usan para entrenarlas (esperamos que con suficientes detalles y precisi´n como para o satisfacer un p´blico matem´tico). Luego veremos como usarlas para resolver u a un problema que surge del campo de la seguridad inform´tica: la detecci´n a a o distancia del Sistema Operativo (una de las etapas de recolecci´n de informaci´n, o o que forman parte de la metodolog´ depentesting). Este es el aporte de este ıa trabajo: es una aplicaci´n de t´cnicas cl´sicas de Inteligencia Artificial a un o e a problema de clasificaci´n que brind´ mejores resultados que las t´cnicas cl´sicas o o e a usadas para resolverlo. Agradecimientos A Javier Burroni, Matias Gra˜a, Pablo Groisman y Enrique Segura. n
´ Indice general
1. Introducci´n o 1.1. Inteligencia Artificial y analog´biol´gicas . . . . . . . . . . . . ıas o 1.2. Detecci´n remota de Sistemas Operativos . . . . . . . . . . . . . o 2. Redes Neuronales 2.1. Conceptos b´sicos . . . . . . . . . . . . . . . . . . . . . . . . . . a 2.2. Redes con una capa . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1. Funciones discriminantes lineales . . . . . . . . . . . . . . 2.2.2. Funci´n de activaci´n . . . . . . . . . . . .. . . . . . . . o o 2.2.3. Separabilidad lineal . . . . . . . . . . . . . . . . . . . . . 2.2.4. El Perceptron de Rosenblatt . . . . . . . . . . . . . . . . . 2.2.5. El criterio del Perceptron . . . . . . . . . . . . . . . . . . 2.3. Redes con varias capas . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1. Notaci´n para las neuronas . . . . . . . . . . . . . . . . . o 2.3.2. Expresividad:teorema de Kolmogorov . . . . . . . . . . . 3. Entrenamiento y Preprocesamiento 3.1. Aprendizaje de observaciones . . . . . . . . . . . . . . . . . . . . 3.2. Algoritmo de retro-propagaci´n . . . . . . . . . . . . . . . . . . . o 3.2.1. Evaluaci´n de las derivadas de la funci´n de error o o 3.3. . . . . 4 4 6 7 7 9 9 11 12 13 14 15 16 17 20 20 21 22 26 27 28 29
Funciones de error . . . . . . . . .. . . . . . . . . . . . . . . . . 3.3.1. La suma de cuadrados como funci´n de error . . . . . . . o 3.3.2. Estimando las probabilidades a posteriori . . . . . . . . .
3.4.
Optimizaci´n de los par´metros . . . . . . . . . . . . . . . . . . o a
1
3.4.1. Superficies de error . . . . . . . . . . . . . . . . . . . . . . 3.4.2. Simetr´ en el espacio de pesos . . . . . . . . . . . . . . .ıas 3.4.3. El descenso del gradiente . . . . . . . . . . . . . . . . . . 3.4.4. Momentum . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.5. Taza de aprendizaje adaptativa . . . . . . . . . . . . . . . 3.4.6. C´mo empezar y c´mo terminar . . . . . . . . . . . . . . o o 3.5. An´lisis en Componentes Principales . . . . . . . . . . . . . . . a 3.5.1. 3.5.2. Interludio: derivadas parciales dematrices . . . . . . . . La transformaci´n de Karhunen - Lo´ve o e . . . . . . . . .
30 30 31 32 33 33 34 36 38 41 41 42 44 44 45 46 46 46 47 47 48 49 50 51 52 52 54 55 57 60 61
4. Reconocimiento de Sistemas Operativos 4.1. El protocolo IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1. El encabezado IP (IP header) . . . . . . . . . . . . . . . . 4.2. El protocolo TCP . . . . . .. . . . . . . . . . . . . . . . . . . . . 4.2.1. Encabezado TCP (TCP header) . . . . . . . . . . . . . . 4.2.2. Establecimiento de la conexi´n (three-way handshake) . . o 4.2.3. Problemas de seguridad relacionados con los ISN . . . . . 4.3. Otros protocolos . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1. El protocolo UDP . . . . . . . . . . . . . . . . . . . . . . 4.3.2. El...
Regístrate para leer el documento completo.