Treo Blog

En este espacio puedes explorar las últimas tendencias y noticias en tecnología, seguridad informática e infraestructura TI.

  • Jonathan Rodriguez Paipa

Usando la entropía para detectar el malware que se esconde a plena vista

Por Shyam Sundar Ramaswami



Crédito: Pexels

(Nota del editor: esta solución propuesta para identificar malware oculto se presentó por primera vez en Black Hat USA 2020 y aparece en el informe recientemente publicado, The Modern Cybersecurity Landscape: Scaling for Threats in Motion . Descargue su copia aquí ).


A medida que el malware y el spam se vuelven más automatizados y complejos, los profesionales de la ciberseguridad necesitan nuevos trucos para detectar el malware y la exfiltración de datos robados que pueden estar ocultos en imágenes (esteganografía) y otros archivos.






Una herramienta que podría ayudarlos a detectar las amenazas ocultas sería el uso de "entropía de palabras", asistido por aprendizaje automático.


El concepto básico detrás de la entropía de palabras es que cuanto más complejo se vuelve el malware, menos ordenado o eficiente en el uso de caracteres se vuelve el malware que oculta el archivo. Esta pérdida de orden conduce a valores de entropía que son mucho más altos de lo que se esperaría, una complejidad fuera de lo común que sobresale como un pulgar dolorido.


Desafortunadamente, ocultar malware dentro de los archivos de imágenes hace que sea muy difícil de solucionar. El bloqueo de tipos de archivos de imágenes comunes afectaría a toda Internet, por decir lo menos.


Se han realizado varios estudios sobre cómo se puede realizar el cálculo de entropía para determinar si un archivo está empaquetado o encriptado usando entropía. Lo mismo se podría aplicar a los archivos de imagen. Una forma de hacerlo es buscar datos aleatorios o ruidosos en los avances de imágenes o encabezados EXIF. Aquí es donde la "entropía de palabras" podría ayudar.


Usando la teoría de la entropía de Shannon (que cuantifica la cantidad de información contenida en una variable), los scripts de Python y algunos ajustes lógicos, se podría desarrollar una solución para aprovechar este fenómeno. Al aplicar el aprendizaje automático a los registros de datos históricos (información del sistema, URL de archivos, contraseñas, etc.), la automatización podría facilitar la identificación de los archivos más anómalos para una mayor investigación. Trabajando con una base de datos de valores de entropía normales, los investigadores de amenazas y los equipos de respuesta a incidentes pudieron identificar rápidamente aquellos archivos donde se estaba produciendo una transferencia de datos sospechosos.


De hecho, es posible averiguar si un malware tan complejo muestra comportamientos que sugieren que es parte de la misma campaña o que puede ser descartado por el mismo actor. El truco consiste en buscar algo llamado "similitud de instrucciones o cadenas". Cada archivo en Windows hace uso de la API de Windows, ejecuta devoluciones de llamada durante el tiempo de ejecución o está vinculado a otro archivo, listo para ser utilizado. Con base en estas convenciones de llamadas, se puede averiguar qué podría hacer el archivo y qué familia de malware sigue este patrón.


Un ejemplo sólido podría ser un archivo que intenta crear un proceso, crear un hilo, suspender y reanudar un hilo que podría marcarse para la inyección del proceso. Con datos históricos de amenazas y estas técnicas se puede categorizar el archivo malicioso, a qué familia pertenece e incluso qué actor sigue el estilo.


Como ejemplo, examinamos algunos sitios de WordPress comprometidos que se utilizan para alojar malware. El malware se utiliza para infectar una PC y robar datos. En lugar de llamar la atención sobre sí mismo mediante la exfiltración normal a través de protocolos HTTP / S, el malware emplea esteganografía para ocultar la transferencia de datos de configuración, información del sistema operativo y más.


Esto se hace utilizando algunos datos interesantes que se esconden a simple vista en los encabezados EXIF ​​de los metadatos del archivo. No solo los datos están fuera de lugar, parece que podrían ser declaraciones de evaluación de JavaScript. Los números de teléfono, las contraseñas y otra información confidencial robada de la computadora de la víctima también podrían incrustarse dentro de los encabezados EXIF ​​y podrían exfiltrarse de manera súper sigilosa. Un análisis más detallado muestra una función de búsqueda y reemplazo que extrae números de teléfono y datos del sistema mediante devoluciones de llamada a un servidor de comando y control. Buscar y reemplazar por sí solo no es algo que se marcaría, por lo que incluso algunos entornos sandbox perderán la amenaza. Es este enfoque de múltiples capas de la ofuscación lo que hace que estas nuevas formas de ataque de malware sean tan efectivas.


Hecha un vistazo a la imagen de abajo:



Una sección de muestra de metadatos en un archivo de imagen. El análisis de entropía se centra en la información del “Modelo” anormalmente larga, resaltada en verde.


Aquí vemos que el número de modelo tiene incrustado un código malicioso Base64. La entropía de palabras se puede calcular para valores de encabezado EXIF, valores de atributos de imagen y otros atributos clave. Si calculamos la entropía de la palabra para cada uno de los atributos presentes en los metadatos, obtendremos una base y una puntuación de umbral. Luego, si calculamos la puntuación de entropía para el valor del "Modelo", veremos que supera la puntuación de umbral y se destaca como sospechoso.


La entropía por sí sola no puede cambiar las reglas del juego en la detección de malware. La entropía debe combinarse con otros atributos para dar una calificación efectiva si el archivo es bueno, malo o feo. El auge de la implementación del aprendizaje automático allana el camino para tales innovaciones y métodos de detección avanzados. Los patrones de llamada de búsqueda de instrucciones, las similitudes de cadenas cuando se combinan con atributos como las similitudes de mutex y los patrones de nomenclatura de variables dentro del código podrían revelar mucha información sobre qué actor está involucrando el malware y qué similitudes tienen estas muestras en común. Otra tendencia en el análisis de malware es visualizar el malware en una imagen en escala de grises y realizar una clasificación. Esto está ganando importancia rápidamente y se promociona para abordar los días cero con un buen grado de precisión.


El desarrollo de una base de datos del rango normal de valores de entropía para archivos de imagen ayudaría a los investigadores de amenazas y a los equipos de respuesta a incidentes a identificar más rápidamente aquellos archivos donde se estaban produciendo transferencias de datos sospechosas.


Fuente: https://umbrella.cisco.com/blog/using-entropy-to-spot-the-malware-hiding-in-plain-sight


18 vistas0 comentarios