“Devolución de Pago TT” delincuentes siguen propagando el malware Agent Tesla entre empresas españolas

Una de las amenazas más persistentes de los últimos años continúa propagándose en nuestro país, con nuevas muestras detectadas prácticamente todas las semanas. Hablamos de Agent Tesla, un código malicioso especializado en el robo de información y, especialmente, en la sustracción de credenciales que luego pueden ser usadas en otros ataques. A pesar de ser un malware con varios años a sus espaldas, los delincuentes utilizan varias tácticas que evolucionan constantemente para infectar los sistemas y dificultar su detección, tal y como veremos a continuación.

Un email que desemboca en una cadena de PowerShells

Agent Tesla es una amenaza normalmente propagada usando correos electrónicos con ficheros adjuntos o enlaces maliciosos. Su éxito depende, en buena parte, del gancho usado para conseguir que el usuario receptor de estos correos ejecute los ficheros adjuntos o descargados, iniciándose así la cadena de infección del sistema.

Entre los ganchos usados para atraer la atención de los usuarios durante los últimos años hemos visto notificaciones de entrega de paquetes, devoluciones de productos estropeados o  notificaciones de problemas con nuestro servidor de email, entre otras. Pero sin duda, el asunto que más veces se ha repetido es aquel relacionado con temas de facturas, presupuestos o, como en esta ocasión, pagos pendientes.

El correo enviado es bastante escueto y hace referencia a una supuesta devolución de un pago, por lo que se solicita revisar el archivo adjunto para comprobar que todos los datos son correctos. Además de este archivo adjunto sospechoso, otro punto a tener en cuenta para detectar posibles mensajes maliciosos es fijarnos en el remitente.

Aunque no son pocos los casos en los que nos encontramos direcciones de correos legítimas siendo utilizadas para este tipo de campañas (bien porque han sido suplantadas o bien porque se han obtenido sus credenciales previamente), en esta ocasión los delincuentes han utilizado un servicio de envío de correos automatizado que hace uso de inteligencia artificial como es XtreemSMTP con la finalidad de llegar a más posibles víctimas y facilitarles el trabajo de enviar miles de correos.

El fichero adjunto se nos presenta en formato ISO, un contenedor que se ha usado habitualmente para grabar imágenes de CD/DVD y que puede abrirse sin problema en los sistemas operativos actuales para ver su interior. Comprobamos que el fichero ISO contienen otro archivo con un nombre que puede hacer pensar que nos encontramos ante un fichero PDF pero que su verdadera extensión VBS delata como un Visual Basic Script, pensado para iniciar la cadena de ejecución del malware.

Este script contiene unas pocas líneas de código que incluyen un comando PowerShell con una parte ofuscada en Base64, algo que los delincuentes incluyen para dificultar su análisis y detección por parte de las soluciones de seguridad y que apunta a una URL.

Al descifrar esta parte del código vemos como aparece una URL que se corresponde con uno de los servidores que están usando los delincuentes en esta campaña para alojar las muestras que conforman la siguiente fase de la cadena de infección.

En este punto podemos comprobar como los delincuentes no han realizado muchos esfuerzos para cubrir su rastro, ya que el servidor donde se alojan las muestras que se usarán en las siguientes fases de la infección puede accederse libremente sin ninguna restricción. Aunque no sea este el caso, en ocasiones, este despiste de los delincuentes nos puede servir para detectar otras amenazas que serán usadas en campañas futuras.

Entrando en la madriguera del conejo

En una campaña habitual de propagación de una amenaza como Agent tesla, el nivel de ofuscación podría detenerse aquí, con la descarga del payload y ejecución en el sistema de la víctima. Sin embargo, en esta ocasión, los delincuentes han optado por seguir con esta cadena de ejecución de comandos en PowerShell y descarga de nuevos ficheros. Desde el servidor controlado por los delincuentes hemos comprobado como se descargaba un nuevo script PowerShell que, al revisarlo, comprobamos como contiene de nuevo parte de su código ofuscado en Base64.

Una vez descifrado este código comprobamos como se realiza la petición de descarga del otro fichero que está alojado en el servidor controlado por los atacantes, un archivo BAT que será usado para iniciar la siguiente fase de la cadena de infección.

Este fichero BAT contiene a su vez un fichero ejecutable que es, en realidad, el ejecutable de PowerShell usado de nuevo para ejecutar un comando con buena parte de su código ofuscado en Base64. Como dato de importancia, una vez se vuelca este ejecutable en el sistema, se cambian sus atributos para establecerlo como archivo de sistema y ocultarlo para, una vez finalizada la ejecución, quitarle esos mismos atributos.

Durante la ejecución de la muestra en un entorno controlado hemos podido comprobar como los delincuentes no se han preocupado en ocultar las ventanas que delatan la ejecución de este tipo de comandos en el sistema, por lo que un usuario avispado podría detectar que algo sospechoso está sucediendo en su sistema.

Con respecto al código ofuscado, podemos comprobar como se trata de una cadena de comandos y, revisando toda la cadena de infección, no es difícil averiguar que estamos ante un fichero PS1, correspondiente a un script en PowerShell.

Estas líneas de código que pueden llegar a ser difíciles de descifrar para aquellos investigadores con menos experiencia pueden interpretarse fácilmente apoyándonos en a una herramienta potenciada con inteligencia artificial que incorporó recientemente el conocido servicio Virus Total.

Así pues, y apoyándonos en la detallada descripción proporcionada por Virus total podemos comprobar que este script PowerShell carga un código malicioso desde una ubicación remota y lo ejecuta. El código se comprime utilizando Gzip y con la codificación Base64. A continuación, el script lee primero el nombre del archivo del módulo principal del proceso actual y luego elimina los últimos cuatro caracteres, algo que se hace probablemente para ofuscar el nombre de archivo del código malicioso.

Seguidamente, el script lee el contenido del archivo creado al eliminar los últimos cuatro caracteres del nombre del archivo del módulo principal y busca las líneas que empiezan con dos asteriscos, añadiendo la segunda palabra de esas líneas a un objeto StringBuilder. A continuación, el script convierte el contenido del objeto StringBuilder en una cadena Base64 y la utiliza para crear un objeto GzipStream. Este objeto se utiliza para descomprimir el contenido del código malicioso para, seguidamente, cargar el contenido descomprimido del código malicioso en una matriz de bytes e invertirla. La matriz de bytes se utiliza para crear un objeto Assembly, objeto que se utiliza para crear una instancia del ensamblado malicioso. Por último, se invoca el método EntryPoint del código malicioso.

Esta técnica puede usarse para descargar y ejecutar una amenaza, como es el caso que estamos analizando. Cuando hablamos de Agent Tesla los delincuentes suelen usar varios métodos para extraer la información robada usando en esta ocasión un servidor de correo previamente comprometido.

Toda la cadena de ejecución del malware está repleta de scripts en PowerShells y es bastante larga, aunque estas es una tendencia en aumento que venimos observando desde hace tiempo entre los desarrolladores de todo tipo de amenazas, con la finalidad de dificultar su detección y análisis.

A pesar de todos los esfuerzos para ofuscar su código y dificultar su análisis, estas amenazas no suelen plantear problemas de detección para las soluciones de seguridad actuales y ya el propio fichero ISO que inicia toda la cadena de infección es detectado por las soluciones de ESET como una variante de VBA/TrojanDownloader.Agent.EGF.

Conclusión

Agent Tesla continúa teniendo a España entre sus objetivos principales y no parece que la cosa vaya a cambiar a corto y medio plazo. Por ese motivo es necesario aprender a reconocer las técnicas usadas por los delincuentes para propagar estas amenazas y contar con soluciones de seguridad que sean capaces de detectarlas y eliminarlas.

Josep Albors

ESET deconstruye un grupo de ciberdelincuentes encargado de espiar y atacar países fronterizos con Ucrania