Kitabı oku: «Innovando la educación en la tecnología», sayfa 8
4.5 Presentar y evaluar los resultados generados por el algoritmo
En esta etapa se determinó el tiempo de ejecución experimental que necesitó el sistema para encontrar el camino más corto. Además, se validaron los resultados comparando el tiempo que tomó encontrar el camino al incrementar el tamaño del plano y la cantidad de obstáculos iniciales. Esto con el objetivo de comprobar el correcto funcionamiento y comportamiento del algoritmo.
Por otro lado, también se obtuvo como resultado el nuevo tiempo de ejecución al replantear la ruta debido a la presencia de nuevos obstáculos que interfirieron con el camino encontrado.
Cabe recalcar que la ejecución del simulador se realizó en una computadora con las siguientes características: procesador Intel Core i7-7630QM, CPU 2.60GHz, 8 GB de RAM, sistema operativo MacOS Mojave y tarjeta gráfica Radeon Pro 560X 4096 MB.
5. RESULTADOS
Posterior a ejecutar el simulador, en la prueba de concepto se logró calcular el tiempo de ejecución experimental requerido por el algoritmo para encontrar el camino más corto hacia la posición final.
Esto se realizó utilizando un paquete llamado System. Diagnostics el cual “proporciona clases que permiten interactuar con procesos del sistema, registros de eventos y contadores de rendimiento” (Microsoft, s. f.). De esta manera, se logró medir el tiempo transcurrido desde el inicio de la ejecución del simulador hasta la obtención del resultado.
Para la presentación de resultados estos se dividieron en tres criterios. El primer criterio mostró el camino más corto encontrado tomando en cuenta la posición del agente y la posición del punto de extracción seguro. Así, en la figura 4 se puede observar que el CPU requirió 22 milisegundos para encontrar la ruta, es decir, se demoró en calcular el camino más corto 0,022 segundos.
El segundo criterio presentó como resultado el tiempo de ejecución experimental requerido para replantear el nuevo camino más corto ante la existencia de obstáculos agregados manualmente que interfirieron con el camino encontrado inicialmente. En la figura 5 se puede observar que el CPU requirió 2 milisegundos para replantear la ruta más corta ante un obstáculo, es decir, se demoró 0,002 segundos en calcular el nuevo camino.
Por último, el tercer criterio mostró la presencia de obstáculos generados en tiempo real. Así, dio el resultado del tiempo de ejecución experimental requerido para encontrar el nuevo camino más corto ante la existencia de obstáculos generados dinámicamente. En la figura 6 se observa que, con 58 obstáculos dinámicos sobre el plano, el CPU requirió 3 milisegundos o 0,003 segundos para recalcular el nuevo camino más corto.
A manera de resumen, se presenta una tabla comparativa con el objetivo de ilustrar de mejor manera los resultados obtenidos.
6. DISCUSIÓN DE LOS RESULTADOS
Para realizar una discusión y validación del funcionamiento del algoritmo y los resultados obtenidos en la prueba de concepto se tuvo en cuenta una técnica recurrentemente utilizada en la literatura revisada con relación a algoritmos más cortos. Esta técnica experimental consiste en realizar diferentes ejecuciones del algoritmo bajo diferentes escenarios.
Para la realización de la validación arbitrariamente se establecieron tres escenarios. El primero con una variación en el tamaño del plano, se realizaron ejecuciones con escalas de 5, 10 y 15 del plano y con 10 obstáculos iniciales.
El segundo escenario con una variación en la cantidad de obstáculos iniciales. Se realizaron ejecuciones con 10, 15 y 20 obstáculos, además, estas simulaciones fueron sobre un plano de escala 5.
Por último, se eligió una combinación de los seis escenarios propuestos. Este escenario ha sido aplicado en otras literaturas para ofrecer conclusiones acerca del algoritmo D* ya que se guían del patrón aplicado en Stentz (1994). Así, se generaron cinco ejecuciones sobre un plano de escala 10 con 15 obstáculos iniciales. Con esto se comprobó la consistencia del tiempo de ejecución obtenido en las ejecuciones realizadas.
6.1 Primer escenario
A continuación, se presenta una tabla comparativa de los resultados obtenidos al ejecutar el simulador con los planos de tamaño de escala de 5, 10 y 15.
Tabla 2
Tabla comparativa de resultados para validar el comportamiento en diferentes dimensiones
Dimensiones del plano virtual | Tiempo de ejecución experimental obtenido (ms) |
Escala 5 | 101 ms |
Escala 10 | 543 ms |
Escala 15 | 1474 ms |
Elaboración propia
Como se puede observar en la tabla 2, el tiempo de ejecución experimental tiene un comportamiento incremental ya que este aumenta conforme se vayan aumentando las escalas del plano virtual.
6.2 Segundo escenario
A continuación, la tabla comparativa de los resultados obtenidos al ejecutar el simulador con 10, 15 y 20 obstáculos (véase la tabla 3).
Tabla 3
Tabla comparativa de resultados para validar el comportamiento con diferentes obstáculos
Cantidad de obstáculos sobre el plano | Tiempo de ejecución experimental |
virtual | obtenido (ms) |
10 | 99 ms |
15 | 103 ms |
20 | 104 ms |
Elaboración propia
Como se puede observar en la tabla 3, el tiempo de ejecución experimental no varía de manera drástica comparado al escenario anterior. Así, se observa que la cantidad de obstáculos iniciales afectan al tiempo de ejecución en menor proporción comparado a la variación del tamaño del plano. Además, el tiempo de ejecución experimental depende de dónde se ubiquen los obstáculos iniciales en relación al punto de origen (agente) y el nodo objetivo.
6.3 Tercer escenario
Como último escenario, se muestra la tabla comparativa que abarca los resultados obtenidos al ejecutar un mismo escenario en cinco iteraciones (véase la tabla 4).
Tabla 4
Tabla comparativa de resultados para validar la consistencia del algoritmo al obtener el tiempo de ejecución experimental
Número de ejecución | Tiempo de ejecución experimental |
obtenido (ms) | |
1 | 612 ms |
2 | 607 ms |
3 | 621 ms |
4 | 612 ms |
5 | 605 ms |
Elaboración propia
En base a lo observado en la tabla 4, al generar cinco ejecuciones del mismo escenario se obtienen tiempos de ejecución experimentales semejantes cuya variación no excede a 16 ms. De esta manera, se pudo inferir que el algoritmo D* ofrece consistencia en la búsqueda del camino más corto. Por otro lado, estas variaciones del tiempo de ejecución pueden ser a causa del desempeño de la CPU en el instante en el que se ejecutó la simulación.
7. CONCLUSIONES
Como conclusión, se observa que en los diferentes escenarios realizados en el acápite 5, los resultados indicaron que al usar el algoritmo D* se consiguió el camino más corto en solo 22 milisegundos, lo cual indica que en un entorno real de evacuación una persona conocería de manera precisa el camino más corto en menos de un segundo.
Asimismo, también se logró calcular el tiempo experimental que tomaría el algoritmo en recalcular el camino más corto y seguro en caso se evidencie la presencia de obstáculos que interfirieran en el recorrido. Así, al algoritmo solo le tomó 3 milisegundos en recalcular una segunda ruta eficiente. Esto indica que en un entorno real de evacuación una persona, que se encuentre recorriendo el camino sugerido inicialmente, podría conocer en menos de 0,001 segundos el camino más corto y seguro en caso de la presencia de obstáculos.
REFERENCIAS
Cornejo, M. B. (6 de junio del 2015). 60 % de instituciones sin plan para evacuar. Correo. Recuperado de https://diariocorreo.pe/peru/60-de-instituciones-sin-plan-para-evacuar-592886/
Haghani, M., y Sarvi, M. (2016). Human exit choice in crowded built environments: Investigating underlying behavioural differences between normal egress and emergency evacuations. Fire Safety Journal, 85, 1-9. doi:10.1016/J.FIRESAF.2016.07.003
Hridi, A. P., Das, D., Anjum, M. M., y Das, T. (2016). Faster evacuation after disaster: Finding alternative routes using probable human behavior. ACM DEV’16, Proceedings of the 7th Annual Symposium on Computing for Development, 1-4. doi:10.1145/3001913.3006632
Iizuka, Y., y Iizuka, K. (2015). Disaster evacuation assistance system based on multi-agent cooperation. HICSS’15: Proceedings of the 2015 48th Hawaii International Conference on System Sciences, 173-181. doi:10.1109/HICSS.2015.30
Kocay, W., y Kreher, D. L. (s. f.). Graphs, algorithms, and optimization. Recuperado de https://scholar.google.com.pe/scholar?q=Kocay,+W.,+y+Kreher,+D.+L.+(s.+f.).+Graphs,+algorithms,+and+optimization.&hl=es&as_sdt=0&as_vis=1&oi=scholart
Koo, J., Kim, Y. S., Kim, B.-I., y Christensen, K. M. (2013). A comparative study of evacuation strategies for people with disabilities in high-rise building evacuation. Expert Systems with Applications: An International Journal, 40(2), 408-417. doi:10.1016/j. eswa.2012.07.017
Masudur Rahman Al-Arif, S. M., Iftekharul Ferdous, A. H. M., y Hassan Nijami, S. (2012). Comparative study of different path planning algorithms: A water based rescue system. International Journal of Computer Applications, 39(5), 975-8887. Recuperado de https://pdfs.semanticscholar.org/e59d/c7af0604fced7d124d4f755917725c7892e9.pdf
Microsoft. (s. f.). System. Diagnostics Namespace. Recuperado de https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics?view=netframework-4.8
Pelechano, N., y Badler, N. (2006). Modeling Crowd and Trained Leader Behavior during Building Evacuation. IEEE Computer Graphics and Applications, 26(6), 80-86. doi:10.1109/MCG.2006.133
Stentz, A. (1994). Optimal and efficient path planning for partially-known environments. Proceedings of the IEEE International Conference on Robotics and Automation (ICRA’94), 4, 3310-3317. Recuperado de https://www.ri.cmu.edu/publications/optimal-and-efficient-path-planning-for-partially-known-environments/
Thulasiraman, K., y Swamy, M. N. S. (2011). Basic concepts. En Thulasiraman y M. N. S. Swamy, Graphs: Theory and Algorithms (pp. 1-30). John Wiley & Sons. doi:10.1002/9781118033104.ch1
Ying, Z., Zi-min, Z., y Jian, C. (2017). EvacAgent: A Building Emergency Evacuation Simulation Model Based on Agent. AIACT’17: Proceedings of the 2017 International Conference on Artificial Intelligence, Automation and Control Technologies, 1-7. doi:10.1145/3080845.3080872
Detección de intrusiones basada en modelado de red resistente a evasión por técnicas de imitación
Jorge Maestre-Vidal
jmaestre@ucm.es / Universidad Complutense Madrid, España
Marco Antonio Sotelo-Monge
masotelo@ucm.es / Universidad Complutense Madrid, España
Recepción: 11-6-2019 / Aceptación: 9-7-2019
RESUMEN. Los sistemas de red emergentes han traído consigo nuevas amenazas que han sofisticado sus modos de operación con el fin de pasar inadvertidos por los sistemas de seguridad, lo que ha motivado el desarrollo de sistemas de detección de intrusiones más eficaces y capaces de reconocer comportamientos anómalos. A pesar de la efectividad de estos sistemas, la investigación en este campo revela la necesidad de su adaptación constante a los cambios del entorno operativo como el principal desafío a afrontar. Esta adaptación supone mayores dificultades analíticas, en particular cuando se hace frente a amenazas de evasión mediante métodos de imitación. Dichas amenazas intentan ocultar las acciones maliciosas bajo un patrón estadístico que simula el uso normal de la red, por lo que adquieren una mayor probabilidad de evadir los sistemas defensivos. Con el fin de contribuir a su mitigación, este artículo presenta una estrategia de detección de intrusos resistente a imitación construida sobre la base de los sensores PAYL. La propuesta se basa en construir modelos de uso de la red y, a partir de ellos, analizar los contenidos binarios de la carga útil en busca de patrones atípicos que puedan evidenciar contenidos maliciosos. A diferencia de las propuestas anteriores, esta investigación supera el tradicional fortalecimiento mediante la aleatorización, aprovechando la similitud de paquetes sospechosos entre modelos legítimos y de evasión previamente construidos. Su eficacia fue evaluada en las muestras de tráfico DARPA’99 y UCM 2011, en los que se comprobó su efectividad para reconocer ataques de evasión por imitación.
PALABRAS CLAVE: anomalías, ataques de evasión, detección de intrusiones, redes de comunicación
Intrusion Detection Based on Evasion-Resistant Network Modeling by Imitation Techniques
ABSTRACT. Emerging network systems have brought new threats that have sophisticated their modes of operation in order to go unnoticed by security systems, which has led to the development of more effective intrusion detection systems capable of recognizing anomalous behaviors. Despite the effectiveness of these systems, research in this field reveals the need for their constant adaptation to changes in the operating environment as the main challenge to face. This adaptation involves greater analytical difficulties, particularly when dealing with threats of evasion through imitation methods. These threats try to hide malicious actions under a statistical pattern that simulates the normal use of the network, so they acquire a greater probability of evading defensive systems. In order to contribute to its mitigation, this article presents an imitation-resistant intrusion detection strategy built on the basis of PAYL sensors. The proposal is based on building network usage models and, from them, analyzing the binary contents of the payload in search of atypical patterns that can show malicious content. Unlike previous proposals, this research overcomes the traditional strengthening through randomization, taking advantage of the similarity of suspicious packages to previously constructed legitimate and evasion models. Its effectiveness was evaluated in 1999 DARPA and 2011 UCM traffic samples, in which it was proven effective in recognizing imitation evasion attacks.
KEYWORDS: abnormalities, evasion attacks, intrusion detection, communication networks
1. INTRODUCCIÓN
Las soluciones iniciales para la detección de intrusos, basadas en el modelado y análisis de entornos de red, aprovecharon originalmente las estrategias de reconocimiento de patrones capaces de descubrir evidencias de ataques previamente conocidos (García-Teodoro, Díaz-Verdejo, Tapiador y Salazar-Hernández, 2015). Pero la rápida proliferación de las tecnologías dio lugar a una cantidad masiva de amenazas antes no vistas, fomentando así el desarrollo de soluciones alternativas capaces de hacer frente a comportamientos maliciosos. Debido a su eficacia en este contexto, el paradigma de detección de intrusos basado en anomalías se ha consolidado como la base de la mayoría de los sistemas de detección de intrusos en la red (NIDS) existentes (Karami, 2018). Este modo de operación típicamente se basa en la construcción de modelos de uso a partir de observaciones legítimas, para luego monitorizar el entorno operativo en busca de discordancias significativas, las cuales son etiquetadas como “sospechosas”. Entre las diferentes publicaciones que han sentado las bases para su desarrollo, nuestra investigación se centra en la detección de intrusiones basada en PAYL (Wang, Cretu y Stolfo, 2005; Wang y Stolfo, 2004). PAYL se basa en el análisis de la carga útil del tráfico en busca de valores estadísticos atípicos dentro de cada contexto de paquetes. A pesar de la evolución de este método, la revisión de la bibliografía revela aun retos a la hora de operar en los escenarios de comunicación (Hadziosmanovic, Simionato, Bolzoni, Zambon y Etalle, 2012; Viswanathan, Tan y Neuman, 2013), como las dificultades al modelar datos extraídos de fuentes heterogéneas, el alto consumo de recursos computacionales, la escasa adaptabilidad a la no estacionariedad (concept drift) y la susceptibilidad a los métodos de evasión basados en aprendizaje automático (machine learning) (Pastrana, Orfila, Tapiador y Peris-López, 2014), siendo este último el principal objetivo de esta investigación. Con el fin de contribuir a su mitigación, este artículo presenta una nueva estrategia de detección de intrusos resistente a imitación, construida sobre la base de la familia de sensores PAYL, que intenta reforzar los avances del método APAP (Maestre Vidal, Sandoval Orozco y García Villalba, 2017a). De manera similar a sus predecesores, la propuesta construye modelos de uso de la red y, a partir de ellos, analiza los contenidos binarios de la carga útil de tráfico en busca de patrones discordantes que revelen contenidos maliciosos. A diferencia de las soluciones anteriores, esta investigación supera el tradicional fortalecimiento mediante la aleatorización, aprovechando la estimación de similitud de paquetes entre modelos legítimos y de evasión previamente construidos. Se ha llevado a cabo una amplia experimentación que demuestra la efectividad de esta solución en la detección de ataques de ofuscación basados en imitación. Este documento está dividido en cinco secciones, siendo la primera de ellas la presente introducción. En la sección 2 se revisan los trabajos relacionados y se describe el modelo de ataque de evasión considerado en esta propuesta. La sección 3 presenta un nuevo sistema de intrusiones en red (NIDS), descendiente de la familia de sensores PAYL y reforzados contra ataques de evasión. La sección 4 trata sobre la experimentación realizada y discute los resultados obtenidos. Por último, en la sección 5 se resumen las conclusiones y líneas de trabajo futuro.
2. ESTADO DEL ARTE
2.1 Detección de intrusiones basado en carga útil
El primer sensor de la familia PAYL fue elaborado por Wang y Stolfo en 2004 (Wang y Stolfo, 2004). Según sus autores, el objetivo inicial era detectar la presencia de un gusano (worm), ya sea a nivel de puerta de enlace o dentro de una red protegida, evitando así su propagación. Aunque el problema a resolver se basaba en el reconocimiento de gusanos, la propuesta también era válida para una amplia gama de intentos de intrusión, lo que inspiró nuevas líneas de investigación. PAYL se caracterizó por construir un modelo de uso legítimo a partir de 256 características interrelacionadas representadas como histogramas de 256 elementos. Estas se extrajeron según la metodología n-gram (Sidorov et al., 2014), como 1-grams, sobre la distribución de frecuencia de bytes presentes en la carga útil. En la etapa de detección, se comparó la similitud entre el modelo normal construido en la etapa de entrenamiento con el modelo generado por el tráfico entrante. Si su divergencia superaba un umbral predefinido, se comunicaba una alerta. Algunos problemas de PAYL inherentes a la construcción de modelos fueron resueltos por una solución impulsada por un mapa autoorganizado (SOM) (Bolzoni Etalle, Hartel y Zambon, 2006). Perdisci, Ariu, Fogla, Giacinto y Lee (2009) propusieron un conjunto de máquinas de vectores de soporte (SVM) para mejorar la precisión del NIDS, siendo abordado de forma similar por modelos ocultos de Markov en Ariu Tronci, y Giacinto (2011). Según esta investigación, las publicaciones anteriores no fueron capaces de reconocer con precisión ataques como cross site scripting y SQL-injection, donde las estadísticas de carga útil no eran significativamente diferentes del tráfico normal. Este problema fue el principal objeto de otro estudio (Swarnkar y Hubballi, 2016) en donde la efectividad del detector aumentó al implementar la clasificación bayesiana multinomial de una clase. Asimismo, estos sensores introdujeron el muestreo aleatorio con fines de mejora del rendimiento (Ariu et al., 2011; Bolzoni et al., 2006), que se convirtió en una estrategia habitual para reducir el impacto de la inspección profunda de paquetes (del inglés, deep packet inspection o DPI) en entornos de comunicación reales.