Variante de Dorkbot descarga malware por órdenes de C&C IRC

 

En una de nuestras publicaciones anteriores en este blog, se realizó el análisis de una muestra de malware que se propagaba por el servicio Skype, dicha muestra era  una variante de Dorkbot. Recientemente fueron reportados varios casos de infecciones por un gusano informático que también es una variante de Dorkbot, por lo cual, el equipo de análisis de malware procedió a realizar la inspección de dicha muestra.

 

 

 

El archivo "1c86232aeea8f270432facb1b4f36830.exe" se ejecutó en un entorno controlado sin salida a Internet, levantó el proceso "svchost.exe", que a su vez inició el proceso "mspaint.exe". Este último proceso, está asociado al programa "Paint" de Windows, sin embargo, en ningún momento se muestra dicho editor de imágenes.

 

En el Registro de Windows crea una llave para mantener su ejecución en cada inicio del sistema y en el Sistema de Archivos se copia a sí mismo dos veces: "ScreenSaverPro.scr" y "temp.bin". Finalmente, se borra de la ruta donde fue ejecutado, en nuestro caso, del "Escritorio" de Windows.

 

 

A continuación se muestran los dos archivos ejecutables y sus firmas md5:

 

 

 

Revisando los archivos con las herramientas "PEiD" y "Exeinfo PE", arrojan diferente resultado. PEiD no detecta que el archivo binario se encuentre empaquetado y Exeinfo PE sí detecta que el malware está empaquetado con UPX.

 

 

 

Lo anterior se corroboró haciendo un análisis de cadenas, en donde se mostraron ofuscadas, aunque también se encontraron indicios de que el archivo fue empaquetado con UPX.

 

 

 

Cuando se procedió a desempaquetar el archivo ejecutable, la herramienta "upx" mostró un mensaje de error, informando que el archivo no podía ser desempaquetado debido a posibles modificaciones por el creador del malware.

 

 

 

Al no contar con el archivo ejecutable desempaquetado, se realizó un volcado del proceso cargado en memoria para obtener más información.

 

 

 

En los primeros hallazgos, se encontraron palabras clave que ayudaron a determinar que se trataba de un "bot" asociado al servicio IRC.

 

 

 

Posteriormente se encontraron intentos de sesión a diferentes servicios en Internet.

 

 

 

A continuación se muestra la lista completa de los dominios en los que intentaba autenticarse:

 

 

En la parte final del análisis de cadenas, se encontraron acciones de configuración para dispositivos USB.

 

 

 

En cuanto al tráfico de red, el proceso malicioso intentaba resolver cuatro dominios. A continuación se muestran las consultas DNS.

 

 

 

Una vez identificados los dominios que intentaba resolver el malware, se procedió a editar el archivo "hosts" para redirigir el tráfico a otra máquina en el mismo segmento de red. Una vez que la muestra fue engañada al proporcionarle los dominios que buscaba, mostró intentos de conexión, tanto a un servicio web, como a un servicio en el puerto "7384".

 

 

 

A continuación se muestran dos carpetas y dos archivos alojados en un dispositivo USB para realizar la prueba de infección al conectarlo en el equipo infectado:

 

 

 

Inmediatamente después de conectar el dispositivo USB, los archivos originales presentan cambios en sus atributos, ya que se muestran ocultos. También, se crean los accesos directos de todos los archivos y carpetas, los cuales serán visibles para la víctima. Finalmente, se crea un archivo ejecutable con el nombre "aixKryiWovbcIk.exe" y una carpeta con el nombre ".Trashes".

 

 

 

El archivo ejecutable corresponde a la muestra de malware original, por lo que se puede determinar que en un equipo infectado, todas las memorias USB que se introduzcan, serán comprometidas si no se cuenta con alguna solución antivirus:

 

 

 

En un análisis de cadenas a un archivo de tipo "acceso directo", se encontró el comando que realiza dos acciones cuando la víctima le da doble clic: la primera, es que se abrirá el archivo al que apunta el acceso directo, pero la segunda, ejecutará el archivo binario que se creó en la memoria USB.

 

 

 

A continuación se muestran los dos archivos creados en la carpeta ".Trashes": "Desktop.ini" (archivo de configuración) y "e2a38afd" (nuevamente el malware original).

 

 

 

Dejando interactuar a la muestra con Internet, logra establecer conexión con el servicio asociado al puerto "7384" y con varios servicios web. A continuación se muestran las diferentes conexiones que establece el proceso troyanizado "mspaint.exe":

 

 

 

Una vez que estableció conexión con los diferentes sitios en Internet, comienza a descargar varios archivos ejecutables.

 

 

A continuación se muestra la lista de los archivos que fueron descargados:

 

 

 

En el tráfico de red, se puedo determinar que el servicio ofrecido por el puerto "7384", al que intentaba conectarse el malware, corresponde a un servicio IRC, en donde una vez que se autenticó el equipo de la víctima con la contraseña "smart", recibió órdenes de descargar más archivos maliciosos.

 

 

 

A continuación se muestran todas las direcciones URL de los archivos que fueron descargados:

 

 

La dirección IP del servidor IRC pertenece a China.

 

 

 

Al consultar la firma del archivo ejecutable en el servicio VirusTotal, muestra que 38 de 46 soluciones antivirus detectan el archivo como malicioso. A continuación se muestra el reporte:

 

 

 

 

          - Desinfectar equipo y recuperar archivos de la memoria USB

 

Para desinfectar el equipo, en el caso particular de esta muestra, se puede utilizar el programa "Process Explorer" de la suite Sysinternals de Microsoft para cerrar el árbol de procesos que levanta el malware.

 

 

 

Posteriormente se deben eliminar las réplicas que se generaron debido a la infección.

 

 

 

En la memoria USB, se deben eliminar todos los accesos directos de los archivos y carpetas que ocultó el malware. Además del archivo ejecutable y la carpeta ".Trashes".

 

 

 

Finalmente, para quitar los atributos "archivo de sistema" y "archivo oculto" a todos los archivos, carpetas y sub carpetas, se debe usar el comando "attrib", que está incluido en los sistemas operativos Windows, el símbolo "*" es para indicar que se aplique a todo lo que se encuentra en la memoria USB.

 

El siguiente comando hace la modificación de los atributos de forma recursiva: