Malheur
Análisis del comportamiento del malware
Malheur se basa en el concepto de análisis dinámico: los binarios de malware son recogidos desde internet y se ejecutan en un entorno de sandbox, donde se controla su comportamiento durante el tiempo de ejecución. La ejecución de cada uno de los resultados binarios de malware se registra en un informe de comportamientoMalheur se puede aplicar a la conducta registrada por varios formatos, siempre y cuando los sucesos supervisados sean separados por símbolos delimitadores, por ejemplo como en los informes generados por los populares malware sandboxes CWSandbox, Anubis, Norman Sandbox y Joebox.
Extracción de prototipos. A partir de un determinado conjunto de informes, Malheur identifica un subconjunto de prototipos representativos para el grupo de datos completos. Los prototipos proporcionan una visión general del comportamiento registrado.
La agrupación de comportamiento. Malheur identifica automáticamente los grupos (clusters) de informes que contienen un comportamiento similar. La agrupación permite descubrir nuevas clases de malware y proporciona las bases para la elaboración de mecanismos de detección y defensas específicas.
Clasificación del comportamiento. Sobre la base de un conjunto de informes previamente agrupados, Malheur es capaz de asignar un comportamiento desconocido para grupos conocidos de malware. La clasificación permite la identificación de nuevas variantes de malware.
El análisis incremental. Malheur se puede aplicar de forma incremental para el análisis de grandes conjuntos de datos. Mediante el procesamiento de informes en trozos, los requisitos de tiempo de ejecución y la memoria se reducen significativamente.
La entrada de malheur es un dataset que contiene los informes de comportamiento del malware. El conjunto de datos se proporciona ya sea como un directorio o un archivo comprimido que contiene los informes.Malheur soporta los siguientes formatos de archivos comprimidos: tar.gz, zip, pax y cpio.
Un informe es un documento de texto que describe la actividad registrada de un programa de malware, donde los eventos individuales están separados por caracteres delimitadores, como el espacio en blanco o transporte de regreso. Se espera que los eventos en un informe estén en orden secuencial. Si el comportamiento se representa usando malware instruction set (MIST) otras opciones podrán ser seleccionadas.
El resultado de un análisis se escribe en un archivo, un archivo de texto que contiene las columnas correspondientes con determinados resultados del análisis. De forma predeterminada se establecen en un archive que se llama malheur.out.
La configuración y el estado interno de malheur están almacenados en el directorio maldir. Si no existe este directorio, se crea y la configuración de todo el sistema se copia. Malheur apoya diferentes acciones para el análisis de un conjunto de datos según expertos de ethical hacking. Para todas las acciones de los informes se asignan primero a un espacio de vectores de altas dimensiones, de tal manera que cada informe se representa como un vector característico.
Differential Analysis of Malware in Memory (DAMM)
Differential Analysis of Malware in Memory (DAMM) es una herramienta integrada basada en Volatility Framework. Su objetivo principal es como un banco de pruebas para algunas de las técnicas más recientes en el análisis de la memoria, incluyendo mejoras en el rendimiento a través de almacenamiento de SQLite persistente de los resultados de plugin (opcional); la comparación de objetos en memoria a través de múltiples muestras de memoria, por ejemplo procesos que se ejecutan en unas muestras no infectadas en comparación con los de una muestra infectada; reducción de datos a través de filtrado inteligente; y la codificación de un conjunto de conocimientos de dominio de expertos de seguridad informática para indagar indicadores de actividad maliciosa, como procesos ocultos y archivos DLL, o ventanas de procesos integrados que se ejecutan desde el directorio equivocado.
Características
- 30 Volatility plugins combinados en 20 DAMM plugins(por ejemplo, pslist, psxview y otros elementos se combinan en un plugin ‘processes’)
- Puede ejecutar varios plugins en una invocación.
- La opción para almacenar los resultados de plugin en bases de datos SQLite para su conservación o para el análisis de “caché”.
- Un sistema de filtrado / tipo que permite fácilmente el filtrado de atributos como los PID para ver toda la información relacionada a algún proceso y la coincidencia exacta o parcial para cadenas, etc.
- La capacidad de mostrar las diferencias entre las dos bases de datos de resultados para los mismos o similares máquinas y manipular cómo opera la diferenciación.
- La capacidad de advertir sobre ciertos tipos de comportamiento sospechoso
- Salida para terminal, tsv o grepable
Para ciertos procesos de Windows:
- Relaciones padre / hijo incorrectos
- Procesos ocultos
- Ruta binaria incorrecta
- Prioridad predeterminada incorrecta
- Sesión incorrecta
- Cargar / ejecutar desde el directorio temporal
- Extensiones falsas
- DLL ocultos
- Encabezados PE en inyecciones
- SID que dan acceso al dominio
- Privilegios de depuración
python damm.py -h usage: damm.py [-h] [-d DIR] [-p PLUGIN [PLUGIN ...]] [-f FILE] [-k KDBG] [--db DB] [--profile PROFILE] [--debug] [--info] [--tsv] [--grepable] [--filter FILTER] [--filtertype FILTERTYPE] [--diff BASELINE] [-u FIELD [FIELD ...]] [--warnings] [-q] DAMM v1.0 Beta optional arguments: -h, --help show this help message and exit -d DIR Path to additional plugin directory -p PLUGIN [PLUGIN ...] Plugin(s) to run. For a list of options use --info -f FILE Memory image file to run plugin on -k KDBG KDBG address for the images (in hex) --db DB SQLite db file, for efficient input/output --profile PROFILE Volatility profile for the images (e.g. WinXPSP2x86) --debug Print debugging statements --info Print available volatility profiles, plugins --tsv Print screen formatted output. --grepable Print in grepable text format --filter FILTER Filter results on name:value pair, e.g., pid:42 --filtertype FILTERTYPE Filter match type; either "exact" or "partial", defaults to partial --diff BASELINE Diff the imageFile|db with this db file as a baseline -u FIELD [FIELD ...] Use the specified fields to determine uniqueness of memobjs when diffing --warnings Look for suspicious objects. -q Query the supplied db (via --db).
Fuentes:
http://www.hackplayers.com/2011/08/malheur-050-analisis-automatico-de.html
http://noticiasseguridad.com/importantes/aprende-hacer-analisis-de-malware-avanzado-con-damm/
http://noticiasseguridad.com/importantes/como-hacer-un-analisis-de-malware-con-malheur/




No hay comentarios:
Publicar un comentario