Análisis de Malware 7. Progresión en análisis estático.

Análisis de Malware 7. Progresión en análisis estático.

En pasados posts estudiamos el uso de los útiles visores PE, aunque se quedaban cortos en algunas aplicaciones.
Vimos como las cadenas ASCII encerraban un cúmulo de información importante (a veces basura, dejada por el desarrollador de malware, para despistar), pero resultaba engorroso rastrearlas en el visor desde el volcado ASCII.

Para éste cometido se puede utilizar el programa Strings de Sysinternals, con versión incluso de 64 bits.


Como vemos, el programa se ejecuta en el CMD en linea de comandos. Puede resultar útil tener Strings y la muestra de malware en la misma carpeta, de lo contrario entre comillas debe ir la trayectoria del malware.

Las cadenas encontradas se van enumerando una tras otra.

Entre la información encontrada, vemos funciones de Win importadas por el ejecutable, lo cual sabemos nos puede ayudar a valorar sus intenciones.
Si existiesen direcciones IP o directamente url´s representaría una pista de posibles conexiones al exterior (call home) hacia servidores comprometidos. Para descargar más componentes maliciosos, enviar nuestra información sensible y/o tranformar el equipo en un bot; conectando con servidores C2 (comando y control).


 Recordamos de post anteriores a un bichín que creaba un fichero fake llamado kerne132.dll. 

Con Strings podemos leer cómodamente la trayectoria en que es almacenado.

A continuación este virus recorrería todos los archivos ejecutables del sistema y cambiaría la llamada al DLL legítimo kernel32.dll por el infectado kerne123.dll.


Viendo la funcion InternetOpenA sospechamos que realmente el programa intentará hacer "calling home".

 

En efecto, podemos hallar la url donde intentará conectarse.

Obviamente éste un troyano real, modificado para utilizar en un laboratorio virtual y se ha cambiado el url malicioso por uno inocuo.

A este resultado se puede llegar tambien con otra herramienta interesante para analistas: Resource Hacker.


Este software es muy bueno para rastrear, editar  e incluso extraer recursos dentro del PE.


 En esta muestra hemos descubierto, dentro de la sección de recursos, algo que no debería estar allí; el clásico mensaje de cabecera "This program cannot be run in DOS mode".
¿Habrá el programador ocultado allí código ejecutable? ¿En tal caso cómo lo extraemos para el estudio? Con RH en un par de clics.

Una vez extraido el fichero BIN anidado, lo abrimos con PE View.


Encontramos funciones ya conocidas: URLDownloadtoFileA y WinExec. En resumen, llama a casa, te mandamos una caja de herramientas y tú la abres y te pones al tajo.

Para terminar, un programa que nos puede ayudar a visualizar las librerías importadas y las funciones invocadas por el malware: Dependency Walker.

 

 

Comentarios

Entradas populares