Phishing web

PHISHING WEB UTILIZANDO TÉCNICAS DE DETECCIÓN DE ANOMALÍAS Y DE CLASIFICACIÓN.

John Faber Marin Arango

María Helena Mejía Salazar

Este trabajo pretende recopilar, mapear y modelar elementos que conducirán al hallazgo de páginas phishing de forma automática, para esto se utiliza la detección de anomalías y la minería de datos como herramientas base, en este sentido, se considera que los patrones existentes en un sitio web hacen posible distinguir las paginas legítimas, la identificación de estos patrones servirán para modelar un método de clasificación exitoso, para tal efecto, se validaran los atributos encontrados en la base de datos “phishing web” que corresponden a patrones de páginas phishing, al mismo tiempo se evaluaran los algoritmos extraídos de la literatura que permiten una mejor clasificación de registros, finalmente, se entrega un modelo con los resultados de mayor precisión, el cual consta de 26 atributos y el algoritmo denominado “Random Tree”.

Palabras clave: minería de datos, phishing web, detección de anomalías.

This work aims to collect, map and model elements that lead to the discovery of pages phishing automatically for this anomaly detection and data mining as fundamental tools used in this sense, it is considered that existing patterns on a site web make it possible to distinguish phishing pages from legitimate, identifying these patterns serve to model a method of successful classification, for this purpose, attributes found to be validated in the database “phishing web” that correspond to patterns of pages phishing while the algorithms from the literature that allow a better classification of records are evaluated, finally, a model with more accurate results, which consists of 26 attributes phishing and algorithm called “Random Tree” is delivered.

Key Words: data mining, phishing web, anomaly detection.

 

 

1

Introducción

 

Phishing web se entiende como la captación de información de forma fraudulenta mediante la suplantación de páginas web legítimas, engañando de esta manera a usuarios incautos e induciéndolos a entregar su información personal como contraseñas de cuentas bancarias o cualquier otro tipo de información importante, este trabajo pretende hallar dichas páginas de forma automática a través de los conceptos de detección de anomalías y minería de datos, en donde los sitios podrán ser identificadas por medio de ciertos patrones que no siguen los lineamientos de una página legitima.

En la práctica los resultados nos permitirán evaluar si un modelo es exitoso, para tal efecto, se necesitan de entradas de calidad que definan apropiadamente una página fraudulenta, pero tal como se observa en la literatura, no existe un consenso sobre los atributos que definen estos sitios, por tal motivo, la preocupación en el campo, es definir cuáles son estos elementos, igualmente,  probar y seleccionar los algoritmos que tienen un mayor porcentaje de precisión en la clasificación de páginas phishing.

“La deteccion de anomalias es el proceso para encontrar patrones en un conjunto de datos cuyo comportamiento no es normal o esperado” (Agrawal & Agrawal, 2015, p.708), las paginas phishing tienen patrones que permiten su identificacion y separacion de paginas letigimas, por tanto, las localiza dentro del campo de los datos anomalos. El modelo que se pretende introducir consta de dos elementos, las entradas que son los registros, atributos y patrones contenidos en la base de datos “phishing web” y el algoritmo de clasificación donde se procesa dicha información.

 

 

2

Planteamiento del problema

 

Phishing web es un peligro que involucra tanto a usuarios como a organizaciones en cuanto a robo de cuentas bancarias, secretos comerciales, ventajas estratégicas y hasta secuestro de información, para solucionar esto, existe la extracción manual de sitios fraudulentos, donde expertos en el tema juzgan la legitimidad de la página a través de la documentación de los ataques históricos, obteniendo ineficiencia y una reacción poco flexible frente al hallazgo de nuevos ataques, por otro lado, se tiene el método heurístico que depende del entrenamiento y las entradas existentes, puesto que en el campo no existen atributos consensuados para determinar y clasificar páginas phishing, cualquier tipo de algoritmo, modelo y diseño tendrá resultados poco afinados.

 

ANTECEDENTES

Base de datos (phishing web)

La base de datos “phishing web”, muestra por cada registro una página web, el último atributo es el que determina si corresponde a una página legitima, los demás, son atributos recolectados a través de la documentación histórica de ataques phishing, cada uno de ellos tiene una regla asociada que según sus características, clasifica una página como: phishing, sospechosa o legitima. La base de datos está dividida en conjuntos de características base que van agrupadas de la siguiente manera: la barra de direcciones, anormalidades, HTML & JavaScript y dominios como se muestra en la figura 1, en consecuencia, cada atributo tiene reglas asociadas que permiten estandarizar la construcción de la base de datos, “estas reglas pueden ser útiles en aplicaciones relacionadas a descubrir páginas phishing basado en sus características” (Mohammad, Thabtah, & McCluskey, 2013, p.159).

Ilustración 1 “Mohammad, M. (2015). Atributos base de datos “phishing web”. Tabla. Recuperado de https://archive.ics.uci.edu/ml/datasets/Phishing+Websites#”.

 

SpoofGuard (2012)

Realiza tareas de procesamiento y análisis de páginas phishing, se enfoca sobre todo a correos electrónicos, funciona como un plugin compatible con Internet Explorer, no es una herramienta para cualquier público, puesto que se debe configurar las reglas para cada característica que tiene implementada la aplicación, por ejemplo el peso de una imagen o la longitud de una URL, donde el usuario debe configurar el peso aceptable o la longitud apropiada según sus conocimientos o la documentación de la herramienta, cuando la herramienta detecta una página que rompe los parámetros es guardada como un posible ataque phishing, este diseño tiene un 78% de probabilidad en acertar en el hallazgo.  . (https://crypto.stanford.edu/SpoofGuard/index.html#description).

Antivirus tradicionales y analisis heuristico

Los antivirus tradicionales que se encuentran de forma comercial se basan en un sistema de lista negra, el equipo que soporta el antivirus coloca las paginas encontradas como phishing en una firma que el cliente descarga para su posterior detección, esto representa un inconveniente de seguridad en cuanto a una detección no oportuna, para mitigar esto los antivirus utilizan un análisis heurístico pero las paginas phishing se basan en ciberataques, es decir, es un conjunto de webs, emails y/o en pocas ocasiones aplicaciones fraudulentas que no permite al análisis heurístico ejecutarse de forma correcta.

WOT (extencion de google chrome)

Es una extencion que alerta y previene sobre sitios malintencionados, aunque su mayor utilizacion es como un sistema de valoracion por parte de los usuarios donde se califica la confiabilidad y privacidad de la pagina, con estos datos se recomienda al usuario usar o salir, puesto que es un sistema de recomendación las paginas nuevas no son apropiadamente estudiadas (https://www.mywot.com/).

Bitdefender

Es un navegador blindado que permite navegar de forma segura al realizar compras. (http://www.bitdefender.com/solutions/safepay.html)

Artificial Intelligente Squared (AI²) MIT

El Instituto tecnológico de Massachussetts ha desarrollado un sistema de inteligencia llamado Artificial Intelligente Squared (AI²) que detecta hasta un 85% de los ataques reduciendo hasta 5 veces los falsos positivos, la aplicación no está enfocada únicamente a phishing. (http://news.mit.edu/2016/ai-system-predicts-85-percent-cyber-attacks-using-input-human-experts-0418).

 

 

 

JUSTIFICACIÓN

Las actuales metodologías, técnicas y modelos utilizados para la identificación de páginas phishing se basan en los casos documentados o en la identificación manual, por tanto, se está a la expectativa de donde, cuando y como se ejecutara el próximo ataque, para mitigar esto, se deben tener claramente definidos patrones, atributos y características que definen los sitios fraudulentos. Con este trabajo, se pretende validar los atributos encontrados en la base de datos “phishing web”, para tal efecto, se ingresaran los valores en los algoritmos explorados, con este proceso, identificaremos tanto los atributos como los algoritmos que permiten  clasificar las páginas web de manera acertada. Finalmente, se crea la propuesta de un modelo compuesto por entradas y algoritmos que permiten un acercamiento al hallazgo automático de phishing.

 

3

Objetivos

OBJETIVO GENERAL

Generar un modelo que permita detectar si determinada web es clasificada binariamente en la categoría de phishing mediante uso de algoritmos de clasificación y de detección de anomalías.

OBJETIVOS ESPECÍFICOS

  • Estudiar y seleccionar algoritmos que permitan detectar datos anómalos
  • Dejar una fuente bibliográfica frente al tema de la detección de anomalías.
  • Generar pruebas para encontrar y categorizar paginas phishing.
  • Evaluar el modelo utilizando validación cruzada para determinar precisión.

 

4

Metodología

 

La metodología empleada para este trabajo fue CRISP-DM y fue aplicada de la siguiente manera.

Entender el entorno

Evaluar, recolectar, mapear y entender el funcionamiento de phishing, detección de anomalías, los métodos de clasificación, métodos de reducción de componentes y minería de datos, para dar un panorama justo que permitió tomar las mejores decisiones en cuanto a la elección de estrategias pertinentes para el caso.

Comprensión y preparación de los datos

Se procede a examinar la integridad de la base de datos concluyendo que no contempla datos faltantes, la información contenida corresponde a atributos propios de una página web y su orientación a la identificación de páginas phishing donde se nota variedad y cantidad, se procede a validar la pertinencia de los atributos con los métodos ACP (Análisis de componentes principales) y jerarquía de árboles, encontrando atributos con mejores resultados en la clasificación. En este mismo sentido, se tiene la necesidad de eliminar atributos que permitan reducir “la maldición de la dimensión”, permitiendo tener un modelo comprensible para el afinamiento de los resultados y la elaboración de mejores diseños. El afinamiento de los resultados fue obtenido ensayando el modelo sin los atributos obtenidos de “menor jerarquía” o menor peso de decisión.

Modelado

Para la realización del modelo final, se probaron los atributos por medio del algoritmo “Random Forest”, que según los resultados clasifica con un mayor índice de éxito las paginas contenidas en la base de datos “phishing web”, obteniendo resultados del 97,3406 %. Utilizando el algoritmo “Random Tree” se seleccionan los atributos con mayor y menor jerarquía, se prueba el modelo eliminando los atributos de menor jerarquía, obteniendo que sin el atributo “Disabling Right Click” se obtiene un porcentaje de éxito mayor. De igual forma se utiliza el algoritmo de selección de atributos PCA o ACP (Analisis de Componentes principales), obteniendo que los atributos con menor rango de jerarquia o menor peso de decisión son: Submitting Information to Email, Status Bar Customization, URL is having @ symbol y Stadistical Reports Based Feature, en consecuencia son eliminados del modelo obteniendo mejores resultados, exceptuando el atributo Stadistical Reports Based Feature que se deja dentro del modelo. Finalmente, se eliminan los atributos “Disabling Right Click”, “Submitting Information to Email”, “Status Bar Customization” y “URL is having @ symbol” obteniendo un 97,431% de presición final en la clasificación de paginas phishing.

Por otro lado, utilizando la misma metodología se obtiene que los atributos con mayor jerarquía o mayor peso de decisión son: “Favicon”, “Using Pop –up Window”, “Using Non-Standard Port”, “Using the IP Address”, “Sub Domain and Multi sub Domains”, “Using URL shortening Services”, “HTTPS”, “Links in tags”, “Number of Links pointing to Page”, “Request URL” y “Website Traffic”, probándolos con el modelo se obtiene un 92,3383 % de precisión en la clasificación de páginas phishing, en este sentido, pueden ser atributos base para la construcción de un modelo posterior.

Evaluación de resultados

Para la validación de resultados, tenemos que en un primer momento se comparan los algoritmos sacados de la literatura, encontrando un mayor resultado en el algoritmo “Random Forest”, cada uno de los algoritmos fue sometido a validación cruzada de 10 iteraciones con lo que se aseguran mejores resultados. Por otro lado, los atributos son evaluados mediante ACP y jerarquía de nodos, validando 26 de los 30 atributos contenidos en la base de datos “phishing web”. Llama la atención que los resultados pedidos en la literatura admiten solo un 0,001 % de error, por lo que el modelo presentado es un primer acercamiento a las necesidades del campo.

5

Análisis de entradas y algoritmos

 

Entradas del algoritmo

Es importante resaltar que los algoritmos tienen ventajas y limitaciones según sea su utilización, por esto deben gozar de entradas pertinentes (atributos claves en la identificación de páginas phishing), “la mayor dificultad del enfoque en detección de firmas, es que tales sistemas requieren típicamente definir todas las firmas de los posibles ataques que un atacante puede lanzar a la red” (Patcha & Park, 2007, p.3449). El factor de éxito del modelo dependerá entonces de las entradas, las cuales deben de abarcar todos los posibles patrones, formas y modalidades en que los ataques son lanzados, creando de esta manera una red segura que permitirá identificar páginas fraudulentas de forma rápida y certera.

Si tenemos un sistema donde los únicos participantes son usuarios comunes, los datos tendrán que tener integridad puesto que el sistema tendrá solo datos conocidos, en el momento que sea intervenido por algún intruso deberá de haber algún cambio. Por lo tanto, cualquier tipo de cambio fuera de los patrones podrá ser detectado, siempre y cuando se conozcan cuáles son los patrones comunes y anómalos, por ejemplo, las operaciones normales de un banco se ven comprometidas por un incremento de operaciones, si tenemos en cuenta que la época del año es de alto uso no tendremos ninguna anomalía, en caso contrario, el aumento es sospechoso y probablemente se está bajo un ataque, en términos de phishing los atributos que se utilizan para su identificación deben cubrir sistema y entorno, un ejemplo de variable de sistema serían los patrones conocidos, tal es el caso de la documentación sobre ataques phishing históricos y una variable de entorno serían los patrones que desconocidos, este tipo de variables son de gran interés debido a que su identificación llevaría a la eliminación definitiva de páginas phishing, para tal efecto, se deben realizar investigaciones y pruebas, por lo que encontrar este tipo de variables no es una tarea sencilla y requiere de recursos. Hay dos enfoques que podemos notar al respecto, uno de ellos tiene que ver con reconocer el sistema con todos sus atributos internos, el otro enfoque tiene que ver con la detección de los atributos externos, en este mismo contexto los algoritmos se ven fuertemente influenciados según la fuente de sus entradas. Las herramientas actuales para detectar datos anómalos se basan en lo conocido, debido a que estudiar los atributos anómalos requiere de tiempo, investigación, dinero y esfuerzo, es por esto, que las herramientas actuales dejan que el usuario interactúe con las opciones para calibrar mejores resultados, la “selección de una zona de interés que sea atípica no trivial, muchos algoritmos definen limites en torno a la normalidad, requieren de la edición de parámetros del usuario ya sea de forma inducida o automática” ( Hodge & Austin, 2004, p.91). El enfoque de este trabajo tiene que ver explícitamente con que el usuario no tenga que realizar algún cambio de parámetros, puesto que no tiene conocimientos sobre el tema, tratar de inducirlo a configurar cualquier característica sería un error que pondría en riesgo su propia seguridad.

Es de notar que para construir un modelo de clasificación, los atributos deben ser precisos en la identificación de lo que se requiere, por tanto, no es de utilidad copiar las características de un modelo exitoso y adecuarlo a otro, puesto que cada enfoque tiene su propia complejidad, enfoque y tema particular, caso contrario sucede con los algoritmos, pueden ser usados por varios modelos, para que un modelo sea considerado efectivo debe contar con atributos clave, llama la atención los resultados que son necesarios para validar por completo un modelo en el tema de seguridad informática admiten un margen de error bajo, “se sugiere que una falsa alarma en 100,000 eventos sea el requerimiento mínimo para que un sistema de detección de intrusos sea efectivo” (Patcha & Park, 2007, p.3466), en esencia, se trata de reducir los resultados erróneos de la matriz de confusión, a este tipo de error se le denomina “falso positivo”, es decir, una página que fue clasificada erróneamente.

Con esta panorama expuesto tenemos que en la literatura de phishing se encuentran varios atributos, para este trabajo los consideraremos como propuestas para las entradas del modelo, aun así, estos atributos no conforman un consenso literario, debido a que se exponen diferentes atributos en cada modelo, herramienta, técnica o diseño explorado, obteniendo un resultado “aceptable” que no llega a ser definitivo. El objeto de este trabajo, es proponer una forma de hallar páginas web fraudulentas de forma automática, para tal efecto, se requieren identificar los patrones distintivos, “los datos anormales son difíciles de obtener o caros en muchos otros campos” (Hodge & Austin, 2004, p.90). La base de datos phishing web, ofrece una variedad de 30 atributos que han sido recogidos en la literatura de casos conocidos, documentados y explorados sobre el tema, la afirmación anterior, no indica que todos los atributos ya se encuentran allí contenidos, ni que todos los atributos sean fiables, por ejemplo, en seguridad informática podemos estar hablando de atributos derivados del lenguaje de programación PHP, seguridad de servidores y complementos de CMS, estos elementos no se han mencionado en la literatura, pero valdría la pena explorarlos en un futuro trabajo.

Un ejemplo de falta de variables es SpoofGuard “este enfoque ignora características importantes que pueden jugar un rol clave en determinar la legitimidad de una página web y se enfoca solo en características estructurales” (Mohammad, Thabtah, & McCluskey , 2012, p. 493), la herramienta cuenta con por lo menos 12 atributos, los cuales son configurables por el usuario, se trata de inducir al usuario en la elección de una configuración certera, en este sentido, se deja un vacío donde el usuario queda expuesto a cometer errores de humanos y sin certeza alguna sobre su seguridad en la red. “Se espera que phishing web sea más elegante en el futuro” (Mohammad, y otros, 2014, p.443), con lo que se prevén ataques refinados y técnicas avanzadas, lo significativo del caso, es generar un modelo que sea flexible o escalable a las posibles patrones que tendrán estos sitios en el futuro, adelantarse a los hechos con la experiencia recogida a través de años y permitir que en la red se acaben los inconvenientes de este tipo.

Elección del algoritmo

La elección de un algoritmo apropiado es un elemento importante a la hora de realizar el modelo que se pretenda encontrar, en este sentido es importante resaltar que el mayor porcentaje de decisión va a depender de las pruebas realizadas, en la literatura se acoplan los modelos según sea el “ensayo y error” obtenido hasta asegurar un modelo consistente con la realidad, “la detección de anomalías usa técnicas de minería de datos para detectar un comportamiento sorpresivo escondido dentro del incremento de datos que cambian los ataques o intrusos” (Agrawal & Agrawal, 2015, p.708). En vía de lo anterior, podemos asegurar que los algoritmos y literatura existentes nos llevan por el camino correcto, por tanto, el espectro donde se debe revisar se adecua a la exploración, para empezar tenemos que nuestro modelo va a ser supervisado, debido a que va a tomar la base de datos “phishing web”, la cual tiene integrado una serie de características ejemplares sacadas de la literatura y reglas de asociación, con lo que se parte de un conocimiento a priori sobre las necesidades del área.

Para escoger el algoritmo indicado en la clasificación de páginas phishing tenemos que conocer las técnicas que se utilizan, algunas de ellas existentes dentro de la detección de anomalías las cuales son “detección de anormalidades basadas en secuencias, detección de anormalidades basadas en sub-secuencias contiguas  y detección de anomalías basados en frecuencia de patrones” (Chandola, Barnejee, Kumar, & IEEE, 2012, p.824), cada una de ellas es particular, por lo que requieren de soluciones particulares,  para el caso de la detección de páginas phishing de forma automática se notan ciertos patrones distintivos. Por lo que se recomienda basarse en los algoritmos basados en frecuencia de patrones (machine learning), es importante resaltar que aunque el autor los llamen de esta manera, lo importante para el lector es que se tenga claro que son patrones encontrados en los atributos de estudio.

En este mismo sentido, las recomendaciones encontradas en la literatura indican que la “selección de un algoritmo que pueda modelar con precisión la distribución de los datos y poner con precisión los puntos de agrupación, clasificación o reconocimiento del tipo de técnica. El algoritmo también debería ser escalable a los conjuntos de datos a ser procesados” (Hodge & Austin, 2004, p.91), en pocas palabras los atributos deben quedar modelados de una forma apropiada, por ello, la elección del tipo de algoritmo debe ser cuidadosa y utilizando los conceptos de minería de datos. Por otro lado, “hay tres enfoques fundamentales en el problema de detección de anomalías, determinar las anomalías que no priorizan el conocimiento de los datos, modelos de anormalidad & normalidad y modelo de solo normalidad y en una escasa cantidad de casos modelo de anormalidad” ( Hodge & Austin, 2004, p.88), se trata de separar lo que es normal para el sistema con lo que es totalmente anormal, en el primero existe documentación o antecedentes de ataques y el segundo donde se tiene la incertidumbre de donde o como se va a atacar, por esto la detección de anomalías en este campo es costoso y requiere de investigación. “Sin embargo, el primario y probablemente más importante reto que necesita ser superado es desarrollar estrategias efectivas que reduzcan el alto grado de alarmas falsas” (Patcha & Park, 2007, p.3466), los atributos podrán adecuarse en el futuro dependiendo de las necesidades y los refinamientos que tengan los ataques, pero si queremos hallar de forma automática hay que disminuir los “falsos positivos”, puesto que la meta como lo veíamos anteriormente es de tener un error sobre 100.000 registros.

A la luz de lo mencionado uno de los elementos importantes es “el método empleado en la extracción de atributos phishing es el método automático” (Mohammad, Thabtah, & McCluskey , 2012, p. 492), con base en esto, se toma la decisión de adecuar todas las pruebas con los algoritmos de clasificación, puesto que se adecuan a un hallazgo automático y a la literatura sobre minería de datos. Veremos entonces otras posibles opciones para los algoritmos que podrían ser exploradas, una de ellos son los métodos basados en la heurística, “la eficiencia de los métodos basados en heurísticas dependen en la selección de un conjuntos de atributos discriminatorios que ayuden a distinguir sitios web phishing de las legítimas” (Mohammad, Thabtah, & McCluskey , 2012, p. 492), teniendo en cuenta que no hay un consenso sobre cuáles son los atributos que determinan claramente una página phishing, resulta arriesgado tomar esta técnica. Por otro lado tenemos las redes neuronales, “Las redes neuronales pueden ser usadas como un enfoque valido y efectivo para predecir paginas phishing“(Mohammad, y otros, 2014, p.447), este enfoque resulta muy eficaz, pero como tiene un enfoque de caja negra, donde los atributos entran y no sabemos que es lo que sucede en su interior hasta que salen sus resultados, sean buenos o malos no tendremos la oportunidad de conocer cuáles y como ayudaron los atributos a identificar una página phishing. Además, “Dentro de las técnicas de minería de datos para identificar datos anómalos tenemos, clustering, clasificación y técnicas de aprendizaje basadas en máquinas” (Agrawal & Agrawal, 2015, p.709), Dentro de los algoritmos de clusterizacion tenemos, k-means, k-medoids, EM clustering, algoritmos de detección de partes aisladas, por otro lado los algoritmos de clasificación están, árbol de clasificación, fuzzy logic, redes bayesianas, algoritmos genéticos, redes neuronales, finalmente los enfoques híbridos, técnicas supervisadas en cascada, la combinación de técnicas supervisadas y no supervisadas. En el caso de las técnicas de clustering como siguen un esquema de datos no supervisados no se tomaran en consideración.

Consideraciones

Teniendo en cuenta lo anteriormente planteado tenemos que “las anomalías no siempre se pueden categorizar como un ataque pero pueden tener un comportamiento anómalo, que previamente no se conocía” (Agrawal & Agrawal, 2015, p.709). Por tanto los algoritmos deben superar este inconveniente, hay que notar que los algoritmos anteriormente mencionados tienen ventajas y desventajas, al ser combinados se sobreponen obteniendo un algoritmo eficaz que hereda las fortalezas y elimina las debilidades, “Los algoritmos híbridos están siendo bastamente usados como los que proveen mejores resultados y superan las falencias de un enfoque sobre el otro“, (Agrawal & Agrawal, 2015, p.712). Es por esto que la mejor forma de obtener resultados es con la utilización de algoritmos híbridos, “los métodos de agregación de modelos en aprendizaje automático combinan varias hipótesis hechas sobre un mismo conjunto de datos con el fin de obtener un modelo predictivo con una mejor performance” (Bourel, 2012, p.19). Pero que tan acertados son estos métodos para la identificación de páginas phishing, “los métodos de agregación son superiores por tres razones, estadística, computacional y de representación” (Alfaro Cortes, Gámez Martínez, & García Rubio, 2015, p.1), está claro que la combinación de estos elementos dará como resultado una mayor precisión debido a que se fortalecen mutuamente.

Algoritmos ideales

La fortaleza de encontrar paginas phishing va a radicar finalmente en las entradas como en el algoritmo usado, profundizando en el tema tenemos algoritmos basados en árboles de decisión, “un árbol de decisión es un conjunto de condiciones o reglas organizadas en una estructura jerárquica, de manera tal que la decisión final se puede determinar siguiendo las condiciones que se cumplen desde la raíz hasta algunas de sus hojas” (Vizcaíno, 2008, p.11). Algunos de los arboles sobresalientes, “J48 o C4.5 es un algoritmo de inducción que genera una estructura de reglas o árbol a partir de subconjuntos de cosas extraídos del conjunto total de datos de “entrenamiento” (Vizcaíno, 2008, p.18), “LMT consiste básicamente en un árbol de decisión con funciones de regresión logística en las hojas” (Vizcaino, 2008, p.20) y “Random Forest se basa en el desarrollo de muchos árboles de clasificación. Para clasificar un objeto desde un vector de entrada, se pone dicho vector bajo cada uno de los árboles del bosque. Cada árbol genera una clasificación, el árbol escoge una clasificación teniendo en cuenta el árbol más votado sobre todos los del bosque” (Vizcaino, 2008, p.22).

 

6

Pruebas

 

Teniendo como referencia las bases teóricas expuesta anteriormente, se realizaron las pruebas con los algoritmos apropiados para el modelo de hallazgo  de páginas phishing de forma  automática, muchos de los cuales son híbridos que aportan fortalezas de la combinación de sus algoritmos base y eliminan sus respectivas debilidades, obteniendo los resultados contenidos en la ilustración 2:

Ilustración 2 Prueba sobre algoritmos

 

Se nota que el algoritmo con mayor resultado es el algoritmo “Random Forest” de árboles de decisión, exploraremos entonces las implicaciones de este algoritmo, se basa en el desarrollo de muchos árboles de clasificación, el algoritmo recibe las entradas de la base de datos “phishing web” en forma de vector, se cortan los atributos generando varias combinaciones, el algoritmo crea varios árboles y cada uno recibe estas combinaciones de entrada, luego, cada árbol vota por la clasificación acertada. Este algoritmo se podría comparar con un cerebro humano, debido a que toma decisiones en ajuste con el resultado final, hay que entender ciertas características del algoritmo, en esencia crea una cantidad random de árboles, los cuales tienen sus propias conclusiones, estadísticas y análisis, en su mayoría corresponden a modelos inexactos, debido a que no se ajustan al resultado final, entre ellos se notan árboles que son certeros al clasificar las paginas phishing, los cuales son usados para tomar la decisión final, podríamos decir que toma una gran cantidad de decisiones internas para finalmente acoplarlas todas en una gran decisión final, este último elemento se hace a través de votación de los árboles acertados. Según Vizcaino, 2008 el desarrollo del árbol se realiza de la siguiente manera:

  • “Si el numero de casos en el conjunto de entrenamiento es N, prueba N casos aleatoriamente, pero con sustitución, de los datos originales. Este será el conjunto de entrenamiento para el desarrollo del árbol.
  • Si hay M variables de entrada, un numero m <<M es especificado para cada modo, m variables son seleccionadas aleatoriamente del conjunto M y la mejor participación de este m es usada para dividir el nodo. El valor de m se mantiene constante durante el crecimiento del bosque.
  • Cada árbol crecer de la forma más extensa posible, sin ningún tipo de poda.”

 

Ilustración 3 “Vizcaino, P. (2008). Esquema del algoritmo Random Forest. Diagrama de flujo. Recuperado de http://www.konradlorenz.edu.co/images/stories/suma_digital_sistemas/2009_01/final_paula_andrea.pdf”

 

En la ilustración 3, se muestra el seudocódigo del algoritmo Radom Forest, básicamente se realiza un corte del conjunto de datos para crear un árbol nuevo, este proceso continúa hasta que todos los nodos sean pasados, luego los árboles seleccionan sus mejores cortes comparados con la realidad para entregar el mejor resultado. Estos resultados son puestos a prueba con validación cruzada mostrada en la ilustración 4, la cual consta de 10 iteraciones (K = 10), en cada una de ellas se toma el 66% de los registros para construir el modelo y el resto para realizar las pruebas, con ellos obtendremos 10 resultados que se promedian para dar un resultado final.

Ilustración 4 Joanneum, F. (2006). Validación de iteraciones con K = 4.Ilustración. Recuperado de https://es.wiki2.org/wiki/Validaci%C3%B3n_cruzada

 

Atributos

Teniendo ya los resultados que validan los algoritmos, procederemos a analizar los atributos de mayor y menor jerarquía, mostrados en la figura 5, cabe resaltar que aunque se obtuvieron resultados elevados o cercanos al 100% no se podrá tener un modelo propicio hasta que el error sea inferior al 0,001% puesto que cuando se habla de seguridad no se admite tener un margen de incertidumbre mayor.

Ilustración 5 Atributos de mayor y menor jerarquía

Como se muestra en la imagen encontramos dos clases de atributos, alto nivel y bajo nivel, esta separación se hizo mediante arboles de decisión, cortando el quinto nivel del árbol de decisión Random Tree y tomando los primeros 4 atributos llamados nodo raíz o nodo padre, luego se tomaron los de bajo nivel, llamadas hojas escogiendo los 4 atributos con más bajo nivel, encontrados en lo más profundo del árbol. Puntualizaremos en algunos de ellos para encontrar los motivos de su alta o baja intervención en la decisión final del árbol.

Using the IP address: Si se está usando una IP en la dirección de la página resulta ser una actividad sospechosa, esto se debe a que los sitios web utilizan nombres como http://www.prueba.com para que los usuarios accedan fácilmente a través de una página indexada en un dominio, pero si se usa la dirección IP esta página conducirá directamente al sitio de procedencia sin ningun tipo de validación por parte de algún servidor DNS, prácticamente se puede estar seguro que si utiliza una IP como dirección se está intentando robar información.

Sub Domain and Multi Sub Domain: Se trata de páginas que tienen más de un dominio, en su mayoría las páginas web tienen solo un dominio para categorizarlas según el tipo de página, tener dos dominios no tiene una razón de fondo, pero tener más de dos dominios tendría un valor de phishing asegurado, puesto que las páginas web legitimas registran un dominio y no hay motivo alguno para tener una cantidad mayor, en este sentido para que sea phishing el solo hecho de tener dos dominios entraría a tener una probabilidad alta de ser phishing.

Using URL shortening Services: Las URL tratan de acortarse para poder parecer menos sospechosas, aunque los links contemporáneos utilizan estos métodos para que el usuario tenga acceso fácil a las páginas web, debemos tener en cuenta que las paginas phishing tratan de ocultar una URL larga.

Links in tags: Al parecer las páginas web utilizan links en el código HTML, normalmente el código utiliza una serie de etiquetas para validar su seguridad, cuando hay páginas que utilizan un exceso de links en su código que lleven a sitios externos podríamos estar hablando de phishing.

Number of links pointing to page: Se define que una página tiene una cantidad considerable de links apuntándola para ser legitima, realmente este concepto requiere de investigación, paginas como Alexa, podrían corroborar este hecho, hay que considerar el lanzamiento de una página nueva, puesto que no tendría links direccionándola y no por esto es phishing.

Domain Registration Length: Se cree que los dominios seguros tienen un plazo de vida largo, mientras que los dominios nuevos que expiran en menos de un año podrán ser phishing, esto dejaría vacíos en cuanto a las páginas nuevas que tienen pocos recursos o que simplemente se implementan para una convocatoria.

Request URL: Se trata de traer objetos externos para la página, se cree que la pagina que tenga todos sus objetos en el dominio será más confiable mientras que las páginas que traigan una buena cantidad de sus objetos de páginas exteriores serán ilegitimas. En tal sentido la construcción de páginas web no tienen una configuración de este tipo, una página web trae elementos externos por cuestiones de espacio, por tanto la construcción de páginas de este tipo no afecta la probabilidad de ser phishing.

Disabling Right Click: Se cree que deshabilitar el clic derecho para que los usuarios no tengan acceso al código fuente de la página es fuente de una página phishing. Aunque es una condición pertinente, hay que reconocer que los usuarios que caen en este tipo de sitios no sabrán identificar o interpretar código, por lo que resulta poco práctico deshabilitar este tipo de elemento.

Cabe resaltar que lo anteriormente expuesto pertenece a validaciones lógicas que no corresponden a estudios profundos, en este sentido se realizó el análisis a partir de los atributos que según el modelo son los de mayor y menor jerarquía, no obstante, queda la duda sobre la valides exacta de cada uno de ellos por lo que se hacen las pruebas correspondientes, eliminando del modelo los atributos encontrados con menor jerarquía obteniendo un resultado de 96,6% de precisión, además de esto se utiliza el método de selección de atributos, PCA o ACP (Análisis de Componentes Principales) obteniendo que los atributos con menor rango de jerarquía son: Submitting Information to Email, Status Bar Customization, URL is having @ symbol y Stadistical Reports Based Feature, con lo que se procede a realizar pruebas mostradas en la figura 6, eliminando estos atributos del modelo y probando que porcentaje de precisión se obtiene.

 

Ilustración 6 Pruebas del modelo sin ciertos atributos

 

Recordemos que la precisión del modelo con todos sus atributos es del 97,3406% por lo que al hacer la comparación encontramos que los atributos “Disabling Right Click”, “Submitting Information to Email”, “Status Bar Customization” y “URL is having @ symbol”, al ser eliminados se obtienen mayores resultados y al eliminar los 4 atributos al mismo tiempo, obtenemos un resultado final de 97,431% de precisión, con lo cual se concluye un total de 26 atributos viables para el modelo con el enfoque de los mayores resultados posibles. Este trabajo brinda la validación de 26 de los 30 atributos presentados en la base de datos “phishin web”, aportando un modelo compuesto por 26 atributos en las entradas y un algoritmo denominado “Random Forest”.

La importancia de lo anteriormente mostrado radica en el aumento porcentual de la precisión del resultado, por otro lado, se reduce “la maldición de la dimensión”, supongamos que tenemos la dimensión x & y dándole ancho y alto a nuestro universo, por ultimo agregamos la dimensión z, aportando profundidad, tendremos el universo conocido, pero si agregamos dimensiones, el concepto se ira volviendo complicado e indescifrable, esto es lo que sucede al tener una cantidad alta de atributos, para nuestro caso, es un modelo de 26 dimensiones, por lo que construir en base a este elemento no resulta ser una tarea fácil, en el futuro se requerirá un estudio fuerte que permita reducir los atributos validados o en su defecto utilizar los resultados en otro tipo métodos, modelos o diseños que permitan calibrar los resultados.

7

Resultados y conclusiones

 

RESULTADOS

Podemos encontrar los siguientes resultados producto del trabajo:

  • Una propuesta de algoritmos propicios para realizar la clasificación de páginas phishing, dando al lector la posibilidad de hacer sus propias pruebas y aportes en el tema.
  • Se deja una fuente bibliográfica que gira en torno a la detección de sitios phishing.
  • Se evalúan los atributos encontrados en la base de datos “phishing web”, encontrando que en su conjunto con el algoritmo “Random Forest” obtienen un 97,3406% de precisión, mientras que, eliminando los atributos “Disabling Right Click”, “Submitting Information to Email”, “Status Bar Customization” y “URL is having @ symbol” de las pruebas realizadas obtenemos un 97,431% de precisión, validando de esta manera 26 de los 30 atributos distintivos de páginas phishing. Al mismo tiempo, se seleccionan 11 atributos que tienen una mayor jerarquía o peso de decisión. Por tanto, se deja para la literatura, un posible consenso sobre los atributos que definen una página phishing.
  • Se entrega un modelo final con 26 entradas correspondientes a atributos de la base de datos “phishing web” y un algoritmo denominado “Random Forest” que brinda un resultado de 97,431% de precisión en cuanto a la identificación de páginas phishing.
  • Se deja el modelo sometido a validación cruzada con lo que se aseguran mejores resultados.

CONCLUSIONES

  • El hallazgo automático de phishing supone adelantarse a los posibles ataques que se manifiestan en la red de una manera segura.
  • El modelo presentado es un acercamiento a las necesidades que presenta el área de phishing web, puesto que explora las entradas y los algoritmos apropiados dando un margen de éxito aproximado al 100%, en este sentido se logra obtener un alto nivel de clasificación. Por tal motivo, posiblemente la clasificación e identificación de páginas phishing se esté aproximando a un modelo
  • Los resultados expuestos en el modelo presentado, requieren obtener resultados con un nivel de precisión mayor, puesto que la necesidad en términos de seguridad deben estar cercanos al 100% con una tolerancia a fallos del 0,001%.
  • La base de datos “phishing web” ofrece una cantidad y variedad de atributos establecidos por toda la literatura, sin embargo, las pruebas realizadas demuestran que de los 30 atributos presentados en la base de datos, 4 no son apropiados, no obstante, se propone un posible consenso sobre los atributos que pueden entrar a definir claramente una página phishing. Por otro lado, la cantidad de atributos consignados resulta ser un inconveniente debido a la “maldición de la dimensión”, puesto que entender y procesar todos estos atributos se traduce en espacio, tiempo y costos.
  • En este trabajo se pone de manifiesto a nivel teórico como a nivel experimental la ganancia que se produce al utilizar técnicas de clasificación como “Random Tree”, aun así, ninguna técnica es superior a las demás de una manera general, puesto que poseen limitaciones y ventajas propias que se acoplan según el modelo con que se esté trabajando.

8

Bibliografía

 

Hodge , V. J., & Austin, J. (2004). A survey of Outlier Detection Methodologies. Kluver Academic Publishers. Printed in the Netherlands , 85-126.

Agrawal , S., & Agrawal, J. (2015). Survey on Anomaly Detection using Data Mining Techniques. ScienceDirect, 708-713.

Alfaro Cortes, E., Gámez Martínez , M., & García Rubio, N. (2015). Una revisión de los metodos de agregación de clasificadores. Castilla : Área de Estadistica. Departamento de Economía y Empresa.

Bitdefender. (3 de Mayo de 1997). Bitdefender. Obtenido de Bitdefender: http://www.bitdefender.com/solutions/safepay.html

Bourel, M. (2012). Método de agregación de modelos y aplicaciones. 19-32.

Chandola, V., Barnejee, A., Kumar, V., & IEEE. (2012). Anomaly Detection for Discrete Sequences: A Survey . IEEE transations on knowlege and data engineering, 823-839.

Chapman , P., Clinton, J., Kerber , R., Khabaza, T., Reinarlz , T., Shearer, C., & Wirth, R. (2000). CRISP-DM 1.0: Step-by-step data mining guide. USA: USA SPSS Inc, CRISP-DM Consortium.

Denning, D. E. (1987). An Intrusion-Detection Model. IEE transactions on software engineering , 222-232.

Joanneum, F. (2006). Cross-Validation Explained. Institute for Genomics and Bioinformatics.

Lichman, M. (26 de Marzo de 2015). Machine Learning Repository. Obtenido de Phishing web: http://archive.ics.uci.edu/ml

Massachusetts Institute of Technology. (16 de Abril de 2016). Massachusetts Institute of Technology. Obtenido de System predicts 85 percent of cyber-attacks using input from human experts: http://news.mit.edu/2016/ai-system-predicts-85-percent-cyber-attacks-using-input-human-experts-0418

Mohammad, R., Thabtah, F., & McCluskey , L. (2012). An Assessment of Features Related to Phishing Websites using an Automated Technique. The 7th International Conference for Internet Technology and Secure transactions , 492-497.

Mohammad, R., Thabtah, F., & McCluskey, L. (2013). Intelligent rule-based phishing websites classification. IET Information Security , 153-160.

Mohammad, Rami, Thatbah, Abdeljaber, F., McCluskey, & T.L. (2014). Predicting Phishing Websites based on self-strugturing neuronal network . Neuronal Computing and Applications , 443-458.

Patcha, A., & Park, J.-M. (2007). An overview of anomaly detection tection techniques: Existing solutions and latest technological trends. ScienseDirect, 3448-3470.

Vidal, T. A. (2014). Bagging y Boosting. Bogota: Bagging y Boosting.

Vizcaino, P. A. (2008). Aplicación de técnicas de inducción de árboles de decisión a problemas de clasificación mediante el uso de weka (Waikato environment for knowledge analysis). Fundacion Universitaria Konrad Lorenz Bogota, http://www.konradlorenz.edu.co/images/stories/suma_digital_sistemas/2009_01/final_paula_andrea.pdf

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s