=Paper= {{Paper |id=Vol-1950/paper4 |storemode=property |title=Machine Learning Classifiers to Detect Malicious Websites |pdfUrl=https://ceur-ws.org/Vol-1950/paper4.pdf |volume=Vol-1950 |authors=Christian Urcuqui,Andrés Navarro,José Osorio,Melisa García |dblpUrl=https://dblp.org/rec/conf/ssn/UrcuquiNOG17 }} ==Machine Learning Classifiers to Detect Malicious Websites== https://ceur-ws.org/Vol-1950/paper4.pdf
         Machine Learning Classifiers to Detect Malicious
                           Websites

                          Christian Urcuqui                              Andres Navarro
                     Grupo de Investigación i2t                   Grupo de Investigación i2t
                          Universidad Icesi                             Universidad Icesi
                            Cali, Colombia                               Cali, Colombia
                       ccurcuqui@icesi.edu.co                        anavarro@icesi.edu.co
                           Jose Osorio                                     Melisa Garcı́a
                        Universidad Icesi                                 Universidad Icesi
                         Cali, Colombia                                    Cali, Colombia
                jose.osorio1@correo.icesi.edu.co                  melisa.garcia@correo.icesi.edu.co



                                                                 es un medio que permite tanto a las personas como a
                                                                 las compañı́as realizar distintas tareas, como por ejem-
                        Abstract                                 plo, la difusión de información sensible y el acceso a
     A risk that exists in Internet is the access of             las páginas web. Por otra parte, mientras el uso de las
     websites with malicious content, because they               tecnologı́as se ha incrementado significativamente, la
     might be open doors for cybercrimes or be the               cantidad de vulnerabilidades y de ataques cibernéti-
     mechanism to download files in order to affect              cos también ha aumentado.
     organizations, persons and the environment.                     Actualmente se pueden encontrar distintas técnicas,
     What is more, the attack registers through                  metodologı́as y sistemas para el análisis de páginas ma-
     websites have been part of cyberattacks re-                 liciosas [Urcuqui16]. Un ejemplo de ello es la aplicación
     ports during the last years; this information               del análisis estático, dinámico y la inteligencia artifi-
     includes attacks made by the currently risks                cial para la evaluación de elementos que permitan cla-
     found in new technologies, such as the IoT.                 sificar entre una página benigna y otra de contenido
     Due the computer security complexity, studies               perjudicial para los usuarios. Adicionalmente, también
     have been working in to use machine learning                se han propuesto marcos de trabajo para el análisis de
     algorithms to identify web malicious content.               sitios web [Bartoli10] [Roesch99]. Por otra parte, como
     This article explores the application of a data             sistemas de seguridad se pueden encontrar: Tripware
     analysis process through a framework that in-               [Kim94], Nagios [Aman14], entre otros.
     cludes dynamic, static analysis, updated web-
     sites and a low interaction client honeypot in              2.    Estado del arte
     order to classify a website. Furthermore, it                   Los ataques web pueden ser evaluados a partir de
     evaluates the capacity of the classification of             dos enfoques: una detección basada en firmas y otra
     four machine learning through the information               por anomalı́as.También, se pueden encontrar trabajos
     analyzed.                                                   que utilizan algoritmos de machine learning para la
                                                                 detección de páginas web maliciosas que tienen con-
1.    Introducción                                              tenido que está relacionado a un tipo de ciberataque
                                                                 [Atienza15].
  Internet es una tecnologı́a que conecta alrededor de              Roesh M., explica en su estudio [Roesch99] la utili-
3 mil millones de usuarios en todo el mundo, además,            dad de Snort, un sistema de detección de intrusos que
Copyright c by the paper’s authors. Copying permitted for pri-
                                                                 utiliza un conjunto de reglas almacenadas en su base
vate and academic purposes.                                      de datos para la detección de contenido malicioso en
Proceedings of the Spring School of Networks, Pucón, Chile,     la red.
October 2017, published at http://ceur-ws.org                       Un estudio propone un marco de trabajo (Goldrake)
[Bartoli10] para el análisis de cambios no autorizados      4. Recolección del tráfico web. Cada URL fue ejecu-
sobre páginas web con alto contenido dinámico. Gol-           tada sobre Thug durante 4 segundos con su confi-
drake utiliza una detección por anomalı́as a través de        guración por defecto y en paralelo al proceso nues-
un servicio de monitoreo que no requiere alguna insta-          tro script capturó el tráfico web por medio PyS-
lación sobre la infraestructura del sitio web a analizar.      hark. Finalmente, del proceso se obtuvieron un
Los resultados de la evaluación muestran que el pro-           total de 756 registros de tráfico de red malicioso
totipo tiene un buen desempeño tanto en la tasa de             y 1.743 del benigno.
falsos positivos y falsos negativos.
    Dos estudios han explorado la aplicación de al-         5. Procesamiento de la información. Se desa-
goritmos de machine learning para la identificación            rrolló otra herramienta en Python para el proce-
de páginas web maliciosas a partir de la extracción           samiento del contenido HTTP y las propiedades
de información del análisis estático y dinámico. En         de Whois. Con lo anterior se obtuvieron las si-
[Mohaisen15] se entrenaron y testearon clasificadores a         guientes caracterı́sticas:
través de la información obtenida de los objetos trans-       Capa de aplicación
feridos (TF) en el tráfico HTTP tanto de páginas ma-               (A1): Content length representa el tamaño
lignas y benignas, con un resultado de detección de                 total de caracteres en la URL
93 % en páginas web maliciosas. Por otra parte, en
                                                                     (A2): Number special characters es el total
[Xu13] se realizo un análisis de información obtenida
                                                                     de caracteres especiales que aparecen sobre
en la capa de aplicación y de red, para ello se utilizo
                                                                     la URL (por ejemplo, ?, %, #, &, , ¯)
un honeypot de alta interacción (Capture-HPC ver-
sión 3.0) y el sniffer TCPDUMP; obteniendo que el                   (A3): HTTPHeader content length repre-
clasificador J48 aplicado con todos los datos es mucho               senta al tamaño del contenido de la cabecera
más rápido y eficiente que un enfoque tanto dinámico              HTTP
y estático.                                                         (A4): HTTPHeader server provee informa-
                                                                     ción acerca del servidor de la página web,
3.   Metodologı́a                                                    entre la que se encuentra su nombre, tipo y
                                                                     versión
 1. Dataset de URL. El conjunto de enlaces uti-
    lizado se encuentra conformado por sitios                        (A5): HTTPHeader charset indica la codifi-
    maliciosos obtenidos de las siguientes fuen-                     cación de cada página web (por ejemplo, AN-
    tes:    machinelearning.inginf.units.it/data-and-                SI, ISO-8859-1, UTF8)
    tools/hidden-fraudulent-urls-dataset,     malwa-                 (A6): Whois regDate indica la fecha en que
    redomainlist.com y zeuztacker.abuse.ch; de                       el servidor del sitio web fue registrado
    las anteriores se consiguieron un total de                       (A7): Whois updated date es la última fecha
    185.181 enlaces. Por otra parte, los enla-                       en que el servidor fue actualizado
    ces benignos se extrajeron del repositorio
    https://github.com/faizann24/Using-machine-                      (A8): Whois country indica el paı́s donde se
    learning-to-detect-malicious-URLs.git, del cual se               encuentra el servidor del sitio web
    adquirieron 345.000 URL.                                         (A9): Whois statePro representa a la locali-
                                                                     zación donde fue registrado el sitio web
 2. Verificar el estado de cada página web del dataset
                                                                     (A10): Whois Domain indica el dominio del
    de URL. Para ello se desarrolló una herramienta
                                                                     sitio web
    en Python y con la librerı́a urllib2 se verifico si
    cada URL se encontraba activa o inactiva. Como              Capa de red
    resultado se obtuvo un total de 35.279 enlaces ma-
    liciosos activos (el 19 %) y se seleccionó una mues-            (R1): TCP conversation exhange cuenta la
    tra aleatoria de URL benignas a las cuales se les                cantidad de paquetes que hay entre el ho-
    aplico el proceso, y como resultado se obtuvo una                neypot y el sitio web por el protocolo TCP
    lista de tamaño de 27.912.                                      (R2): Dist remote tcp port es el número to-
                                                                     tal de puertos distintos a los expuestos en
 3. Selección de caracterı́sticas y su generador. El tra-
                                                                     TCP
    bajo parte de las caracterı́sticas estudiadas por
    [Xu13], con la diferencia de que se analizarán los              (R3): Remote ips representa al número di-
    datos generados a partir de un conjunto de URL                   recciones IP conectadas al honeypot
    activas y a las capacidades de un honeypot tipo                  (R4): Pkt without dns es un arreglo de todos
    cliente de baja interacción (Thug).                             los paquetes que no son DNS
          (R5): TCP urg packets representa al número      número de caracteres, por lo tanto, el resultado podrı́a
          de paquetes TCP con la bandera URG               ser muy variable y alterado.
          (R6): Source app packets es el número de pa-        Del tráfico web malicioso y benigno de las páginas
          quetes enviados por el honeypot hacia el ser-    web procesadas a partir de un honeypot de baja in-
          vidor remoto                                     teracción se pueden inferir los siguientes puntos: Para
                                                           R1 y R2 la cantidad de paquetes TCP es más fre-
          (R7): Remote app packets es la variable del
                                                           cuente en la comunicación entre las páginas benignas
          volumen en bytes de la comunicación entre
                                                           y el honeypot (32,79 benignos y 22,47 maliciosos). Por
          el servidor web al honeypot
                                                           otra parte, los datos indican que hubieron mayor can-
          (R8): Duration es el tiempo de duración de      tidad de conexiones IP al honeypot cliente de baja in-
          la página web                                   teracción (R3) cuando se ejecutaron páginas benignas
          (R9): Avg local pkt rate es el promedio de       (10,63 benignos y 2,47 maliciosos), pero la cantidad
          paquetes locales IP por segundo (paquetes        de consultas DNS a servidores remotos (R12) es ma-
          enviados sobre la duración) enviados desde      yor en las benignas y es probable que el resultado sea
          el crawler hacia el servidor web                 influenciado por las capacidades del honeypot (37,99
          (R10): Avg remote pkt rate es el promedio        benignas y 27,66 malignas). Al parecer las páginas ma-
          de paquetes remotos IP por segundo envida-       liciosas tienden a tener un menor tiempo de duración
          dos desde el servidor remoto hacia el crawler    en la comunicación (R8) (3,6 segundos en benignos y
                                                           3 segundos en maliciosos), además, durante este inter-
          (R11): App packets es el número total de
                                                           valo de tiempo la cantidad de paquetes transmitidos
          paquetes IP generados en la consulta de la
                                                           por segundo es mucho más elevada desde el cliente al
          URL, en la cual se incluyen las de DNS
                                                           servidor (R9) (0,8 benignos y 1,9 maliciosos) en con-
          (R12): DNS query times lista de capas DNS        traste con la cantidad de paquetes recibidos desde el
          queries                                          atacante (R10) (44,6 benignos y 14,5 maliciosos), pe-
                                                           ro, tanto en el total paquetes enviados (R5 y R6) (37,9
     Una vez obtenidas las caracterı́sticas menciona-
                                                           benignos y 27,6 maliciosos) y en su tamaño en bytes
     das, se aplicó una regla de normalización en los
                                                           (R7) las páginas maliciosas tienen menores resultados
     datos numéricos con el fin de representarlos en
                                                           comparados a los benignos
     un rango entre 0 y 1. Adicionalmente, los datos
     categóricos fueron simbolizados como binarios.
                                                           Algoritmos de machine learning
 6. Algoritmos de machine learning y su evaluación.          El proceso de entrenamiento y evaluación se divi-
    La tecnologı́a utilizada para el análisis fue R, de   dió en tres partes: primero se evaluaron las capas de
    esta se seleccionaron los clasificadores de machi-     red y de aplicación por separado, en segundo lugar se
    ne learning: J48, Regresión logı́stica (RL), Naive    estudiaron los clasificadores con todas las caracterı́sti-
    Bayes (NB) y Support Vector Machines (SVM).            cas, y finalmente se realizó un testeo sobre las carac-
    Por otra parte, cada algoritmo fue utilizado con       terı́sticas más representativas encontradas en previos
    su configuración por defecto y fue evaluado con       estudios (A1, A4 y R8) [Xu13]. Adicionalmente, el da-
    los resultados en exactitud, el tiempo de entrena-     taset utilizado contó con un tamaño de 967 registros
    miento y el valor Cohen’s kappa.                       y 400 variables (861 observaciones benignas y 106 ma-
                                                           lignas), debido a que el conjunto de datos no se en-
4.   Experimento y resultados                              contraba balanceado, se aplicó una validación cruzada
Análisis de los datos                                     con un k igual a 10. Ahora bien, las caracterı́sticas eva-
                                                           luadas por parte de la capa de aplicación son A1, A2,
   De los datos obtenidos de la capa de aplicación po-
                                                           A3, A4, A5, A8 y A9. Mientras que las evaluadas por
demos deducir lo siguiente: el tamaño promedio de las
                                                           parte de la capa de red son desde R1 a R12.
URL (A1) es más mayor en las maliciosas (benignas
53,31 y malignas 85,45), que el número de caracte-
                                                               Tabla 1: Algoritmos, capa de aplicación y red
res especiales (A2) es mayor en las páginas malicio-
sas (benignas 10,81 y maliciosas 17,20), se presentan
                                                                         Aplicación               Red
mayores indices de servidores maliciosos en Apache y           Alg
                                                                       Exactitud Seg         Exactitud      Seg
NGINX (A4). Por otra parte, gran parte de los datos
                                                              SVM       89,09 %      2        55,16 %       1,9
de localización con Whois para páginas maliciosas se
encuentran en US y CN. Finalmente, hay una mayor               RL       88,43 %     3,5       54,11 %       0,8
proporción de registros en A3 en las páginas malicio-        NB        84,7 %     3,3       55,16 %       0,8
sas, pero existen herramientas que permiten reducir el         J48      90,10 %      4        57,01 %        4
                                                             todas las caracterı́sticas y un 96,05 % para solo tres va-
      Tabla 2: Algoritmos y toda la matriz de datos
                                                             riables, adicionalmente presentamos los resultados de
                                                             distintas combinaciones de caracterı́sticas debido a que
        Algoritmo            Exactitud   Tiempo (s)
                                                             un ataque cibernético puede tener muchas variables y
           SVM                97,41 %        3,38            presentarse en distintos contextos.
     Regresión logı́stica    90,58 %        5,31
       Naive Bayes            10,96 %        2,28
                                                             Referencias
            J48               98,76 %       53,37
                                                             [Urcuqui16] Urcuqui López, C. C., Garcı́a Peña, M.,
                                                                     Osorio Quintero, J. L., and Navarro Cadavid,
   Realizando una predicción de la clasificación por ca-           A. Antidefacement-State of art. Sistemas &
da capa (Tabla 1), se puede concluir que las carac-                  Telemática, 14(39): 9-27, 2016.
terı́sticas de aplicación tienen mayor influencia en los
resultados a diferencia de la capa de red, dos ejem-         [Bartoli10] Bartoli, A., Davanzo, G., and Medvet, E.
plos son el algoritmo J48 que presenta una exactitud                  A framework for large-scale detection of web
del 90,1 % y una respuesta de 4,05 segundos a com-                    site defacements. ACM Transactions on In-
paración del algoritmo de regresión logı́stica que tiene            ternet Technology (TOIT), 10(3), 10. 2010.
un resultado del 88,43 % y un factor de respuesta de
                                                             [Roesch99] Roesch, M. Snort: Lightweight Intrusion
0,87 segundos. Por otra parte, al realizar la evaluación
                                                                     Detection for Networks. In LISA, (Vol. 99,
con todas las caracterı́sticas (Tabla 2) gran parte del
                                                                     No. 1, pp. 229-238). November 1999.
desempeño de los clasificadores incrementó y ası́ mis-
mo su tiempo de respuesta, entre los resultados pode-        [Kim94] Kim, G. H., & Spafford, E. H. The design and
mos resaltar que el J48 aún conserva la mejor clasifi-              implementation of tripwire: A file system in-
cación con un 98,76 %, pero con un tiempo de 53,43                  tegrity checker. In Proceedings of the 2nd
segundos, por otra parte el algoritmo de SVM presen-                 ACM Conference on Computer and Commu-
ta un 97,71 % y con un tiempo mucho menor (3,38                      nications Security, (pp. 18-29). ACM. Novem-
segundos).                                                           ber 1994.

 Tabla 3: Algoritmos y caracterı́sticas A1, A4 y R8          [Aman14] Aman, H., Yamashita, A., Sasaki, T., and
                                                                    Kawahara, M. Multistage Growth Model for
        Algoritmo            Exactitud   Tiempo (s)                 Code Change Events in Open Source Softwa-
           SVM                85,46 %       1,90                    re Development: An Example Using Develop-
     Regresión logı́stica    84,51 %       0,06                    ment of Nagios. In Software Engineering and
       Naive Bayes            85,46 %       0,02                    Advanced Applications (SEAA), 2014 40th
                                                                    EUROMICRO Conference on (pp. 207-212).
            J48               96,05 %       0,01
                                                                    IEEE. August 2014.

   De la Tabla 3 podemos deducir que el algoritmo            [Mohaisen15] Mohaisen, A. Towards automatic and
J48 conserva la mejor exactitud en la clasificación                 lightweight detection and classification of ma-
(96,05 %), con un tiempo de 0,01 segundos y con un in-               licious web contents. In Hot Topics in Web
dicador de kappa del 0,91, este modelo cuenta con una                Systems and Technologies (HotWeb), Third
buena clasificación para un contexto donde el tiempo                IEEE Workshop on (pp. 67-72). IEEE. No-
fuera significativo.                                                 vember 2015.
                                                             [Xu13]   Xu, L., Zhan, Z., Xu, S., and Ye, K. Cross-
5.      Conclusiones y trabajos a futuro                              layer detection of malicious websites. In Pro-
                                                                      ceedings of the third ACM conference on Da-
   Hemos encontrado que gran parte de los honeypots
                                                                      ta and application security and privacy , (pp.
hoy en dı́a presentan una deficiencia en la documen-
                                                                      141-152). ACM. February 2013.
tación y también en sus actualizaciones, por lo tanto,
se propone a trabajo a futuro realizar un estudio que        [Atienza15] Atienza, D., Herrero, Á., and Corchado,
proponga la evaluación de estas herramientas aplica-                 E. Neural analysis of http traffic for web at-
das con la metodologı́a utilizada en este artı́culo. Por              tack detection. In International Joint Confe-
otra parte, concluimos que a través de un honeypot                   rence, (pp. 201-212). Springer, Cham. 2015.
de baja interacción y un conjunto de datos reciente, es
posible identificar una página web maliciosa con un re-
sultado de exactitud del algoritmo J48 del 98,76 % con