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: