Hola a tod@s!

Continuando con el post anterior, os recuerdo que va dirigido a todos aquell@s que quieran iniciarse en el mundo del Análisis de Malware, así que si no veis nada nuevo u os faltan herramientas, lo siento mucho.

Lo dejé en el análisis dinámico, vamos con un par de herramientas que nos ayudarán de forma gráfica a identificar las acciones del malware.

La primera de ellas (después hablaré de alguna más de la Suite de Sysinternals) es Process Monitor o Procmon como la llama todo el mundo.

Process Monitor o Procmon como mejor se le conoce

De esta utilidad, fundamental para los análisis, quería hablar más detenidamente. Monitoriza en tiempo real las llamadas a las API de Windows que realiza cualquier proceso en el Sistema Operativo en cuanto a ficheros, accesos a registro, actividad de red y procesos.

Si solamente queréis ver algunas de las opciones, pulsad en el botón correspondiente en las opciones marcando o desmarcando y desaparecerán visualmente.

Icono Procmon

Si solamente queréis ver los ficheros que trata el malware, desmarcáis todas menos el botón de los ficheros (el segundo de la imagen anterior empezando por la izquierda).

Funciona a través de filtros, el detalle de donde podéis llegar es espectacular. Por defecto ya trae algunos que quitan mucho ruido.

Filtros de Process Monitor

Imaginaros que queréis saber qué dll se cargan con la aplicación y si se podría aprovechar para alguna técnica como dll hijacking, pues este sería filtro:

Dll hijacking

Esta versión que estáis viendo no es la última, cambia un poco su aspecto, aunque funciona exactamente igual. El porqué he puesto captura de esta y no de la nueva es porque necesitaréis una versión anterior, para que la salida llegue a funcionar correctamente con esta otra herramienta, Procdot.

A esta herramienta hay que añadirle un par de opciones, la ruta de windump.exe (hay que descargarlo) y a dot.exe (para que nos dibuje el resultado de Procmon) incluído en Graphviz. Después veréis cosas como esta:

Salida Procmon Graphviz

Vemos el comportamiento del malware con la información del csv exportado por Procmon anteriormente. Os adelanto que tendréis que tocar, además de los que os dije antes, en un par de parámetros de Procmon que por defecto no están activos, lo podéis leer en el readme.txt de Procdoc.

Readme Procmon

Otra herramienta del famoso pack de Sysinternals es Process Explorer. Es un explorador de procesos, en el que se puede ver información similar al Administrador de Tareas más detallado.

Process Explorer

Si pulsas con el botón derecho en alguno de los procesos, verás esas opciones avanzadas no disponibles (todas) en el Administrador de Tareas.

Salidas Process Explorer

Entre otras, comprobar que el proceso que estás viendo se encuentra en Virus Total y es detectado como malicioso. Además te permite detener aplicaciones, pausarlas, restaurarlas, darle una prioridad, etc.

También puedes cambiar el Administrador de Tareas por defecto del Sistema Operativo por este otro.

Opciones Process Explorer

Existe una alternativa a esta utilidad que muchos prefieren, se llama Process Hacker.

Process Hakers

El aspecto es muy parecido al anterior. Si pulsamos con el botón derecho vemos más opciones.

Opciones de Process Explorer

Digamos que el menú es algo más amplio que Process Explorer, lo que no quiere decir que se pueda llegar a lo mismo en éste, pero desde otro sitio.

Ambas herramientas permiten crear un fichero dump o volcado de memoria del proceso. Por lo que pueden ser muy peligrosas en malas manos. Estas herramientas ejecutadas con el usuario Administrador y/o SYSTEM, pueden hacer de todo (Procdump también permite hacer volcados de memoria). Y es altamente peligroso dejárselo a mano a un atacante.

En las propiedades del proceso, podemos ver varias pestañas con las diferentes opciones que podemos seleccionar.

Cli.exe

Una de las más utilizadas se encuentra en Memory, para obtener las cadenas o strings.

Memory Strings

Con cualquiera de estas 2 herramientas podréis conocer todos los detalles asociados al proceso que queráis analizar.

Para eso de obtener las strings (en Linux, usad además del común los parámetros “-e l” para unicode, acordaros de esto, mejor 2 comandos strings que 1) de un malware tenemos una alternativa, Floss. Esta herramienta es capaz de mostrarte las cadenas ofuscadas en ejecutables, además de las normales que salen del comando strings. Utiliza vivisect para poderlas extraer. Puedes generar un script para cargarlo en IDA, Radare2, x64dbg entre otros. Es mejor ejecutarlo y ver si saca algo que no hacerlo, eso está claro.

Floss Malware

Vemos todo lo que puede llegar a obtener de un malware, mucha información, en algunos casos gracias a las cadenas decodificadas puedes identificar de qué se trata sin necesidad de ejecutarlo.

Sólo voy a nombrar una utilidad más de la Suite de Sysinternals (son para comentarlas todas ya que son grandes utilidades y muy utilizadas, mejor echadle un vistazo para que veáis cuanta variedad), es Autoruns.

Autoruns Malware

Si algún malware escribe alguna clave en el Registro de Windows para hacerse persistente (ruta relativa a Autorun) o se copia en alguno de los directorios utilizados para iniciarse con el Sistema Operativo (Startup), etc. Autoruns lo detectará y podrás verlo de una forma rápida y sencilla.

Otra de las herramientas que da mucho detalle sobre las API de Windows es API Monitor.

API Monitor Malware

En la parte de la izquierda se encuentra el listado de API a filtrar, cuantas más seleccionéis más serán monitorizadas. Podéis ir al detalle sobre qué peticiones http realiza el malware, por poner un ejemplo rápido, deseleccionáis todas menos WinINet.

API Monitor Malware WinInet

Si marcáis todas os podéis perder con tanta información, conviene seleccionar las más importantes.

InternalOpenUrlA

En muchas ocasiones necesitaremos un Editor Hexadecimal, sobre esto hay muchísima variedad. Uno de los más utilizados es HxD.

Editor Hexadecimal

Es común tener que realizar cambios en un binario y para eso hay que hacerlo con este tipo de software, no nos vale el bloc de notas. En la columna de la izquierda vemos los offset o posición en el binario. A la derecha de estos, los valores en hexadecimal del binario u opcodes y más a la derecha su valor en ascii.

Otra alternativa de pago, es Hex Workshop Hex Editor.

Hex Workshop

Sobre gustos, colores, y el azul mola mucho xD, Hiew.

HiewRU Malware

Que queréis ver las instrucciones en ensamblador, F4 y Decode.

Hiew Malware ensamblador

Hay muchos editores y cada uno tiene sus preferencias, así que os animo a que probéis varios y elijáis el que más os guste.

Aquí termina la parte de herramientas para tratar binarios ejecutables en cualquiera de sus extensiones, pasemos a los ficheros ofimáticos.

Análisis de Malware en ficheros ofimáticos

Comenzaré con los Word y/o Excel con macros. Antes de entrar en materia con las herramientas os diré que estos ficheros ofimáticos son ficheros comprimidos con una estructura. Podéis renombrarlos y abrirlos con unzip, Winzip, Winrar, 7zip, etc.

Análisis Ofimático de Malware

Si navegamos por los directorios llegaremos donde se encuentra las macros.

Oletools análisis de Malware Ofimático

Una de las principales herramientas para analizarlos es Oletools (imagen anterior), podéis leerlo en su Github: python tools to analyze MS OLE2 files (Structured Storage, Compound File Binary Format) and MS Office documents, for malware analysis, forensics and debugging. Sin llegar a abrir el documento con Microsoft Office, es capaz de extraer las macros y analizarlas y, además, mostrarte IOC de lo que encuentre.

IOCs Oleotools Malware

No sólo busca macros, también esos enlaces incluidos en los ficheros que hacen referencias a plantillas y que se encuentran dentro como xml.

OLE Domain IOCs Malware

Una alternativa muy buena es utilizar los maravillosos scripts o aplicaciones de Didier Stevens. En su blog podréis ver cómo analizar casi todo, es increíble como cuando queréis hacer algo concreto, al final, acabáis allí. Este artículo os puede ser de mucha utilidad si utilizáis dockers.

Para analizar las macros, usad oledump.

dssuite oleodump macro malware

¿Os acordáis donde estaba las macros? En la número 8 (M de macro), eso es.

Análisis de Malware con Oleodump Macros Office

Para ficheros RTF (Rich Text Format), podéis utilizar rtfdump. El funcionamiento es muy parecido al anterior. Números grandes sugieren ofuscación. Con esta herramienta tenemos que fijarnos en el último número de un mismo nivel y que contengan el mayor número en l= (total caracteres en un grupo) y h= (total caracteres hexadecimales en un grupo).

rtfdump Malware Ofuscacion

Seleccionáis donde creéis que podría estar lo que buscáis (5 ó 7) y añadís -H para que convierta los caracteres hexadecimales en un grupo de bytes.

Busqueda de Ecuation 30

Análisis de malware en PDFs

Para los PDF hay varias herramientas de mucha utilidad. La primera que veremos es PDFStreamDumper.

PDFStreamDumper

Algo interesante que tiene esta herramienta es que busca posibles exploits dentro de los ficheros.

PDFStreamDumper ExploitScan

Este es el mensaje cuando no encuentra ninguno. En el menú Search_For se puede buscar cadenas, código Javascript, Action Tags, Url, etc. Por lo que puedes ir rápidamente a esas opciones con 1 click.

PDFStreamDumper Search Malware

Buscas cabeceras ofuscadas, pulsas encima de lo que ha encontrado y te lleva a la zona donde está.

PDFStreamDumper Cabeceras Ofuscadas

Comentaré ahora un par utilidades más de Didier Stevens sobre PDF. Con Pdfid podremos conocer la estructura del fichero en cuanto a sus directivas usando las palabras clave como son /JS, /Javascript, /XFA, /RichMedia, /Launch, /EmbeddedFiles, /URI, /SubmitForm. Son las opciones que veíamos antes en el menú de la anterior herramienta.

De un vistazo rápido vemos por donde tratan de colarse, en este caso cuando abras el documento PDF se ejecutará una acción y lanzará algo. En la captura anterior veíamos qué.

Pdfid Análisis PDF Malware

Si bien es cierto, nos sirve para ver por donde, pero no vemos lo que ocurrirá. Para eso está Pdf-parser. Como hemos visto que OpenAction sería una de las opciones a analizar, lo buscamos y localizamos las acciones maliciosas que realizará el documento.

Pdf-parser

De momento lo dejaré aquí, aún queda no os creáis, ficheros de scripting y alguno más...

Espero que os haya gustado.

¡Nos vemos en el siguiente post!