Esta solución antiphishing en tiempo real para macOS lleva la detección basada en referencias a un nuevo nivel, advirtiendo instantáneamente a los usuarios de Mac que están en un sitio web de phishing.
¿Cuántos sitios web de phishing únicos se publicaron en 2023? El Grupo de Trabajo Antiphishing
La solución que describo a continuación comenzó como un experimento de prueba de concepto en
Las aplicaciones antiphishing actuales utilizan principalmente tres métodos de detección: listas negras, enfoque basado en la clasificación y enfoque basado en referencias. Cada método tiene sus ventajas, pero todos requieren mejoras adicionales. Analicemos cada uno de ellos.
El método de la lista negra es práctico y preciso, pero no puede seguir el ritmo de la rápida propagación de los sitios web de phishing. No siempre es eficaz, ya que es posible que sea necesario añadir nuevos sitios web de phishing a la lista, mientras que los atacantes suelen cambiar las URL para evitar ser detectados.
Por ejemplo, Google Safe Browsing utiliza listas de sitios web de phishing conocidos. Cuando intentas visitar un sitio web, comprueba la dirección con esta lista. Si hay una coincidencia, bloquea el acceso y te advierte sobre el peligro. Pero, ¿qué pasa si el sitio web se publicó hace apenas unos minutos? No estará en la lista y el usuario quedará atrapado.
En este método antiphishing, el aprendizaje automático analiza características de la página web, como las estructuras de URL, el contenido HTML y los metadatos, para determinar si un sitio web es falso o legítimo. La clasificación es excelente para las extensiones del navegador porque aprende de los datos del usuario para detectar nuevos sitios de phishing.
La desventaja es que el aprendizaje automático requiere algoritmos complejos y una gran cantidad de datos de entrenamiento, mientras que los cibercriminales inventan rápidamente nuevas tácticas de ofuscación para evadir la detección. Esto hace que los enfoques basados en la clasificación sean menos precisos y no sean ideales para productos de seguridad independientes.
Algunas de las soluciones basadas en referencias se consideran de última generación. Utilizan la visión artificial para analizar la apariencia de las páginas web y detectar eficazmente los sitios web de phishing. Sin embargo, lo que también vemos es que las soluciones basadas en referencias podrían ser más rápidas si no procesaran los casos de phishing en la nube.
Existe un lapso de tiempo crítico entre la publicación de un sitio web de phishing y el momento en que los sistemas de detección basados en referencias lo agregan a la lista. Queríamos reducir este lapso para garantizar una detección y una respuesta más rápidas.
Nuestro objetivo era advertir a los usuarios de Mac sobre los sitios web de phishing tan pronto como se publican. Para lograrlo, adoptamos el enfoque basado en referencias y lo mejoramos. Eliminamos el procesamiento en la nube y sugerimos realizar todos los cálculos de forma local, con el objetivo de reducir el tiempo de detección. Como beneficio adicional, nuestra solución mejora la privacidad, ya que todos los datos del usuario se procesan en el dispositivo y no van a ningún otro lugar.
Creamos una aplicación nativa para macOS usando Swift, incorporando marcos para
Así es como funciona en pocas palabras.
Cuando estamos en un sitio web, nuestra aplicación intenta comprender el diseño de la página. Identifica elementos clave de la página, como logotipos, campos de entrada y botones. Para esta tarea, elegimos
En este paso, es importante reconocer la ubicación de los elementos en el sitio web, particularmente el área con el logotipo de la marca y los formularios para ingresar credenciales.
A continuación, el prototipo comprueba si el logotipo detectado en el sitio web coincide con alguna marca conocida. Además, compara la URL de la página web con una lista de referencia de sitios web legítimos. Si el sitio web es oficial, omitimos los pasos siguientes.
Por otra parte, nos sorprendió ver cuántos dominios oficiales utilizan las marcas para fines de marketing. No es de extrañar que los sitios web de phishing sean tan eficaces a la hora de engañar a sus víctimas. Por ejemplo, DHL tiene varios dominios oficiales como dhl.com, express.dhl, mydhli.com, dhlsameday.com y dhlexpresscommerce.com.
Clasificamos la página web en dos categorías: si requiere credenciales o no. Este paso verifica si un sitio web de phishing está intentando robar información personal del usuario.
En la captura de pantalla, nuestro prototipo encontró campos de entrada de credenciales, atribuyó la página a DHL y comparó la URL con la lista de dominios oficiales de DHL. El usuario recibió una advertencia de phishing ya que la página no pertenece a DHL.
Nuestro sistema mantiene o supera la precisión de referencia y, sin duda, tiene tiempos de procesamiento más rápidos. Logramos una precisión del 90,8 % en el reconocimiento de logotipos y del 98,1 % en la detección de ingreso de credenciales.
El gráfico a continuación muestra nuestro desempeño en comparación con otras soluciones antiphishing y cómo nos comparamos en precisión, recuperación y tasa de falsos positivos. Con orgullo detectamos el 87,7 % de los intentos de phishing, mientras que mantuvimos la tasa de falsos positivos en un bajo 3,4 %.
Las métricas finales demuestran que nuestra solución funciona sin problemas en segundo plano sin una pérdida de rendimiento notable. El uso de CPU es mínimo: con ocho núcleos en el Mac M1 de Apple, nuestro prototipo utiliza solo el 16 % de la capacidad disponible del 800 %. Este nivel de consumo es similar a tres pestañas activas de Safari o una llamada de Zoom.
Existen muchas aplicaciones antiphishing en el mercado, pero la mayoría procesa datos en servidores externos. Nuestro prototipo muestra que el hardware de los ordenadores modernos nos permite incorporar modelos de aprendizaje automático localmente en el dispositivo. Podemos usarlos para combatir el phishing sin preocuparnos por la velocidad de procesamiento ni por el uso de los recursos del sistema. Afortunadamente, el ecosistema de Apple ofrece marcos y herramientas para la optimización.
Autor: Ivan Petrukha, ingeniero de investigación sénior en MacPaw Technological R&D, ex-Moonlock.