La visión por computadora puede ayudar a detectar amenazas cibernéticas con una precisión sorprendente
septiembre 18, 2021
Este artículo es parte de nuestras revisiones de artículos de investigación de IA, una serie de artículos que exploran los últimos hallazgos en inteligencia artificial.
El creciente interés de la última década en el aprendizaje profundo ha sido provocado por la capacidad probada de las redes neuronales en tareas de visión por computadora. Si entrena una red neuronal con suficientes fotos etiquetadas de gatos y perros, podrá encontrar patrones recurrentes en cada categoría y categorizar las imágenes invisibles con una precisión decente.
¿Qué más se puede hacer con un clasificador de imágenes?
En 2019, un grupo de investigadores de ciberseguridad se preguntó si podrían tratar la detección de amenazas a la seguridad como un problema de clasificación de imágenes. Su intuición resultó bien y pudieron crear un modelo de aprendizaje automático capaz de detectar malware a partir de imágenes creadas a partir del contenido de los archivos de la aplicación. Un año después, se utilizó la misma técnica para desarrollar un sistema de aprendizaje automático que detecta sitios web de phishing.
La combinación de visualización binaria y aprendizaje automático es una técnica poderosa que puede proporcionar nuevas soluciones a problemas antiguos. Se muestra prometedor en ciberseguridad, pero también podría aplicarse a otras áreas.
Detecte malware con aprendizaje profundo
La forma tradicional de detectar malware es escanear archivos en busca de firmas conocidas de cargas útiles maliciosas. Los detectores de malware mantienen una base de datos de definiciones de virus que incluyen secuencias de código de operación o fragmentos de código, y escanean archivos nuevos para detectar la presencia de esas firmas. Desafortunadamente, los desarrolladores de malware pueden eludir fácilmente estos métodos de detección mediante el uso de diversas técnicas, como la ocultación de su código o el uso de técnicas de polimorfismo para mutar su código en tiempo de ejecución.
Las herramientas de análisis dinámico intentan detectar comportamientos maliciosos en tiempo de ejecución, pero son lentas y requieren que configure un entorno de prueba para detectar programas sospechosos.
En los últimos años, los investigadores también han probado una variedad de técnicas de aprendizaje automático para detectar malware. Estos modelos de AA han logrado avanzar en algunos de los desafíos de la detección de malware, incluida la ofuscación del código. Pero presentan nuevos desafíos, incluida la necesidad de aprender demasiadas funciones y un entorno virtual para analizar muestras de destino.
La visualización binaria puede redefinir la detección de malware convirtiéndolo en un problema de visión por computadora. En esta metodología, los archivos se ejecutan mediante algoritmos que transforman valores binarios y ASCII en códigos de color.
En un artículo publicado en 2019, investigadores de la Universidad de Plymouth y la Universidad del Peloponeso demostraron que cuando se visualizan archivos benignos y maliciosos con este método, surgen nuevos patrones que separan los archivos maliciosos de los archivos seguros. Estas diferencias habrían pasado desapercibidas con los métodos tradicionales de detección de malware.
Según el periódico, «los archivos maliciosos suelen incluir caracteres ASCII de diferentes categorías, presentando una imagen colorida, mientras que los archivos benignos tienen una imagen y distribución de valores más nítidas».
Cuando tiene tales patrones detectables, puede entrenar una red neuronal artificial para distinguir entre archivos maliciosos y archivos seguros. Los investigadores crearon un conjunto de datos de archivos binarios visualizados que incluía archivos tanto benignos como maliciosos. El conjunto de datos contenía una variedad de cargas útiles maliciosas (virus, gusanos, troyanos, rootkits, etc.) y tipos de archivos (.exe, .doc, .pdf, .txt, etc.).
Luego, los investigadores utilizaron las imágenes para entrenar una red neuronal de clasificación. La arquitectura que utilizaron es la red neuronal incremental autoorganizada (SOINN), que es rápida y particularmente eficiente para tratar con datos ruidosos. También utilizaron una técnica de preprocesamiento de imágenes para reducir las imágenes binarias a vectores de características de 1024 dimensiones, lo que facilita y optimiza el entrenamiento de los patrones en los datos de entrada.
La red neuronal resultante fue lo suficientemente eficiente como para calcular un conjunto de datos de entrenamiento con 4000 muestras en 15 segundos en una estación de trabajo personal con un procesador Intel Core i5.
Los experimentos de los investigadores mostraron que el modelo de aprendizaje profundo fue particularmente efectivo para detectar malware en archivos .doc y .pdf, que son el medio preferido para los ataques de ransomware. Los investigadores sugirieron que el rendimiento del modelo se puede mejorar si se ajusta para tomar el tipo de archivo como una de sus dimensiones de aprendizaje. En general, el algoritmo logró una tasa de detección promedio de alrededor del 74%.
Detecte sitios web de phishing con aprendizaje profundo
Los ataques de phishing se están convirtiendo en un problema creciente para organizaciones e individuos. Muchos ataques de phishing engañan a las víctimas para que hagan clic en un enlace a un sitio web malicioso que se anuncia a sí mismo como un servicio legítimo, donde terminan ingresando información confidencial como credenciales o información financiera.
Los enfoques tradicionales para detectar sitios web de phishing giran en torno a la inclusión de dominios maliciosos en listas negras o dominios seguros en listas blancas. El primer método pasa por alto nuevos sitios web de phishing hasta que alguien es víctima, y el segundo es demasiado restrictivo y requiere un esfuerzo considerable para proporcionar acceso a todos los dominios seguros.
Otros métodos de detección se basan en la heurística. Estos métodos son más precisos que las listas negras, pero aún no proporcionan una detección óptima.
En 2020, un grupo de investigadores de la Universidad de Plymouth y la Universidad de Portsmouth utilizó la visualización binaria y el aprendizaje profundo para desarrollar un nuevo método de detección de sitios web de phishing.
La técnica utiliza bibliotecas de visualización binaria para transformar el código fuente y el marcado del sitio web en valores de color.
Como es el caso de los archivos de aplicaciones benignos y maliciosos, cuando se visualizan sitios web, surgen patrones únicos que separan los sitios web seguros de los maliciosos. Los investigadores escriben: “El sitio legítimo tiene un valor RGB más detallado porque se construiría a partir de caracteres adicionales de licencias, hipervínculos y formularios de entrada de datos detallados.
Mientras que la contraparte de phishing normalmente contiene una única o ninguna referencia CSS, varias imágenes en lugar de formularios y un único formulario de inicio de sesión sin scripts de seguridad. Esto crearía una cadena de entrada de datos más pequeña al rayar.
El siguiente ejemplo muestra la representación visual de un código de inicio de sesión de PayPal legítimo frente a un sitio de phishing de PayPal falso.
Los investigadores crearon un conjunto de datos de imágenes que representan el código de sitios web legítimos y maliciosos y lo utilizaron para entrenar un modelo de aprendizaje automático de clasificación.
La arquitectura que utilizaron es MobileNet, una red neuronal convolucional (CNN) liviana que está optimizada para ejecutarse en dispositivos de usuario en lugar de servidores en la nube de alta capacidad. Las CNN son particularmente adecuadas para tareas de visión por computadora, incluida la clasificación de imágenes y la detección de objetos.
Una vez que el modelo está entrenado, se conecta a una herramienta de detección de phishing. Cuando el usuario se encuentra con un nuevo sitio web, primero comprueba si la URL está incluida en la base de datos de su dominio malicioso. Si se trata de un dominio nuevo, se transforma mediante el algoritmo de visualización y se ejecuta a través de la red neuronal para comprobar si presenta los patrones maliciosos del sitio web. Esta arquitectura de dos pasos garantiza que el sistema utilice la velocidad de las bases de datos incluidas en la lista negra y la detección inteligente de la técnica de detección de phishing basada en redes neuronales.
Los experimentos de los investigadores demostraron que la técnica podía detectar sitios web de phishing con una precisión del 94%. “El uso de técnicas de representación visual proporciona información sobre las diferencias estructurales entre las páginas web legítimas y de phishing. Según nuestros primeros resultados experimentales, el método parece prometedor y capaz de detectar rápidamente a un atacante de phishing con gran precisión. Además, el método aprende de los errores de clasificación y mejora su eficiencia ”, escribieron los investigadores.
Recientemente hablé con Stavros Shiaeles, profesor de ciberseguridad en la Universidad de Portsmouth y coautor de los dos artículos. Según Shiaeles, los investigadores ahora están preparando la técnica para su adopción en aplicaciones reales.
Shiaeles también está explorando el uso de visualización binaria y aprendizaje automático para detectar tráfico de malware en redes de IoT.
A medida que el aprendizaje automático continúe avanzando, proporcionará a los científicos nuevas herramientas para abordar los desafíos de la ciberseguridad. La visualización binaria muestra que con suficiente creatividad y rigor, podemos encontrar nuevas soluciones a viejos problemas.
Este artículo fue publicado originalmente por Ben Dickson en TechTalks, una publicación que examina las tendencias tecnológicas, cómo afectan la forma en que vivimos y hacemos negocios, y los problemas que resuelven. Pero también estamos discutiendo el lado malo de la tecnología, las implicaciones más oscuras de la nueva tecnología y qué buscar. Puede leer el artículo original aquí.