Actas de las XV Jornadas de Ingeniería Telemática (JITEL 2021), A Coruña (España), 27-29 de octubre de 2021. This work is licensed under a Creative Commons 4.0 International License (CC BY-NC-ND 4.0) Generaci´ on autom´ atica de firmas para detecci´ on de ciberataques basados en URI R. Estepa Alonso∗, J. Diaz-Verdejo†, A. Estepa Alonso∗, G. Madinabeitia∗, F. J. Mu˜ noz∗ ∗Dpt. Ingenier´ ıa Telem´ atica, Escuela Superior de Ingenieros, Univ. de Sevilla C/ Camino de los Descubrimientos s/n, 41092 Sevilla (Spain) E-mail: {rafa,aestepa,german,javi }@trajano.us.es †Dpt. Teor´ ıa de Se˜ nal, Telem´ atica y Comunicaciones, CITIC, Univ. de Granada C/ Periodista Daniel Saucedo Aranda, s/n, 18071 Granada (Spain) E-mail:
[email protected] La mayor parte de los sistemas de detecci´ on de intrusiones (IDS) operativos se basan en el uso de firmas que permiten identificar ataques conocidos. La dependencia de estos IDS con la actualizaci´ on de las bases de datos de firmas constituye una de sus mayores limitaciones, siendo de inter´ es el desarrollo de sistemas que posibiliten la generaci´ on autom´ atica o supervisada de firmas. En el presente trabajo se eval´ ua experimentalmente un sistema para la generaci´ on de firmas a partir de un IDS basado en anomal´ ıas propuesto en un trabajo previo. Tambi´ en se desarrolla y eval´ ua un sistema automatizado para la selecci´ on del punto de operaci´ on ´ optimo del generador de firmas. Los resultados preliminares de este trabajo en curso muestran que se pueden generar firmas nuevas que aumenten la capacidad de detecci´ on del IDS basados en firmas o patrones conocidos (SIDS) controlando el n´ umero de falsos positivos introducidos. Palabras Clave—Cybersecurity, Intrusion Detection, Automatic signatures generation, Web-based attacks I. INTRODUCCI ´ ON La necesidad de proteger los equipos y redes de ciberamenzas es cada vez m´ as notoria y relevante. Uno de los elementos clave en la seguridad de los sistemas y redes son los denominados sistemas de detecci´ on de intrusiones (IDS, del ingl´ es Intrusion Detection Systems) [1], que emiten alertas a partir de la observaci´ on de los diversos eventos que ocurren en la red o los sistemas a proteger. Los IDS generan alertas seg´ un dos modos de operaci´ on b´ asicos: basado en firmas (SIDS, del ingl´ es Signature-based IDS), que identifican un patr´ on malicioso preestablecido denominado firma, como por ejemplo una secuencia dentro de la URI de una petici´ on HTTP; o basados en anomal´ ıas (AIDS, del ingl´ es Anomaly-based IDS), que identificaci´ on de comportamientos an´ omalos, dando lugar a los IDS. Los SIDS son sistemas muy extendidos en la actualidad, dado que permiten detectar ataques ya conocidos con una fiabilidad y coste computacional razonables. Como es l´ ogico, el adecuado comportamiento de los SIDS depende fuertemente de la disponibilidad y calidad de las firmas, que deben ser generadas y actualizadas peri´ odicamente. Por tanto, estos sistemas resultan inadecuados para detectar ataques novedosos, o de d´ ıa cero (0-day), por no existir firmas para los mismos. Sin embargo, ´ estos representan un porcentaje importante del total de ataques y, sobre todo, generan un fuerte impacto. La soluci´ on pasar´ ıa por la generaci´ on de las firmas correspondientes, pero este problema es recursivo, ya que para poder generar la firma es necesario detectar previamente el ataque, por lo que debe utilizarse alg´ un procedimiento alternativo. De ah´ ı el inter´ es de desarrollar sistemas que sean capaces de generar las firmas de forma autom´ atica o semiautom´ atica. Como hemos mencionado anteriormente, los AIDS [1] constituyen una aproximaci´ on diferente a la detecci´ on de ataques y son potencialmente capaces de detectar ataques 0-day. Su rendimiento depender´ a de su capacidad de aprender y discriminar el comportamiento normal/an´ omalo. En entornos IT, donde en ocasiones no hay un patr´ on claro de comportamiento del usuario, esta tarea se adivina compleja, lo que propicia la aparici´ on de numerosos falsos positivos (FP), siendo ´ esta una de las mayores limitaciones de los AIDS en la actualidad. Son m´ ultiples los trabajos en los que se ha propuesto el uso de AIDS para identificar ataques y, a partir de ellos, generar las firmas correspondientes para los SIDS [2]. Para ello, se necesita no s´ olo determinar si se est´ a desarrollando un ataque, sino tambi´ en identificar los elementos significativos del mismo, que ser´ an los asociados a la firma. El inter´ es de esta aproximaci´ on reside en la mayor facilidad de uso e implementaci´ on de los SIDS, y en la posible capacidad de generalizaci´ on de las firmas 192
Estepa, D´ ıaz-Verdejo, Estepa, 2021. as´ ı obtenidas, eliminando o reduciendo significativamente la intervenci´ on de los expertos. Su utilidad, no obstante, vendr´ ıa limitada por las tasas de FP a las que podr´ ıan dar lugar estas nuevas firmas. En un trabajo previo [3] se ha propuesto un sistema autom´ atico para la generaci´ on de firmas en el contexto de ataques basados en URI (v´ ease Secci´ on II). El AIDS subyacente se basa en [4], que modela las URI en base a una aproximaci´ on markoviana que permite identificar los elementos asociados en mayor medida a la clasificaci´ on como ataque y, consecuentemente, proponer firmas para los mismos. Los resultados obtenidos evidencian la posibilidad de conseguir una generaci´ on de firmas adecuada, pero son fuertemente dependientes del punto de operaci´ on del sistema, que es ajustado de forma manual en un procedimiento que puede resultar complejo. En el presente trabajo en curso pretendemos explorar las capacidades de dicha propuesta en un escenario operativo real que incluye varios servidores que cooperan para establecer las nuevas firmas. Para ello se abordan propuestas y mejoras en tres aspectos relevantes. En primer lugar, se plantea un sistema autom´ atico de selecci´ on del punto de operaci´ on ´ optimo para la generaci´ on de las firmas, analizando el impacto de los FP sobre las reglas generadas y, consecuentemente, sobre el uso de las mismas en el escenario real. Por otra parte, se plantean diversas t´ ecnicas para la selecci´ on y agrupaci´ on de las firmas a partir de los segmentos identificados como asociados a ataques. Finalmente, se analizar´ a la capacidad de generalizaci´ on de las firmas a partir de su distribuci´ on a otros servicios diferentes a aquel en el que se ha inferido. El objetivo final es el desarrollo de un sistema global de generaci´ on y distribuci´ on de firmas para ataques basados en URI. Este trabajo se est´ a llevando a cabo en el ´ ambito de un proyecto de colaboraci´ on con una empresa andaluza del sector de SmarCities, que proporcionar´ a datos reales obtenidos durante operaci´ on. El presente art´ ıculo se estructura como sigue. En primer lugar, en el Apartado II se presentar´ a brevemente la t´ ecnica SSM y el trabajo previo en el que se basa la presente propuesta. El Apartado III describe la arquitectura general del sistema propuesto y aborda el problema del ajuste autom´ atico del punto de operaci´ on, present´ andose el escenario utilizado para estas pruebas y los resultados experimentales obtenidos en el Apartado IV. Finalmente, en el Apartado V se presentan las conclusiones y se esbozan los desarrollos y resultados preliminares relativos a la agrupaci´ on de firmas y su distribuci´ on. II. GENERACI ´ ON DE FIRMAS A continuaci´ on, describiremos brevemente los fundamentos de la t´ ecnica utilizada y su aplicaci´ on a la generaci´ on de firmas de ataques [3]. A. Detecci´ on de anomal´ ıas en URI La t´ ecnica utiliza un aut´ omata de estados finitos probabil´ ıstico para representar las instancias de un protocolo con estructura sint´ actica en sus cargas ´ utiles (en nuestro caso las URI de HTTP) mediante su segmentaci´ on en palabras. De acuerdo al est´ andar RFC 3986, un URI, Uk, debe presentar una estructura sint´ actica de la forma: ”http://”host[”:”port][ abs path[”?”query]] siendo posible su segmentaci´ on, a partir de los delimitadores est´ andar, en un conjunto de Lpalabras, wk= wk 1, wk 2,· · · , wk L, asociadas a cada uno de los campos (en nuestro caso s´ olo son de inter´ es los campos abs path yquery, formada por los pares atributo, valor). A partir de un conjunto de URI, es posible establecer un diccionario,D={(wi, fi)}, compuesto por todas las palabras observadas, wiy su frecuencia relativa de observaci´ on, fi. De esta forma, dado un URI de entrada Ukcompuesto por una secuencia de palabras, wky un diccionario previamente estimado, es posible asignar un ´ ındice de anomal´ ıa,As(Uk), a partir de la probabilidad estimada para cada una de dichas palabras [5]: As(Uk) = −log 1 L L X i=1 log(fk i)!(1) Este ´ ındice ser´ a positivo y tanto mayor cuanto menor sea la probabilidad de la secuencia observada. De esta forma, se podr´ a clasificar un URI como normal o an´ omalo de acuerdo al umbral de detecci´ on,θ, como Clase(U) = Normal si As(U)< θ Anomalo si As(U)≥θ(2) Por otra parte, esta aproximaci´ on plantea un problema de entrenamiento insuficiente relacionado con la posible aparici´ on de palabras que no han sido observadas durante el proceso de entrenamiento y que, en consecuencia, tendr´ ıan asociada una probabilidad nula. Para solucionarlo se establece una probabilidad fija m´ ınima para cualquier palabra observada, denominada probabilidad de fuera de vocabulario,pOOV . B. Generaci´ on de firmas El modelado anteriormente descrito permite evaluar la probabilidad de normalidad de las distintas palabras que componen la URI, por lo que, dada una URI que se determina an´ omala (ataque), es posible identificar y seleccionar los segmentos que contribuyen en mayor proporci´ on a dicha clasificaci´ on. De esta forma, se delimitan y extraen las palabras o secuencias de palabras que superan el denominado umbral de generaci´ on de firma para un segmento,φ, incluyendo los delimitadores correspondientes. Cada uno de estos fragmentos ser´ a candidato a formar parte de una nueva firma. Por otra parte, el propio ´ ındice de anomal´ ıa de una URI es indicativo del grado de normalidad de la misma, por lo que, para minimizar el posible impacto de los FP, se establece un umbral de generaci´ on de firmas,Ψ, de tal forma que ´ unicamente las URI cuyo ´ ındice de anomal´ ıa supere dicho umbral ser´ an consideradas en el proceso de generaci´ on de firmas. En consecuencia, dado un URI, U, se determina que un segmento tes an´ omalo y se incorpora a una firma si se cumple (At s(U)≥φ)∧(As(U)≥Ψ), con Ψ> θ (3) This work is licensed under a Creative Commons 4.0 International License (CC BY-NC-ND 4.0) 193
Generaci´ on autom´ atica de firmas para detecci´ on de ciberataques basados en URI Fig. 1. Funcionamiento del sistema propuesto siendo At s(U)el ´ ındice de anomal´ ıa del segmento. La operaci´ on del sistema propuesto en este trabajo se esquematiza en la Fig. 1. Por un lado, cada uno de los AIDS desplegados y entrenados con su tr´ afico local eval´ uan las URI de entrada y, para aquellas suficientemente an´ omalas, extraen los segmentos candidatos a firmas, que ser´ an agrupados convenientemente en una nueva firma integrada en un repositorio local de firmas. Como se puede observar, a partir de los modelos entrenados y ajustados en varios servidores se infieren repositorios de firmas locales que son agrupadas y analizadas para extraer un repositorio global con firmas v´ alidas para todos los servidores. La generaci´ on de un repositorio global cooperativo de firmas ser´ a abordado en las siguientes fases del proyecto en curso, centr´ andose este trabajo en el sistema generador de firmas. III. AJUSTE DE UMBRALES DE LA GENERACI ´ ON DE FIRMAS Para la extracci´ on de las firmas locales es necesario ajustar experimentalmente el sistema para seleccionar el punto ´ optimo de operaci´ on, que influir´ a en la tasas finales de detecci´ on y de falsos positivos. Consecuentemente, es necesario ajustar 3 par´ ametros: θ, φ yΨ, ya que el valor de pOOV depende del conjunto de entrenamiento. As´ ı, el valor del umbral de generaci´ on de firma para un segmento, φ, debe ser inferior al de la probabilidad m´ ınima registrada en el diccionario, esto es, φ < min({fi}), para asegurar que las palabras que constituyen la firma no han sido observadas previamente. As´ ı mismo, parece l´ ogico pensar que las URI candidatas a generaci´ on de firmas sean un subconjunto de aquellas detectadas como an´ omalas, lo que exige que se cumpla θ < Ψ. Tambi´ en resulta coherente que, para controlar el n´ umero de FP que pueden dar lugar a firmas, haya que ajustar el valor de Ψ. A continuaci´ on, proponemos un procedimiento de ajuste del umbral de generaci´ on de firmas en el que acotamos la tasa m´ axima de FP aceptada. Este algoritmo parte de la suposici´ on de que la tasa de FP objetivo que tengamos en el conjunto de entrenamiento ser´ a similar a la que obtendremos durante la explotaci´ on del sistema. A. Ajuste autom´ atico del valor de Ψ El objetivo del mecanismo de ajuste que se propone en este trabajo es explorar un espacio de b´ usqueda de valores para Ψa fin de que la tasa de FP conseguida con las firmas Fig. 2. Casos para el histograma de As. no sobrepase un umbral determinado por el operador del servicio. En primer lugar, podemos determinar cotas para el valor de Ψ, umbral de generaci´ on de firma, a la vista de los ´ ındices de anomal´ ıa registrados durante la fase de entrenamiento. Dado un dataset de entrenamiento con tr´ afico limpio (TL) y otro con tr´ afico de ataques (TA), es de esperar que el histograma de los ´ ındices de anomal´ ıa responda a una de las dos situaciones mostradas en la Fig. 2. En el primer caso (parte superior), que corresponder´ ıa a la situaci´ on ideal, el tr´ afico limpio y el de ataque presentan una gran diferencia en sus diccionarios, resultando que max(As(T L)) < min(As(T A)), lo que implica que si elegimos Ψ> max(As(T L)) no tendremos ning´ un FP en el entrenamiento y detectaremos todos los ataques. Desafortunadamente, el segundo caso es el m´ as habitual e implica que max(As(T L)) > min(As(T A)), por lo que valores de Ψen el rango [min(As(T A)), max(As(T L))] generar´ an una tasa de falsos positivos en el entrenamiento. As´ ı pues, el ajuste de Ψse realizar´ a durante el entrenamiento, evaluando iterativamente la tasa de FP encontrada en el TL cuando se utilizan las firmas generadas1para valores crecientes de Ψ. Esto se puede hacer con un algoritmo que parte de un valor inicial Ψ = min(As(T A)), que generar´ a la tasa de FP m´ axima posible, que se computar´ a a partir de TL. Si dicha tasa es menor que la tasa de FP objetivo, el algoritmo se detendr´ a, en otro caso, se incrementar´ a el valor de Ψy se volver´ a a evaluar en una nueva iteraci´ on. El resultado final ser´ a el valor de Ψque cumple que la tasa de FP que introducen las nuevas firmas es menor que el valor objetivo. IV. RESULTADOS EXPERIMENTALES PRELIMINARES A continuaci´ on, se presentan los resultados experimentales obtenidos relativos a la capacidad de detecci´ on y 1A tal efecto se ha desarrollado una sencilla herramienta SIDS denominada InspectorLog, que permite aplicar las firmas generadas a las URI. This work is licensed under a Creative Commons 4.0 International License (CC BY-NC-ND 4.0) 194
Estepa, D´ ıaz-Verdejo, Estepa, 2021. Fig. 3. Capacidad de detecci´ on de las firmas en diversos puntos de operaci´ on del AIDS. el ajuste de umbrales. El valor de φse ha ajustado a 0,9·min({fi}), cumpliendo as´ ı la restricci´ on de que un segmento an´ omalo no puede haber sido visto en el tr´ afico limpio. Para la experimentaci´ on se ha utilizado: •Trafico limpio (TL): proveniente de 1 semana de tr´ afico real del servicio ProxyWeb de una empresa, que denominaremos H, que cuenta con 289 505 peticiones GET. Se han realizado 4 particiones para entrenamiento, test y validaci´ on. •Tr´ afico de ataques (TA): se han utilizado dos dataset con 833 y 1 177 URI de ataques, respectivamente, generadas a partir de las vulnerabilidades encontradas en la base de datos CVE (Common Vulnerabilities and Exposures) aplicables a servidores HTTP del a˜ no 2018 [5]. El primer experimento realizado utiliza el algoritmo de ajuste de Ψpropuesto anteriormente para obtener firmas con distintos umbrales de FP tolerados en el AIDS: 0%, 0,01%, 0,05% y 0,09%. Para ello se entrena el sistema con una de las cuatro particiones y se eval´ ua con el resto, promediando los resultados seg´ un un esquema leaveone-out. Los resultados finales obtenidos para las firmas generadas con los distintos dataset de ataques se muestran en la Fig. 3. En esta figura se puede observar que, a mayor FP objetivo mayor capacidad de detecci´ on de las firmas generadas. Con respecto a los FP detectados, siempre fueron inferiores al FP objetivo del algoritmo, tomando los valores de 0%, 0.001%, 0.007%, 0.023% para los FP objetivos 0%, 0.01%, 0.05% y 0.09% respectivamente. Estos resultados avalan la hip´ otesis de que la tasa de FP generados por el AIDS ser´ a siempre superior a la de las firmas obtenidas. El siguiente experimento realizado consisti´ o en explorar los l´ ımites del sistema cuando se establece la tasa de FP a 0, para observar la capacidad m´ axima de detecci´ on obtenida. En la Tabla I se pueden observar los resultados para el dataset de 833 ataques. Vemos que entrenando con el tr´ afico limpio H1 (primera partici´ on) tan s´ olo somos capaces de detectar un 33,73% de los ataques, que generar´ ıan 33 firmas. Las distintas particiones de TL empleadas (H1-H4) dan lugar a diferentes valores. Para cada experimento se muestra el valor ´ optimo de Tabla I RESULTADOS DE GENERACI ´ ON DE FIRMAS CON DIFERENTES PARTICIONES. Exp Ψrango CD(%) FP(%) N. Firmas H1.833 16.31 17.36 33,73 0 33 H2.833 16.27 17.31 33,73 0 66 H3.833 16.83 17.33 2 0 20 H4.833 16.29 17.33 33,7 0 33 Ψdeterminado por el algoritmo, el m´ aximo valor que podr´ ıa tomar (columna rango), la capacidad de detecci´ on de ataques, los falsos positivos encontrados y el n´ umero de firmas generadas. V. CONCLUSIONES La generaci´ on automatizada permite mejorar la capacidad de detecci´ on de los SIDS. En este art´ ıculo se ha evaluado el rendimiento de un sistema generador de firmas en el contexto de ataques en la URI as´ ı como un m´ etodo para el ajuste de umbrales y reducci´ on de FP. Tambi´ en se han presentado algunos resultados preliminares dentro de los l´ ımites de espacio asociados al tipo de trabajo (en curso). Los resultados muestran la capacidad de detecci´ on de ataques novedosos que no eran detectados mediante las firmas disponibles sin incrementar la tasa de FP del SIDS. Actualmente estamos trabajando con datasets de mayor tama˜ no que permiten seguir desarrollando y mejorando el sistema, as´ ı como en el uso cruzado de las firmas para estudiar la capacidad de generalizaci´ on. AGRADECIMIENTOS Este trabajo ha sido parcialmente financiado por el proyecto 2020/00000172 dentro del programa de Proyectos singulares de actuaciones singulares de transferencia en los CEI en las ´ areas RIS3 de la Junta de Andaluc´ ıa. REFERENCIAS [1] N. Moustafa, J. Hu, J. Slay, ”A holistic review of Network Anomaly Detection Systems: A comprehensive survey”, Journal of Network and Computer Applications,(128)33?55, 2019. [2] S. Kaur, M. Singh, ”Automatic attack signature generation systems: A review”, IEEE Secur. Priv., (11)54–61, 2013. [3] P. Garcia-Teodoro, J.E. Diaz-Verdejo, J. Tapiador, R. SalazarHernandez, ”Automatic generation of HTTP intrusion signatures by selective identification of anomalies”, Computers and Security, (55)159–174, 2015. [4] J. M. Est´ evez-Tapiador, P. Garc´ ıa-Teodoro, J. E. D´ ıaz-Verdejo, ”Detection of web-based attacks through Markovian protocol parsing”, Proc. IEEE Symp. on Computers and Communications, 2005. [5] R. Estepa, J.E. D´ ıaz-Verdejo, A. Estepa, G. Madinabeitia, ”How Much Training Data Is Enough? A Case Study for HTTP AnomalyBased Intrusion Detection”, IEEE Access, 8:44410–44425, 2020. This work is licensed under a Creative Commons 4.0 International License (CC BY-NC-ND 4.0) 195