Extracción de configuración de malware con MalConfScan (plugin de Volatility)

Todos los días, se descubren nuevos tipos de malware. Sin embargo, muchos de ellos son en realidad variantes del malware existente: comparten la mayor parte del código y hay una ligera diferencia en la configuración, como los servidores de C&C. Por lo tanto, si obtenemos la configuración tendremos prácticamente lo más importante de un artefacto de malware.

Hoy en día no existen muchas herramientas que aglutinen extractores para un buen número de familias malware o, exceptuando CAPE, un excelente fork de Cuckoo-modified, yo al menos no conocía muchas. Pero recientemente JPCERT/CC ha publicado en Github MalConfScan, un plugin para The Volatility Framework que extrae datos de configuración de malware conocido, actualmente los siguientes:

Ursnif HawkEye
Emotet Lokibot
Smoke Loader Bebloh
PoisonIvy AZORult
CobaltStrike NanoCore RAT
NetWire AgentTesla
PlugX FormBook
RedLeave NodeRA
TSCookie njRAT
TSC_Loader TrickBot
xxmm Remcos
Datper QuasarRAT
Ramnit Pony (pte)

Como decimos, MalConfScan busca malware en las imágenes de memoria y descarga los datos de configuración. Pero además, esta herramienta tiene una función para enumerar cadenas a las que se refiere el código malicioso.

- malconfscan: extrae la configuración de malware conocido de una imagen de memoria
- malstrscan: detecta procesos sospechosos de una imagen de memoria y enumera la string a la que se refiere

Instalación de MalConfScan

Clonar MalConfScan de repo de Github

$ git clone https://github.com/JPCERTCC/MalConfScan.git

Instalación de requisitos de Python

$ pip install -r MalConfScan/requirements.txt

Copiar MalConfScan a la carperta de plugins de Volatility

$ cd MalConfScan
$ cp -R malconfscan.py utils yara [Extract Volatility Folder]/volatility/plugin/malware

Uso

Exportar la configuración de malware

MalConfScan puede volcar los datos de configuración de malware, cadenas decodificadas o dominios DGA.

$ python vol.py malconfscan -f images.mem --profile=Win7SP1x64

Ejemplos

Datos de configuración de RedLeaves


Datos de configuración de Bebloh y DGAs


Strings decodeadas de FormBook


Listar las strings referenciadas

Los datos de la config generalmente están ofuscados por el malware, que los escribe desofucados en la memoria. Con malstrscan se pueden enumerar datos de configuración decodificados, es decir, por defecto enumera las string del espacio de memoria cargado por el PE. Con la opción -a se enumeraran las strings en el espacio de memoria principal, como el Heap.

$ python vol.py malstrscan -a -f images.mem --profile=Win7SP1x64

Listar las strings referenciadas de Ramnit


Además la gente del JPCERT/CC a creado un plugin de MalConfScan para Cuckoo, de esta forma tendremos la función para extraer datos de configuración de malware conocidos de volcados de memoria y agregaríamos también el informe MalConfScan en Cuckoo Sandbox.

Plugin Cuckoohttps://github.com/JPCERTCC/MalConfScan-with-Cuckoo

Repositorio: https://github.com/JPCERTCC/MalConfScan

Comentarios

  1. Thanks for Sharing a Nice Information & if any One Who is Looking for the Experienced Letter & Fill Your IT Gap with Proper Verification So Contact Now -9599119376

    ResponderEliminar

Publicar un comentario