Revista Informática

Malware en la nube – Dropbox

Publicado el 30 septiembre 2011 por Security4dev @security4dev

En los tiempos que corren es muy común ver como muchas empresas se pasan a la nube o al cloud computing. No quiero hablar de las ventajas que pueda suponer este tipo de servicios (evernote, whatsapp, dropbox, …) sino de las ventajas que pueda tener para un atacante, desde el “Advanced Password Cracking” que nos enseño Alejandro Ramos, al almacenamiento de Malware, que será lo que vamos a ver hoy.

Era un día normal, levantarse, que si el tuenti, el facebook, el marca, …, todo parecía normal, hasta que accedo a mi cuenta de correo electrónico y oh dios mío, tengo un email y no es spam!!! alguien se acuerda de mi!!! Lo abro y cuál es mi sorpresa que una chica portuguesa/brasileña me manda un link para bajar sus fotos de carnaval. Accedo a la url que me proporciona, que podría ser un enlace a Google Picasa, a Flickr de Yahoo, o cualquier otro servicio de imágenes … pero no, mi sorpresa fué que el enlace dirigía a la cuenta de un usuario bajo dropbox: http://dl.dropbox.com/u/xxxxxxxx/fotos01.zip. Me descargo el archivo y antes de nada ejecuto el comando file:

security4dev$ file fotos01.zip
fotos01.zip: Zip archive data, at least v2.0 to extract

Al ser un archivo zip lo descomprimo y extraigo el archivo fotos01.scr. Los archivos con extensión scr suelen ser protectores de pantalla de windows, pero vamos a usar de nuevo el comando file:

security4dev$ file fotos01.scr
fotos01.scr: MS-DOS executable PE  for MS Windows (GUI) Intel 80386 32-bit

Podemos ver que es un ejecutable PE, así que lo pasamos por Virus Total, arrojándonos la siguiente info:

trojan banker detected test virustotal

resultado virustotal: Trojan Banker

Observamos que sólo 10 de 43 motores antivirus lo detectaron como infeccioso:

Antivirus Version Last Update Result

Motores que detectaron el archivo como malicioso

AhnLab-V3 2011.09.27.01 2011.09.27 Trojan/Win32.Banker

DrWeb 5.0.2.03300 2011.09.28 Trojan.PWS.Banker.59589

Emsisoft 5.1.0.11 2011.09.28 Backdoor.Hupigon!IK

Fortinet T3.1.1.107.0 2011.09.28 Backdoor.Hupigon

Ikarus 4.3.370.0 2011.09.28 W32/QQpass.F!tr.pws

Jiangmin 13.0.900 2011.09.27 Trojan/Banker.Banker.xfd

Panda 10.0.3.5 2011.09.27 Trj/Banker.JNJ

TrendMicro 9.500.0.1008 2011.09.28 Cryp_Banker15

TrendMicro-HouseCall 9.500.0.1008 2011.09.28 Cryp_Banker15

VBA32 3.12.16.4 2011.09.27 BScope.Trojan.Banker

Por los resultados obtenidos posiblemente el malware sea un troyano bancario. Al ver esto me entraron ganas de ejecutar el bicho, pero no vamos ir a pelo, así que anota:

Listo, nos pasamos el ejecutable a la máquina virtual y procedemos a ejecutar el wireshark para capturar todo el tráfico de red, el process explorer para monitorizar los procesos, autoruns para ver los programas que se ejecutan al inicio y patriot-ng que tiene varias utilidades como indicar los cambios en el registro. Ejecutamos el malware y vamos mirando lo que va sucediendo:

Captura de tráfico de red

Capturamos el tráfico de red con Wireshark y observamos como el malware lo primero que hace es conectar a un servidor situado en Brasil(según ip2location), recordemos que al email nos enviaron un texto en portugués incitándonos a bajar fotos do carnaval.

malware brazil ip location

servidor alojando malware en brasil


Al conectarse a este servidor, se descarga el archivo imagens111.zip. Vamos a seguir el flujo TCP con Wireshark para guardar el archivo descargado (también se puede volver a a acceder a la url y obtenerlo directamente):
pcap follow stream tcp malware

Follow TCP Stream con Wireshark


El archivo .zip descargado ha sido imposible descomprimirlo puesto que tenía una contraseña, así que de momento vamos a listar el contenido del archivo:
security4dev$ unzip -l imagens111.zip
Archive:  imagens111.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
   776704  09-20-11 10:12   service.exe
  2658304  09-28-11 05:01   ssmss.exe
   372224  09-05-11 03:08   HookPrintAPIs.dll
  1056768  11-14-04 15:28   libmysql41.dll
  1470464  10-18-06 17:00   libmySQL50.dll
   126464  01-31-06 15:27   madCHook.dll
   425472  09-05-11 02:52   Decrypt.exe
  7993856  09-27-11 13:51   imglog.exe
 --------                   -------
 14880256                   8 files

Más adelante recuperaremos estos ficheros.

También se ha capturado como el malware se comunica con una base de datos MySQL en el mismo servidor:

malware mysql remote connection

conexión mysql del malware


En la captura he suprimido el username y el database name. A continuación, he probado a conectarme manualmente usando el comando mysql pero sin resultados … ¿sabe alguien si esa es la password correcta o hay que crackearla y de qué forma :) ?
security4dev$ mysql -u xxxxxxxxx -h x.x.x.x -p xxxxxxxxx
Enter password:
ERROR 1045 (28000): Access denied for user 'xxxxxxxxx'@'y.y.y.y' (using password: YES)

A continuación el malware ejecuta la consulta sobre MySQL, en la que vemos que indica el sistema operativo que ha conseguido infectar, en mi caso un DESKTOP Windows XP:

malware insertado so en mysql

malware insertando SO en mysql

Y aquí finaliza el análisis con Wireshark :) … ¿qué más información se podría sacar?

Análisis Registro, Programas al inicio y Servicios

Mediante la ejecución del malware, he ejecutado el programa autoruns perteneciente a Sysinternals Suite de Mark Russinovich y el Patriot NG de Yago Jesús. En las siguiente captura de pantalla vemos programas/servicios/entradas de registro sospechosas (antes de la ejecución del malware no existían):

sysinternals suite services

Sysinternals Suite - Services


En la imagen vemos como se instala un servicio en el equipo, el cuál se ejecuta desde el inicio de sesión. Aunque en la imagen aparece el path cortado, el ejecutable se encuentra en la carpeta “Mis Documentos” del usuario “Administrador” (usuario por defecto con el que realicé las pruebas)
Sysinternals Suite - Autorun Logon

Sysinternals Suite - Autorun Logon


Aquí podemos ver como se han creado tres entradas de registro, una por cada ejecutable a iniciar en cada arranque del sistema. Los tres se encuentran, al igual que Services.exe, bajo el directorio “Mis Documentos” del usuario “Administrador”.

Así que vamos a recuperar los ejecutables que sabemos que se están arrancando al inicio del sistema. Para ello accedo a la carpeta “Mis Documentos” y ejecuto el comando dir … y nada, están ocultos, así que a desocultarlos:

ATTRIB -R -S -H /S /D *

Listo. Ahora sí hay acceso a TODOS los ficheros que contenía el archivo imagens111.zip:

contenido archivo imagens111.zip

contenido archivo imagens111.zip

Análisis imagens111.zip

Ahora lo ideal sería hacer un análisis de los ejecutables para sacar más información … pero la ingeniería inversa no es lo mío, así que he hecho hasta donde he podido :)
Aunque no lo he puesto, el malware crea dos archivos de log que están cifrados. Lo ideal sería obtener la clave de cifrado para descifrar dichos archivos y ver exactamente qué se envía luego al servidor. Pero repito, no tengo los conocimientos necesarios para decompilar ejecutables :(
Buscando en Google el Trojan Banker he encontrado que se dedica a recopilar info del usuario, almacenando users y passwords de las web que visita, especialmente de la rama banking para luego enviarle la información al servidor.

¿Como me protejo de ataques de este tipo?

Esto es una pregunta complicada. Puesto que aunque tengamos el antivirus actualizado, no todos detectarían a este malware. Destacar que Panda sí lo ha detectado y que además podemos bajarnos una versión gratuita de Panda Cloud Antivirus.
Así que aquí, lo más importante sería aplicar el sentido común y no descargar y/o abrir archivos de desconocidos, dándonos igual que sean fotos del carnaval o que estén en bolas :)

¿Y ahora qué?

Se ha enviado un email a dropbox a la cuenta de legal indicando el id del usuario que alojaba archivos maliciosos. Todavía no he recibido ninguna contestación.

Para finalizar

El archivo que se ha descargado de dropbox, fotos01.scr, se ha mandado a anubis para analizarlo pero sin obtener resultado al estar comprimido. Para no obtener errores lo he desempaquetado con PEID y así no he tenido ningún problema. De todas formas he conseguido más información analizándolo a mano, aunque nunca descarto esta herramienta puesto que a simple vista arroja información valiosa que nos puede servir de guía.

Y daros las gracias por haber llegado hasta el final del post, …, espero que no fuese un tostón.

Finalmente, dejar una pregunta en el aire … ¿no podría Panda AV llegar a un acuerdo con DropBox para analizarle su cloud? Así los usuarios nos evitaríamos muchos sustos…


Volver a la Portada de Logo Paperblog