Detección de impostores mediante perfiles basados en...

15
Detección de impostores mediante perfiles basados en grafos de navegación 1. Resumen En la actualidad, en que la información se considera un bien valioso en extremo, es imperante detectar oportunamente si nuestro computador está siendo usado ilegalmente por un intruso, llamado comúnmente impostor. El objetivo de un impostor es obtener el mayor beneficio de su intrusión (obtención de información confidencial o de alto valor comercial, etc.), y, simultáneamente, que dicha intrusión pase desapercibida. La detección de impostores se ha estudiado intensamente, desde el artículo seminal de Schonlau et al. [1], quienes sugirieron construir un perfil del usuario a proteger a partir de los comandos UNIX, sin argumentos, que ella ejecuta durante una sesión en su computador. Con este propósito, Schonlau et al. desarrollaron una base de datos de impostores, conocida como SEA[2], la cual ha sido el de facto estándar para construir, validar y comparar mecanismos rivales para la detección de impostores (ver, por ejemplo, [3-6]). Sin embargo, el desempeño de todos los métodos basados en SEA está lejos de ser si acaso regular. Esto, en parte, se debe a que el uso de comandos UNIX es insuficiente para marcar la diversidad entre un usuario y otro. Por ello, los estudios en la detección de impostores han considerado, para caracterizar mejor a un usuario, enriquecer SEA (por ejemplo, incluyendo los argumentos de los comandos UNIX[7]), o considerar fuentes alternas de actividad de usuario, tales como el uso de dispositivos (Vgr. el ratón [8] o el teclado [9]), o como el uso de aplicaciones comunes (Vgr. un sistema de composición de documentos [10]). Nuestra tesis sostiene que el comportamiento de un usuario puede caracterizarse precisamente mediante una representación de qué objetos visita y cómo lo hace dentro de su propio sistema de archivos, que es, después de todo, para el sistema operativo la abstracción del usuario mismo. Crucial en nuestro enfoque es una estructura, que llamamos grafo de navegación, la cual representa la estructura jerárquica que personalmente el usuario impone sobre su conjunto de carpetas y archivos, un compendio de los objetos visitados recientemente, así como la secuencia en como el usuario se mueve de un archivo a otro. A través de la investigación propuesta, demostraremos, primero, que un grafo de navegación permite entender mejor el comportamiento de un usuario, y así construir un perfil preciso del mismo. Por ejemplo, dado que comúnmente colectamos archivos relacionados en una sola carpeta, dicha carpeta puede asociarse con una tarea propia del usuario. Entonces, la realización de un conjunto de tareas; es decir, el acceso a objetos específicos dentro de un conjunto de carpetas, conjeturamos, debe regirse bajo el principio de localidad de referencia. Este principio es el fenómeno que explica que ciertas localidades de almacenamiento, que contienen el mismo valor o que están relacionadas de alguna otra forma, sean accedidas frecuentemente. Existen dos tipos de localidades de referencia: la temporal y la espacial. La localidad temporal se

Transcript of Detección de impostores mediante perfiles basados en...

Page 1: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

Detección de impostores mediante perfiles basados en grafos de navegación

1. Resumen En la actualidad, en que la información se considera un bien valioso en

extremo, es imperante detectar oportunamente si nuestro computador está siendo usado ilegalmente por un intruso, llamado comúnmente impostor. El objetivo de un impostor es obtener el mayor beneficio de su intrusión (obtención de información confidencial o de alto valor comercial, etc.), y, simultáneamente, que dicha intrusión pase desapercibida.

La detección de impostores se ha estudiado intensamente, desde el artículo seminal de Schonlau et al. [1], quienes sugirieron construir un perfil del usuario a proteger a partir de los comandos UNIX, sin argumentos, que ella ejecuta durante una sesión en su computador. Con este propósito, Schonlau et al. desarrollaron una base de datos de impostores, conocida como SEA[2], la cual ha sido el de facto estándar para construir, validar y comparar mecanismos rivales para la detección de impostores (ver, por ejemplo, [3-6]). Sin embargo, el desempeño de todos los métodos basados en SEA está lejos de ser si acaso regular. Esto, en parte, se debe a que el uso de comandos UNIX es insuficiente para marcar la diversidad entre un usuario y otro. Por ello, los estudios en la detección de impostores han considerado, para caracterizar mejor a un usuario, enriquecer SEA (por ejemplo, incluyendo los argumentos de los comandos UNIX[7]), o considerar fuentes alternas de actividad de usuario, tales como el uso de dispositivos (Vgr. el ratón [8] o el teclado [9]), o como el uso de aplicaciones comunes (Vgr. un sistema de composición de documentos [10]).

Nuestra tesis sostiene que el comportamiento de un usuario puede caracterizarse precisamente mediante una representación de qué objetos visita y cómo lo hace dentro de su propio sistema de archivos, que es, después de todo, para el sistema operativo la abstracción del usuario mismo. Crucial en nuestro enfoque es una estructura, que llamamos grafo de navegación, la cual representa la estructura jerárquica que personalmente el usuario impone sobre su conjunto de carpetas y archivos, un compendio de los objetos visitados recientemente, así como la secuencia en como el usuario se mueve de un archivo a otro.

A través de la investigación propuesta, demostraremos, primero, que un grafo de navegación permite entender mejor el comportamiento de un usuario, y así construir un perfil preciso del mismo. Por ejemplo, dado que comúnmente colectamos archivos relacionados en una sola carpeta, dicha carpeta puede asociarse con una tarea propia del usuario. Entonces, la realización de un conjunto de tareas; es decir, el acceso a objetos específicos dentro de un conjunto de carpetas, conjeturamos, debe regirse bajo el principio de localidad de referencia. Este principio es el fenómeno que explica que ciertas localidades de almacenamiento, que contienen el mismo valor o que están relacionadas de alguna otra forma, sean accedidas frecuentemente. Existen dos tipos de localidades de referencia: la temporal y la espacial. La localidad temporal se

Page 2: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

refiere al uso repetitivo de objetos en pequeños intervalos de tiempo; mientras que la localidad espacial se refiere al uso repetitivo de objetos que se encuentran en lugares cercanos unos con otros. Segundo, demostraremos que los perfiles basados en grafos de navegación pueden aplicarse en la construcción de mecanismos de detección de impostores mucho más certeros que los que existen en la literatura.

El trabajo de investigación aquí propuesto se enmarca dentro de las actividades del proyecto de investigación básica “Aplicación de Modelos Estadísticos y Técnicas de Caracterización a Tráfico de Red para la Detección de Intrusos”, con número de referencia CONACYT – SEP 105698, el cual es una continuación del proyecto, también de investigación básica “Detección Oportuna de Ataques Miméticos”, con número de referencia CONACYT – SEP 47557. A través del trabajo propuesto, nuestro objetivo es cumplir las siguientes metas científicas:

1. Contribuir al conocimiento general de la seguridad informática; particularmente, en la detección de impostores.

2. Inventar y desarrollar un mecanismo novedoso, basado en el uso y la forma del sistema de archivos de un usuario a proteger, capaz de detectar oportunamente, y con mayor certeza que otros propuestos en la literatura, a un impostor que ha obtenido acceso no autorizado al computador del usuario;

3. Desarrollar y poner a disposición de la comunidad científica una base de datos con historiales de usuarios, así como de intrusiones de impostores, que permita el desarrollo, experimentación y comparación justa de nuevos métodos para la detección de impostores.

4. Diseminar los resultados de investigación en foros más importantes en el área, congresos y revistas científicas.

Dichas metas científicas podrán medirse a través de los siguientes productos científicos:

1. Dos artículos en congreso científico de alto impacto; particularmente, nuestros congresos objetivo son RAID, SSP, CSFS, etc.

2. Artículo en revista científica de alto impacto, tal como International Journal in Information Security.

3. Artículo de divulgación en una revista de circulación nacional o internacional. Estos artículos reportarán los resultados de la investigación propuesta en el presente Proyecto Académico.

4. Co-asesoría, entre el Responsable del Proyecto Académico y el Candidato a Becario, de estudiantes del Programa de Posgrado Receptor.

5. Capacitación conjunta, entre el Responsable del Proyecto Académico y el Candidato a Becario, de cursos especializados del Programa de Posgrado Receptor.

Los proyectos de investigación básica, CONACYT – SEP, arriba señalados han sido ambos realizados por el Responsable del Proyecto Académico, Dr. Raúl Monroy Borja, y líder del grupo de seguridad y redes computacionales de la Rectoría de la Zona Metropolitana de la Ciudad de México (RZMCM), del Tecnológico de Monterrey. Dichos proyectos se insertan dentro de la

Page 3: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

especialidad en redes y seguridad computacional, del Posgrado Receptor, Doctorado en Ciencias Computacionales, del Tecnológico de Monterrey, Campus Estado de México.

2. Palabras clave Seguridad informática, detección de intrusiones, detección de impostores

Reconocimiento de patrones, clasificadores, clasificadores Bayesianos

3. Objetivos y metas

3.1 Objetivos científicos 1. Inventar y desarrollar un mecanismo novedoso, basado en el uso y la

forma del sistema de archivos de un usuario a proteger, capaz de detectar oportunamente, y con mayor certeza que otros propuestos en la literatura, a un impostor que ha obtenido acceso no autorizado al computador del usuario;

2. Desarrollar y poner a disposición de la comunidad científica una base de datos con historiales de usuarios, así como de intrusiones de impostores, que permita el desarrollo, experimentación y comparación justa de nuevos métodos para la detección de impostores.

3. Diseminar los resultados de investigación en foros más importantes en el área, congresos y revistas científicas.

3.2 Productos científicos 1. Dos artículos en congreso científico de alto impacto; particularmente,

nuestros congresos objetivo son RAID, SSP, CSFS, etc. 2. Artículo en revista científica de alto impacto, tal como International

Journal in Information Security. 3. Artículo de divulgación en una revista de circulación nacional o

internacional. Estos artículos reportarán los resultados de la investigación propuesta en el presente Proyecto Académico.

4. Co-asesoría, entre el Responsable del Proyecto Académico y el Candidato a Becario, de estudiantes del Programa de Posgrado Receptor.

5. Capacitación conjunta, entre el Responsable del Proyecto Académico y el Candidato a Becario, de cursos especializados del Programa de Posgrado Receptor.

3.3 Metas científicas dentro del posgrado receptor 1. Vinculación con el programa de posgrado de excelencia del INAOE, centro

de investigación CONACYT. 2. Movilidad de estudiantes del programa de posgrado receptor.

4. Antecedentes en la detección de impostores

La detección de impostores se refiere a la identificación oportuna de un intruso haciéndose pasar por un usuario legítimo en una sesión de computadora [1].

Page 4: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

Normalmente se realiza como una tarea de detección de anomalías, donde el mecanismo de detección de impostores intenta distinguir cualquier cambio en las actividades del usuario actual con respecto a un perfil dado del comportamiento normal del usuario. La detección de impostores ha sido estudiada de manera activa a partir del importante trabajo de Schonlau et al. [1], quienes han desarrollado una base de datos, llamada SEA [2], la que es considerada de facto como el estándar para construir, validar y comparar mecanismos de detección de impostores.

4.1 El conjunto de datos SEA SEA contiene la información del registro de la actividad de 70 usuarios UNIX. Cada registro de usuario consiste de 15,000 comandos que fueron recabados mediante el mecanismo de auditoría de acciones (aact) descartando los argumentos. Se seleccionaron 50 usuarios de forma aleatoria para server como usuarios auténticos, mientras que los restantes fueron seleccionados para actuar (artificialmente) como impostores. El conjunto de datos SEA está estructurado de la siguiente manera. Cada secuencia de comandos de un usuario legítimo se divide primero en bloques de tamaño 100. Cada bloque de comandos es llamado una sesión; así, se considera arbitrariamente que la actividad del usuario está compuesta y es representada por 150 sesiones. Las primeras 50 sesiones de cada usuario se mantienen intactas; éstas constituyen el comportamiento normal del usuario, que llamamos el historial de comandos del usuario. El conjunto de historiales de comandos se utiliza como el conjunto de datos para construir cualquier sistema de detección de impostores propuesto. Sin embargo, las últimas 100 sesiones, pueden o no haber sido contaminadas, y éstas son usadas como el conjunto de datos para la validación del mecanismo de detección. Si fueron contaminadas, una sesión de validación es considerada como de un impostor. Una sesión de validación puede o no estar contaminada. La contaminación de sesión en SEA equivale al remplazo de la sesión de validación original que fue seleccionada, por una de un usuario elegido arbitrariamente como impostor. Las sesiones contaminadas fueron insertadas usando esta regla: si no se encuentra presente un impostor, entonces un nuevo impostor aparece en la siguiente sesión con una probabilidad de 1%. En caso contrario, el mismo impostor continúa estando presente en el siguiente bloque con una probabilidad de 80%. En SEA se incluye una matriz que, para cada usuario, muestra donde se encuentran las sesiones impostoras, si es que las hay. Como un conjunto de prueba, SEA es muy restrictivo, cuando se consideran condiciones más realistas. Para empezar, un supuesto impostor no tiene conocimiento alguno acerca del perfil de una víctima deseada. Una sesión impostora es simplemente una secuencia de comandos que un usuario, marcado involuntariamente como

Page 5: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

‘impostor’, introduciría en una sesión UNIX. Más aún, en SEA, algunos de tales impostores muestran un comportamiento muy simple y repetitivo, el cual es fácilmente detectado como inusual, incluso mediante una inspección humana. Para superar estas limitaciones, podemos darnos a la tarea de recopilar sesiones UNIX confiables; sin embargo, tal tarea ha probado ser compleja, dado que las sesiones UNIX reales son dispersas y, por tanto, difíciles de obtener. Esto ha sido probado por Chinchani et al. [11], quienes han intentado sintetizar secuencias de comandos de usuarios, con el propósito de permitir la construcción de un modelo de comportamientos normales. RACOON, la herramienta de Chinchani et al., sintetiza las sesiones de usuario con el fin de intentar evitar el inherentemente largo tiempo que toma el recolectar las reales. El objetivo primordial es acelerar el proceso del desarrollo y evaluación de sistemas de detección de impostores. Recientemente, la investigación en detección de impostores ha buscado fuentes alternativas de actividad de usuarios para obtener perfiles más adecuados del comportamiento del usuario. Ejemplos de fuentes alternativas de información incluyen el uso de dispositivos de usuario (por ejemplo, el ratón [9]), y la interacción del usuario con aplicaciones específicas (por ejemplo, el uso de un sistema de administración de documentos [10]). Existe un amplio repertorio de investigaciones acerca de la dinámica de pulsación de teclas [8].

4.2 Mecanismos de Detección de Impostores: un Panorama General

La investigación en detección de impostores ha sido muy prolífica. Las limitaciones de espacio nos impiden dar un panorama general razonable, o una comparación justa de estos mecanismos (aún si nos limitáramos a los más significativos). Deberemos, por lo tanto, confinarnos a revisar unos cuantos, refiriendo al lector a [12, 13] para un estudio más amplio. Un detector de impostores es global, si, para determinar la presencia de un impostor, usa tanto el perfil del usuario que está siendo protegido, como el perfil de los colegas de tal usuario. En caso contrario, es global. De manera similar, un detector de impostores se basa en la temporalidad, si, para la formación del perfil de usuario, considera tanto acciones individuales como las relaciones de estas; por ejemplo, una secuencia de acciones. En caso contrario, es basado en frecuencias. Puesto que los métodos globales y temporales se encuentran mejor informados, generalmente son más precisos que los locales y basados en frecuencias; no obstante, exigen más información y esfuerzo de cómputo, y son inaplicables en ciertos contextos. La singularidad [14] es un método global de detección basado en frecuencias, el cual proviene de la observación de que la apariencia de un comando no visto en la construcción del perfil de un usuario puede indicar la presencia de un impostor. Un comando se dice que es de popularidad i si y sólo sí i usuarios utilizan tal comando. Se dice que es singular si su popularidad es uno. El modelo de detección consiste de una puntuación, calculada sobre cada sesión de prueba, que incrementa (respectivamente decrece) con la aparición de un comando

Page 6: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

singular (respectivamente no visto con anterioridad). La singularidad ha sido una referencia obligada para propósitos de comparación. Las gramáticas personalizadas [5], son métodos de detección globales basados en temporalidad, que obtienen un perfil del comportamiento normal usando las secuencias de acciones de usuario únicas y las más repetitivas. Para identificar tales secuencias de acciones dentro de un historial y de entre otros registros de auditoría de usuarios, las gramáticas personalizadas aplican sequitur [15], un método para inferir jerarquías composicionales a partir de cadenas. Una sesión de prueba es clasificada usando una función de evaluación, que produce una puntuación alta si la sesión incluye secuencias de acción muy largas con una alta afinidad a lo propio; es decir, una alta frecuencia en el historial del usuario) y una baja afinidad por lo ajeno (es decir, una baja frecuencia en el historial de todos los usuarios). Bayes simple [16, 7, 17] asume que las acciones de un usuario son independientes entre sí. Por tanto, la probabilidad para una acción c de haber sido originada por un usuario u, Pru (c), es dada por una distribución de probabilidad basada en la frecuencia de acciones. Esto puede ser local o global, con desempeños similares [17]. Para evaluar una sesión de prueba s, en la que el usuario u se supone haber participado, la probabilidad acumulada de s es comparada ya sea contra la probabilidad de que s sea producido por alguien más [16] o contra un umbral definido por el usuario [17]. Sequitur-luego-MOM [6] es un detector local, temporal de impostores, que caracteriza el comportamiento del usuario en términos de las dependencias temporales entre las secuencias de acción de mayor ocurrencia. Este método aplica primeramente sequitur a un historial de acciones dado. Luego, la principal regla de producción de la gramática producida por sequitur es usada para entrenar un Modelo Oculto de Markov (MOM). En consecuencia, este modelo no sólo considera dependencias temporales entre acciones, gracias a sequitur, sino que también considera dependencias temporales entre secuencias, gracias al MOM. El desempeño de estos (y otros) métodos, sin embargo, no es concluyente. Por ejemplo, la mayor parte de estos métodos reporta que al operar con un nivel de detección del 95%, producen más del 40% de falsas alarmas. Los detectores de impostores no han sido completa o confiablemente evaluados. Esto sucede dado que no han sido puestos a trabajar bajo condiciones difíciles, donde sea requerido distinguir un intruso que realmente intente una suplantación real de un usuario. A partir de aquí, se entiende que estos métodos no han sido comparados meticulosamente entre sí.

Referencias 1. Schonlau, M., DuMouchel, W., Ju, W., Karr, A., Theus, M., Vardi, Y.: Computer intrusion: Detecting masquerades. Statistical Science 16 (2001) 58–74 2. Schonlau, M.: Masquerading user data. http://www.schonlau.net (2008)

Page 7: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

3. Maxion, R.A., Townsend, T. N.: Masquerade detection augmented with error analysis. IEEE Transactions on Reliability 53 (2004) 124–147 4. Oka, M., Oyama, Y., Abe, H., Kato, K.: Anomaly detection using layered networks based on Eigen co-occurrence matrix. In Jonsson, E., Valdes, A., Almgren, M., eds.: Recent Advances in Intrusion Detection: 7th International Symposium, RAID 2004. Volume 3224 of Lecture Notes in Computer Science, Springer (2004) 223–237 5. Latendresse, M.: Masquerade detection via customized grammars. In Julish, K., Kruegel, C., eds.: Proceedings of the Second International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, DIMVA 2005. Volume 3548 of Lecture Notes in Computer Science, Springer (2005) 141–159 6. Posadas, R., Mex-Perera, C., Monroy, R., Nolazco-Flores, J.: Hybrid method for detecting masqueraders using session folding and hidden markov models. In: Proceedings of the 5th Mexican International Conference on Artificial Inteligence: Advances in Artificial Inteligence. Volume 4293 of Lecture Notes in Computer Science, Springer (2006) 622–631 7. Maxion, R.A.: Masquerade detection using enriched command lines. In: Proceedings of the International Conference on Dependable Systems and Networks, DSN‘03, San Francisco, CA, USA, IEEE Computer Society Press (2003) 5–14 8. Killourhy, K.S., Maxion, R.A.: Why did my detector do that?! – Predicting keystroke-dynamics error rates. In Jha, S., Sommer, R., Kreibich, C., eds.: Recent Advances in Intrusion Detection, 13th International Symposium, RAID 2010. Volume 6307 of Lecture Notes in Computer Science., Springer (2010) 256–276 9. Garg, A., Rahalkar, R., Upadhyaya, S., Kwiat, K.: Profiling users in GUI based systems masquerade detection. In: Proceedings of the 7th IEEE Information Assurance Workshop, IEEE Computer Society Press (2006) 48–54 10. Sankaranarayanan, V., Pramanik, S., Upadhyaya, S.: Detecting masquerading users in a document management system. In: Proceedings of the IEEE International Conference on Communications, ICC‘06. Volume 5, IEEE Computer Society Press (2006) 2296–2301 11. Chinchani, R., Muthukrishnan, A., Chandrasekaran, M., Upadhyaya, S.: RACOON: Rapidly generating user command data for anomaly detection from customizable templates. In: Proceedings of the 20th Annual Computer Security Applications Conference, ACSAC‘04, IEEE Computer Society Press (2004) 189–204 12. Salem, M.B., Hershkop, S., Stolfo, S.J.: A survey of insider attack detection research. In Stolfo, S.J., Bellovin, S.M., Hershkop, S., Keromytis, A., Sinclair, S., Smith, S.W., eds.: Insider Attack and Cyber Security: Beyond the Hacker. Advances in Information Security. Springer (2008) 69–90 13. Bertacchini, M., Fierens, P.: A survey on masquerader detection approaches. In: Proceedings of V Congreso Iberoamericano de Seguridad Informática, Universidad de la República de Uruguay (2008) 46–60 14. Schonlau, M., Theus, M.: Detecting masquerades in intrusion detection based on unpopular commands. Information Processing Letters 76 (2000) 33–38 15. Nevill-Manning, C.G., Witten, I.H.: Identifying hierarchical structure in sequences: a linear-time algorithm. Journal of Artificial Intelligence Research, JAIR 7 (1997) 67–82

Page 8: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

16. Maxion, R.A., Townsend, T.N.: Masquerade detection using truncated command lines. In: Proceedings of the International Conference on Dependable Systems & Networks, Washington, DC, IEEE Computer Society Press (2002) 219–228 17. Wang, K., Stolfo, S.: One-class training for masquerade detection. In: Proceedings of the 3rd IEEE Conference Data Mining Workshop on Data Mining for Computer Security, IEEE (2003)

5. Justificación El objetivo de nuestra investigación es ampliar y profundizar el nivel de

precisión en la detección oportuna de impostores. Con relación en a quién proteger, cualquiera es nuestro usuario objetivo; nos conducimos bajo la premisa de que todos los usuarios tenemos un interés genuino por evitar que uno de nuestros dispositivos de Tecnología de Información (TI) caiga en manos ajenas, potencialmente hostiles. Con relación en de quién defenderse, nuestro enfoque es aún más comprensivo, e incluye desde intrusos de ocasión u oportunistas, hasta atacantes profesionales, quienes pudieran haber comprometido ya el equipo del usuario mediante la instalación de algún archivo de acceso (generalmente llamado puerta trasera.)

La clave para lograr el objetivo arriba planteado descansa en la aplicación de técnicas estadísticas, o de inteligencia artificial, sobre información que represente fielmente al comportamiento de un usuario. Nuestra tesis sustenta que dicha información puede obtenerse al observar cómo estructura un usuario su propio sistema de archivos, y al observar cómo y cuántas veces visita los objetos de dicho sistema. Este enfoque es novedoso, como puede constatarse en la sección previa, que presenta antecedentes en el problema de detección de impostores. Además, lo que hace que valga la pena investigar esta línea es la manera natural con que ella arroja información que identifica a un usuario.

Para expresar el comportamiento de navegación de un usuario proponemos usar lo que llamamos grafo de navegación de un usuario. Un grafo de navegación es de hecho la unión disjunta de dos grafos: uno de acceso y el otro de directorio. Como su nombre lo sugiere, el grafo de acceso expresa el orden y la frecuencia con que un usuario accede a los objetos de su sistema de archivos, considerando un objeto de partida. El grafo de directorio, por otra parte, es una arborescencia, y representa a un subárbol de la estructura jerárquica que constituye el sistema de archivos del usuario a proteger. Por tanto, el grafo de navegación de un usuario expresa expeditamente la estructura aproximada de su sistema de archivos, y también el cómo y cuántas veces visita a objetos en dicho sistema.

El grafo de navegación de un usuario puede usarse para entender el comportamiento de un usuario, así como para construir métodos precisos de detección de impostores. Por ejemplo, dado que un grafo de navegación permite determinar qué objetos han sido visitados repetidamente, también permite determinar qué características comparten en común dichos objetos.

Page 9: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

En particular, podríamos demostrar nuestra hipótesis de localidad de referencia en el patrón de visitas a objetos, considerando la estructura de directorios y definir como una actividad de un usuario a todos los objetos que desciendan de un fólder común. Con esta noción de actividad, y una relación usuario versus actividades, el comportamiento del usuario puede modelarse mediante cuáles son las actividades que durante el día realiza, y el cómo lo hace. Y, en este caso, los principios de localidad espacial y temporal podrían corroborarse experimentalmente, a través de una gráfica en el tiempo de cómo accede el usuario a estas actividades. Deberíamos observar, pues, acciones repetitivas dentro de una misma actividad (localidad temporalidad) y que la distancia entre objetos con relación en una misma actividad es relativamente pequeña (localidad espacial).

Más aún, la noción de actividad directamente produce una matriz de probabilidad de transiciones entre actividades. Dicha matriz puede usarse para determinar, de modo directo, la probabilidad total de finalizar en una actividad específica, tras visitar a unos cuantos objetos del sistema de archivos, dado que inicialmente se partió de otra actividad dada. La relación entre la ejecución de tareas es un proceso temporal y estocástico, que puede modelarse mediante modelos ocultos de Markov o campos aleatorios de Markov, o algún otro enfoque Bayesiano.

Se requiere de investigación profunda para construir modelos sofisticados, estadísticos o de inteligencia artificial, de modo que, tras una comparación justa y exhaustiva, podamos distinguir cuál o cuáles son los más precisos. También, se requiere realizar investigación seria, por ejemplo, para determinar una medida apropiada que pueda usarse para distinguir como identificar adecuadamente qué es una tarea. Igualmente, se requiere más investigación para analizar otras medidas de interés, como por ejemplo: el número de accesos a objetos no visitados previamente dentro de un intervalo de tiempo, la profundidad promedio de navegación en el árbol de directorio, etc.

En este trabajo de investigación, también exploraremos cómo aplicar medidas para restringir el tamaño del grafo de navegación de un usuario, de modo que siempre tenga un tamaño manejable. Exploraremos la aplicabilidad de técnicas de reemplazo de paginas que, dentro del contexto de investigación en sistemas operativos, se han propuesto para la administración de memoria virtual. Por ejemplo, consideramos investigar el efecto de aplicar una política de eliminación de nodos que remueva aquellos que no han sido usados recientemente (Least Recently Used). Implementar este tipo de política es generalmente costoso (complejidad espacial y temporal) en el contexto de un sistema operativo, pero puede ser aplicable en el nuestro caso, pues podría aplicarse justo al encender el equipo o cuando esté próximo a apagarse. Si los resultados no fueran lo esperados, podríamos investigar implementaciones más económicas de esta política, aunque menos precisas, tales como estrategias de segunda oportunidad, con clasificación de páginas (Not Used Recently).

Del mismo modo que debemos guardar que el espacio del grafo de navegación sea manejable, también debemos vigilar si el usuario bajo protección ha, deliberadamente, eliminado o movido un objeto de su sistema de archivos

Page 10: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

que también se encuentra dentro de nuestro grafo de navegación. Evidentemente, esto implica que no sólo debemos vigilar el tamaño del grafo, sino también debemos darle mantenimiento,. Esto es para que continuamente refleje fielmente el estado del sistema de archivos del usuario a proteger.

5.1 Registro de investigación

5.1.1 Raúl Monroy Raúl Monroy ha trabajado en el área de seguridad informática desde 2000. Posee el grado de doctor, con especialidad en inteligencia artificial, otorgado por la universidad de Edimburgo. El Dr. Monroy es actualmente Profesor Investigador Titular (clasificación más alta otorgada por el senado académico) en el Tecnológico de Monterrey, Campus Estado de México. Es líder del grupo de investigación en seguridad y redes computacionales, el cual acoge dos investigadores principales más, varios investigadores externos, cinco estudiantes de doctorado (dentro del Posgrado Receptor), y seis estudiantes de maestría. Siete de los proyectos de investigación del Dr. Monroy han recibido financiamiento externo, principalmente de agencias tales como el CONACYT (México), BMBF, DAAD y DFG (Alemania) y FRIDA (agencia latinoamericana). Ha sido presidente de programa técnico de varios congresos y talleres de trabajo. Desde noviembre de 2010, funge como presidente de la Sociedad Mexicana de Inteligencia Artificial (SMIA), A. C.

Las investigaciones del Dr. Monroy buscan automatizar la aplicación de la demostración automática de teoremas en el desarrollo formal de sistemas y en aplicar técnicas de Inteligencia Artificial en la solución de problemas relacionados con seguridad informática. Actualmente, trabaja en la invención y aplicación de estrategias para descubrir y corregir errores en sistemas computacionales o en sus especificaciones, así como en la invención y aplicación de métodos para la detección de anomalías en modelos de seguridad informática y en la invención de métodos para planificación de movimientos en robótica.

5.1.2 Carlos Arturo Hernández Gracidas

Carlos Hernández Gracidas estudió la licenciatura en ciencias de la computación en la Benemérita Universidad Autónoma de Puebla, obteniendo el título en el año 2001. En el año 2005 se graduó como maestro en ciencias con especialidad en ciencias computacionales en el Instituto Nacional de Astrofísica, Óptica y Electrónica. En el año 2010 obtuvo el grado de doctor en ciencias con especialidad en ciencias computacionales, también por parte del Instituto Nacional de Astrofísica, Óptica y Electrónica. Fue elegido como becario por parte de la Fundación Telmex para cursar sus estudios de licenciatura, mientras que para sus estudios de Maestría y Doctorado fue apoyado por becas otorgadas por el CONACyT. Carlos Hernández Gracidas ha trabajado con anterioridad en el reconocimiento de objetos usando el enfoque de modelos basados en apariencia. Su trabajo actual se centra en el uso de visión computacional y métodos de representación de conocimiento espacial, aplicados a la recuperación de imágenes por contenido.

Page 11: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

Adicionalmente, ha iniciado investigación utilizando minería de datos aplicada a las relaciones espaciales presentes en las imágenes, con el fin de extraer patrones que sean de utilidad para la descripción de conjuntos de imágenes. En sus investigaciones ha explorado el uso de técnicas de inteligencia artificial, fusión de datos y modelado de información. Derivado de tales investigaciones, ha realizado más de 10 publicaciones entre reportes técnicos, artículos de revista y conferencias internacionales. A la fecha, Carlos Hernández Gracidas ha participado en dos proyectos de investigación auspiciados por el CONACyT.

6. Metodología Para mejorar el nivel de detección de impostores, mediante la información inmersa en un grafo de navegación, deben emprenderse las siguientes tareas principales.

6.1 Tareas principales 1. Construcción de una base de datos de desarrollo y validación de los

métodos para detectar impostores, basados en grafo de navegación. El grupo de seguridad y redes computacionales de la RZMCM del Tecnológico de Monterrey ha desarrollado un conjunto de programas, denominados hooks en la literatura, que permiten construir el grafo de navegación de un usuario dado. Estos programas colectan información y construyen el grafo de navegación de un modo transparente; es decir, que su efecto es para el usuario a proteger imperceptible. La construcción de una base de datos de desarrollo y validación tiene dos partes. La primera parte consiste en aplicar estos programas para construir grafos de navegación para un conjunto amplio y variado de usuarios (oficinistas, asistentes, gerentes, etc.).

La segunda parte consiste también en aplicar estos programas, pero esta vez a un conjunto de personas a quienes hayamos reclutado para funcionar como atacantes. Los atacantes también tendrán distintos perfiles (oficinistas, programadores, administradores de equipo de cómputo, etc.). A ellos, se les dará un lapso de tiempo para realizar una tarea de intrusión, con un objetivo claro. El objetivo será abierto, y lo determinará el atacante (obtener información, instalar puertas traseras, etc.). El lapso de tiempo que contarán para lograr su objetivo será desconocido y aleatorio, entre varias posibilidades (1 minuto, 3 minutos, 5 minutos, etc.)

Las bases de datos para construcción y validación de métodos de detección de impostores serán publicadas en un sitio Internet para el beneficio de la comunidad científica. De modo que nuevos métodos puedan proponerse y comparase de manera justa.

2. Desarrollo de programa de construcción de grafos de navegación. Con el propósito de contar con y distribuir un programa estable de construcción de grafo de navegación, en esta etapa desarrollaremos el programa actual (conjunto de hooks) e incluiremos nuevas plataformas (sistemas operativos). La nueva versión del programa debe ser general en

Page 12: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

cuanto a que debe poder complementarse con cualquier método de detección de impostores fácilmente.

3. Desarrollo de métodos de detección de impostores mediante grafos de navegación. Mediante una lluvia de ideas, definiremos qué métodos estadísticos o de inteligencia artificial usaremos para la detección de impostores. Esto incluye determinar cómo serán dichos métodos aplicados y la información específica que usarán para resolver el problema de detección.

Consideraremos las técnicas estadísticas o de inteligencia artificial más prometedoras, incluyendo, pero sin limitarnos a, redes neuronales, clasificadores Bayesianos, modelos ocultos o campos aleatorios de Markov, etc. Nuestra selección no será ciega, ni exhaustiva; sino que estará basada fuertemente en un análisis riguroso del problema y de las características teóricas de cada técnica. El resultado de esta tarea consistirá en una colección variada pero selecta de técnicas adecuadas para resolver el problema de detección de impostores, basada en grafo de navegación. Todos los métodos estudiados deberán aceptar la actualización continua de los modelos, para adaptarse a cambios en el comportamiento del usuario (por ejemplo, cambios en las tareas realizadas.)

4. Experimentación exhaustiva de los métodos de detección de impostores. Conjeturamos que nuestros métodos obtendrán excelentes resultados cuando el usuario a proteger tengan una gran variedad, pero a la vez comunes, por su frecuencia de uso, de tareas a realizar. Es decir, muy posiblemente será muy difícil proteger a un usuario que, por ejemplo, únicamente envía órdenes de compra, y que, por lo tanto, produce una distribución de probabilidad asociada a la frecuencia de uso y modo de navegación prácticamente uniforme.

En esta tarea, realizaremos un conjunto exhaustivo de experimentos para validar o refutar nuestras hipótesis. Para cada hipótesis planteada, se diseñará un experimento, considerando una gran variedad de perfiles en el usuario a proteger, así como del atacante. Nuestros resultados deberán ser concluyentes, de modo que puedan reportarse en artículos en los congresos más importantes en el área (por ejemplo, Recent Advances in Intrusion Detection, RAID), así como en revistas indizadas (por ejemplo, Information Security).

5. Integración del método de detección y el grafo de navegación. El objetivo de esta tarea es integrar los resultados de las etapas anteriores como un software, estable y que pueda descargarse e instalarse fácilmente con el propósito de proteger a un equipo de cómputo de impostores.

6. Diseminación de resultados. Los resultados del presente Proyecto Académico serán reportados y diseminados a través de los medios estándar de la comunidad científica. Estos incluyen artículos en congresos

Page 13: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

y revistas, conferencias en seminarios y talleres de trabajo especializados, artículos de divulgación, etc.

7. Otros recursos financieros El Tecnológico de Monterrey, Campus Estado de México, proveerá la infraestructura esencial para desarrollar el presente Proyecto Académico; a saber: escritorio y equipo de cómputo para desarrollo, comunicaciones locales, Internet, espacio público para alojar páginas web con relación en el Proyecto Académico, software especializado, apoyo administrativo, biblioteca, apoyo técnico a equipo de cómputo, etc. El Tecnológico de Monterrey, Campus Estado de México, también proveerá tiempo al Responsable del Proyecto Académico para realizar las actividades de investigación y dirección de trabajos del Candidato a Becario. Adicional a lo anterior, no se vislumbran la necesidad de otros recursos financieros con respecto a este Proyecto Académico.

8. Fortalecimiento del programa receptor El Posgrado Receptor, Doctorado en Ciencias Computacionales, del Tecnológico de Monterrey, Campus Estado de México es uno de los beneficiarios inmediatos del presente Proyecto Académico propuesto. A través de este proyecto, primero se fortalecerán dos líneas de generación de conocimiento del Programa: una, principalmente, es la línea en Redes Computacionales; y, la otra, de manera colateral, es la línea en Inteligencia Artificial. Segundo, se fortalecerá la Academia propia del programa, a través de las publicaciones generadas. Tercero, se fortalecerá el programa menor del Posgrado Receptor, la Maestría en Ciencias de la Computación, pues por la experiencia del Candidato a Becario se le invitaría a participar como sinodal de estudiantes quienes hayan completado sus trabajos de tesis. Cuarto, de manera natural, se fortalecerán los vínculos que el Programa tiene con el Doctorado en Ciencias Computacionales del INAOE, Centro de Investigación CONACYT, pues el Candidato a Becario proviene de ahí. Quinto, igualmente de manera implícita, se espera un incremento en la movilidad de los estudiantes del Programa, al visitar a sus pares en el INAOE. Sexto, se fortalecerá el Programa al contar con una fertilización cruzada por especialistas calificados, provenientes de varios recintos académicos; particularmente, se espera que el Candidato a Becario participe en la impartición de módulos con tópicos especializados dentro de las materias del Posgrado Receptor, Doctorado en Ciencias Computacionales.

El Programa Receptor también será beneficiado indirectamente por los beneficios que el Proyecto Académico brinda a terceros. Por ejemplo, la comunidad científica en el área de detección de intrusiones será un beneficiario directo, pues se interesará no sólo en los resultados obtenidos, sino también en las bases de datos generadas (ver Objetivo 2.)

9. Compromiso de la institución receptora El Tecnológico de Monterrey, Campus Estado de México, proveerá la infraestructura esencial para desarrollar el presente Proyecto Académico; a

Page 14: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

saber: escritorio y equipo de cómputo, comunicaciones locales, Internet, software especializado, apoyo administrativo, biblioteca, apoyo técnico a equipo de cómputo, etc. El Tecnológico de Monterrey, Campus Estado de México, también proveerá tiempo al Responsable del Proyecto Académico para realizar las actividades de investigación y dirección de trabajos del Candidato a Becario.

10. Cronograma de actividades Nuestro programa de trabajo está especificado en actividades (A), y exceptuando por A3, cada una de las cuales tiene duración de cuatro meses, e incluye las tareas principales delineadas en la metodología.

A1. Construcción de una base de datos de desarrollo y validación de los métodos para detectar impostores, basados en grafo de navegación. Fecha de inicio: 15 de agosto de 2011; fecha de término: 15 de diciembre de 2011. Producto esperado: Desarrollo y puesta a disposición de la comunidad científica una base de datos con historiales de usuarios, así como de intrusiones de impostores, que permita el desarrollo, experimentación y comparación justa de nuevos métodos para la detección de impostores. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del Doctorado en Ciencias Computacionales (DCC), del Tecnológico de Monterrey, Campus Estado de México.

A2. Desarrollo de programa de construcción de grafos de navegación. Fecha de inicio: 15 de agosto de 2011; fecha de término: 15 de diciembre de 2011. Productos esperados: Software estable para la construcción y mantenimiento del grafo de navegación de un usuario. Reporte de desarrollo y manual de usuario del método constructor del grafo de navegación. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.

A3. Co-asesoría, entre el Responsable del Proyecto Académico y el Candidato a Becario, de alumnos del Programa Receptor, DCC, del Tecnológico de Monterrey, Campus Estado de México. Fecha de inicio: 15 de agosto de 2011; fecha de término: 14 de agosto de 2012. Producto esperado: Artículos científicos, resultado de las investigaciones realizadas por los estudiante del Programa Receptor. Avances significativos en las respectivas tesis. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.

A4. Desarrollo de métodos de detección de impostores mediante grafos de navegación. Fecha de inicio: 2 de enero de 2012; fecha de término: 15 de mayo de 2012. Productos esperados: Métodos de detección de impostores, con actualización, basados en grafo de navegación. Reporte técnico de los métodos estudiados y seleccionados. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.

Page 15: Detección de impostores mediante perfiles basados en ...homepage.cem.itesm.mx/raulm/wuil-ds/RA.pdf · Resumen En la actualidad, en que la información se considera un bien valioso

A5. Experimentación exhaustiva de los métodos de detección de impostores. Fecha de inicio: 15 de febrero de 2012; fecha de término: 15 de junio de 2012. Productos esperados: Colección de experimentos. Reporte técnico analizando resultados. Lluvia de ideas sobre nuevas líneas de exploración. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.

A6. Capacitación conjunta, entre el Responsable del Proyecto Académico y el Candidato a Becario, de cursos especializados del Programa de Posgrado Receptor. Fecha de inicio: 9 de enero de 2012; fecha de término: 15 de mayo de 2012. Productos esperados: Cursos especializados impartidos dentro del DCC. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.

A7. Integración del método de detección y el grafo de navegación. Fecha de inicio: 15 de mayo de 2012; fecha de término: 14 de septiembre de 2012. Producto esperado: Software estable, listo para distribución. Reporte técnico; manual de instalación y usuario. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.

A8. Preparación y diseminación de resultados. Fecha de inicio: 15 de mayo de 2012; fecha de término: 14 de septiembre de 2012. Producto esperado: Artículos científicos, congreso y revista, sometidos a evaluación. Artículo de divulgación. Conferencias en seminarios y talleres de trabajo especializados. Impacto en el posgrado receptor: Fortalecimiento de la línea de investigación seguridad y redes computacionales del DCC, del Tecnológico de Monterrey, Campus Estado de México.