Virus que explota vulnerabilidad en el servicio SMB de Windows.

A continuación se muestra el análisis realizado de un archivo malicioso, el cual intentaba explotar una vulnerabilidad en un servicio Windows con la finalidad de seguirse propagando.

El archivo capturado fue renombrado a 25112013.exe, a continuación se muestra la firma MD5 del mismo.

MD5: ea421c108a5256a7c1197877b7615f27

El análisis de cadenas permitió identificar ciertas funciones que el malware utilizaba posiblemente para la creación, ejecución y manejo de archivos en el sistema infectado.

De la misma forma se localizaron referencias a la función MessageBox, la cual es utilizada comúnmente para mostrar un mensaje al usuario a través de una ventana de dialogo, por lo que se podría esperar que cuando el malware se ejecute se abra dicha ventana.

Dentro del mismo análisis se hallaron cadenas de texto que hacen referencia a cuentas de correo electrónico junto con lo que pudiera ser algún tipo de password para acceder a las mismas.

Otras cadenas de importancia son aquellas que hacen referencia al comando “net share”, el cual es usado para manejar los recursos compartidos de Windows probablemente con la finalidad de permitir la propagación del  malware entre los usuarios que comparten recursos en la red.

Mediante el uso de la herramienta ExeInfo PE se determinó que el archivo ocupaba un algoritmo programado de forma independiente, esto se ve reflejado en que gran parte de las cadenas obtenidas mediante el uso de la herramienta BinText no se mostraran de forma legible.

Si se intenta utilizar una herramienta como OllyDbg para analizar el ejecutable, nos mostrará un mensaje alertándonos sobre la posibilidad de que el archivo se encuentra cifrado y que los resultados obtenidos pueden no ser los deseados.

Por tanto se procedió a ejecutar el archivo en un ambiente controlado sin salida a Internet para así observar los cambios que éste realiza en el sistema.

Inmediatamente después de que se ejecuta la muestra se observan múltiples peticiones a diversas direcciones IP al puerto 445, el servicio que comúnmente se ofrece en ese puerto por los sistemas Windows es el Server Message Block (SMB) utilizado entre otras cosas para el intercambio de archivos en sistemas Windows.

El servicio mencionado presenta diversas vulnerabilidades que pueden ser  explotadas de manera remota como se menciona en el siguiente enlace:

https://www.grc.com/port_445.htm

 Además de las peticiones observadas a través de la herramienta TCP View, también se observa que el proceso Explorer.exe levanta un puerto UDP, como se observa en la siguiente imagen.

En cuanto a los procesos iniciados solo se observó el correspondiente al archivo malicioso 25112013.exe

 

Mediante el uso de la herramienta Process Explorer se observaron las DLL’s que utilizaban los procesos explorer.exe y 25112013.exe esto con la finalidad de detectar si alguno de estos archivos utilizados podría ser anómalo. Se encontró así que en ambos procesos se cargaba una DLL que llevaba por nombre vrh1.tmp (el color en purpura nos indica que el archivo se encuentra comprimido o cifrado).

Si se selecciona la DLL vrh1.tmp se pueden observar sus propiedades, con ello es posible localizar la ruta desde donde se encuentra el archivo utilizado.

Mediante el uso de la herramienta File es posible comprobar si el archivo vrh1.tmp se trata de una DLL, por comodidad se realizó una copia de dicho archivo al escritorio.

Como se observa en la imagen anterior el archivo vrh1.tmp es una DLL, ahora solo resta determinar si se encuentra empaquetada, para ello se puede hacer uso de la herramienta ExeInfo PE.

Si por ejemplo, se intenta desempaquetar la muestra con la herramienta UPX se genera un error esto debido a que posiblemente se haya modificado el archivo, como se muestra en la siguiente imagen.

Para obtener más información se puede realizar un análisis de cadenas al archivo, sin embargo si se opta por esta opción la herramienta BinText nos alerta sobre la posibilidad de que el archivo se encuentre comprimido.

Dado que la DLL se carga en memoria es posible utilizar la herramienta LordPE con la finalidad de realizar un volcado de la misma, el archivo fue guardado con el nombre dumped.dll

Las cadenas encontradas nos permitieron identificar las secciones de la DLL maliciosa, se halló también la dirección IP 0.0.0.0 la cual permite conexiones desde cualquier dirección remota, así como también el nombre del proceso explorer.exe (posiblemente para evitar la inyección de múltiples instancias de esta DLL dentro del mismo proceso ).

Siguiendo un procedimiento similar se puede realizar un volcado de memoria del proceso 25112013.exe y de esta forma poder realizar un análisis de cadenas.

Dentro del análisis se encontraron el nombre de dos dominios: ant.brenz.pl  y qooilo.brenz.pl, los cuales ya han sido identificados como sitios que propagan software malicioso.

También se halló la referencia al archivo hosts, y una llave de registro que hacía referencia a las políticas del firewall.

Además de ello se localizó lo que era el conjunto de cadenas que se iban a guardar en el archivo hosts, aunado a ello se encuentran las etiquetas HTML de lo que parece ser un Iframe posiblemente se busque inyectar esta etiqueta en los sitios web visitados por el usuario infectado. Además se pueden observar el nombre de diversos sitios de seguridad y soluciones antivirus.

En cuanto a la modificación en el sistema de archivos se observó que en el registro se agregó el valor que permite a la aplicación winlogon.exe establecer conexiones remotas para ello se modificaron las políticas del firewall de Windows.

 

En cuanto a los archivos añadidos al sistema, se observó la creación del archivo vrh1.tmp el cual es la DLL que se había inyectado en el proceso explorer.exe.

También se observa la modificación de diversos archivos ejecutables que se encuentran instalados en el sistema.

Si por ejemplo se observan los archivos ejecutables que fueran modificados no se percibe un cambio sustancial en los mismos, incluso la herramienta RegShot no nos proporciona información adicional sobre cuáles fueron las modificaciones realizadas.

Por tanto para saber que modificaciones se realizaron sobre esos archivos es importante observar sus propiedades (tamaño, permisos) antes y después de la ejecución del archivo malicioso.

Para el análisis de las modificaciones se escogió el archivo 7z.exe, en las siguientes imágenes se muestra el tamaño del archivo antes y después de la infección respectivamente.

Por tanto se sabe que la modificación de estos archivos corresponde a un aumento en el tamaño de los mismos a saber 205.27 bytes. Estos archivos infectados posiblemente permitan la infección de más archivos una vez que estos sean ejecutados.

Para conocer que sección del archivo va a ser ejecutada se puede utilizar la herramienta ExeInfo PE y de esta forma conocer el punto de entrada.

Antes de la infección del archivo 7z.exe se observa que el punto de entrada apunta a la sección .text.

Después de la infección se observa que el punto de entrada ha sido modificado para apuntar a una nueva sección dentro del archivo que lleva por nombre .yvs, incluso se puede observar que ya no se reconoce el lenguaje con la que fue programada la aplicación.

En la siguiente imagen se muestra en rojo la sección .yvs la cual es el punto de entrada de la aplicación infectada, en verde se muestra la sección que se debería de ejecutar en un archivo no infectado.

Posteriormente se utilizó la herramienta Process Monitor  para conocer el alcance de los archivos infectados una vez que son ejecutados y de esta manera filtrar las acciones de la aplicación 7z.exe. Dentro de los eventos registrados se observó la petición al valor de una llave de registro, posteriormente se consulta el archivo fxd1.tmp, el cual es la DLL que crea el malware aunque utilizando un nombre diferente.

Si se localiza la llave de registro que el archivo infectado consulta se encuentra que en ella se almacena la ruta de la DLL, con ello se garantiza que la inyección de la misma en nuevos procesos se lleve a cabo de manera exitosa.

Asimismo dentro de los archivos del sistema modificados se encontró la referencia al archivo hosts.

Al inicio del archivo se puede observar que la dirección de localhost se asignó al dominio www.brenz.pl , posiblemente utilizado como una medida de seguridad para que el usuario sea redirigido a su dirección IP local cada vez que intente visitar este sitio.

Finalmente si la muestra tiene salida a Internet el proceso winlogon.exe comienza a realizar peticiones a las direcciones 148.81.111.XX y 192.254.251.XX posiblemente con la finalidad de descargar más archivos maliciosos.

Cabe mencionar que si se utiliza un navegador para visitar los sitios de las soluciones antivirus (eset, kaspersky, entre otros) las peticiones son bloqueadas y nunca se cargan los sitios correspondientes.

La infección de aplicaciones en nuestro sistema puede dejarlas inutilizables, como en el caso de la herramienta ProcessMonitor.exe la cual arrojaba una ventana que nos mandaba supuestamente un error en tiempo de ejecución de la aplicación, aunque recordando el análisis de cadenas realizado esta ventana corresponde a la función MessageBox.

El servicio de Virus Total identifica al archivo como malicioso a través de las diversas soluciones antivirus.

El reporte completo puede consultarse en el siguiente enlace:

https://www.virustotal.com/es/file/a073f85d033a11456b01c5cb07d473aabe70c1d8a288d50919df7f60f642880e/analysis/