13 de abril de 2022

¿Qué es el spyware Agent Tesla y cómo funciona?

Por Ofir Yaakobi
MalwareAnálisis de amenazasDatto MDR

Agent Tesla es un troyano espía extremadamente popular, escrito para el marco .NET, que se ha observado desde 2014 y que ha tenido numerosas versiones desde entonces. Se utiliza para robar información confidencial del dispositivo de la víctima, como credenciales de usuario, pulsaciones de teclas, datos del portapapeles, credenciales de navegadores y otra información. Esta información puede luego venderse o utilizarse con fines de inteligencia empresarial o para exigir un rescate. Agent Tesla se distribuye con mayor frecuencia a través de campañas de phishing y se vende y distribuye en diversos foros y plataformas de hackers, donde cualquiera puede comprarlo y utilizarlo. Este software espía es fácil de obtener y de personalizar, lo que lo hace muy popular.

Infección

Los archivos adjuntos maliciosos en correos electrónicos de phishing son el método de distribución más común de Agent Tesla. Se ha observado que se descarga desde documentos maliciosos que descargan el malware.

En nuestra muestra, el correo electrónico de phishing contenía un archivo en formato de texto enriquecido (RTF) muy ofuscado que aprovechaba la vulnerabilidad CVE-2017-11882 para distribuir el spyware. Esta vulnerabilidad , que ya tiene 20 años , aprovecha el Editor de ecuaciones de Microsoft, un antiguo componente de Microsoft Office, que contiene una vulnerabilidad de desbordamiento de pila que permite la ejecución remota de código en un sistema vulnerable. Aunque Microsoft corrigió esta vulnerabilidad en 2017, eso no impidió que siguiera siendo muy popular incluso 20 años después.

Para engañar a las soluciones de seguridad, los atacantes aprovechan Microsoft Object Linking and Embedding, así como muchas palabras de control en el cuerpo del RTF, de modo que los analizadores sintácticos ignoran todo lo que no conocen y las herramientas de seguridad no bloquean el documento por ser malicioso. En la captura de pantalla siguiente, podemos ver que los atacantes utilizan el truco de la palabra de control «\objupdate». Esto obliga al objeto incrustado dentro del archivo RTF a actualizarse antes de que se muestre. En otras palabras, a diferencia de lo que suele ocurrir, el usuario no tiene que hacer clic en el objeto antes de que se cargue. Al forzar la actualización del archivo, el exploit se inicia inmediatamente sin la interacción ni el conocimiento del usuario.

Cuando una víctima abre el archivo, este envía inicialmente una solicitud HTTP para descargar la carga útil ejecutable de Agent Tesla y ejecutarla.

Análisis técnico

Agent Tesla, un malware compilado en .NET, pasa por múltiples capas de descompresión para desplegar su carga útil final, comenzando por el ejecutable descargado y pasando por DLL de dos etapas. Aprovecha la esteganografía para ocultar y decodificar dinámicamente su segunda etapa, ocultando su ejecutable en una imagen, como se ve a continuación.

Agent Tesla emplea muchas técnicas para evadir la detección y dificultar el análisis. Al examinar los tres binarios en un descompilador de .NET, se observa que los nombres de las funciones y las cadenas del archivo están muy ofuscados.

Al ejecutarse, el archivo DLL de la primera etapa descifra dinámicamente los datos de recursos recopilados (PE almacenados dentro de la imagen) obtenidos de un «ResourceManager» para recuperar el módulo de la segunda etapa denominado «UKRUSAIN» y cargarlo en la memoria.

Antes de continuar con la descarga del módulo DLL final, el dropper realiza una comprobación anti-VM, concretamente para detectar si el malware se está ejecutando en una máquina virtual «Sandboxie». Si la comprobación da como resultado «verdadero», sale del proceso y no ejecuta la siguiente fase.

Como parte del enfoque por capas de Agent Tesla, hay un archivo PE encriptado en los datos de recursos del módulo DLL de la segunda etapa, el cual constituye la carga útil de la etapa final que se debe recuperar. Se crea «ResourceManager» para leer el recurso «RP2». A continuación, se realiza una operación XOR sobre los datos del recurso recopilados para descifrar el módulo DLL denominado «RunPe2-(dll)» y, luego, se carga en memoria.
Lectura de los datos del recurso, su procesamiento mediante la operación XOR y su carga en memoria

Tras este proceso, el cargador final ejecuta una herramienta legítima de instalación de servicios de Microsoft .NET (Installutil.exe) en estado suspendido. Agent Tesla desasigna la memoria de Installutil.exe, la sobrescribe con su código malicioso y reanuda el hilo suspendido. Esta técnica se conoce como «Process Hollowing» y permite al malware enmascarar sus actividades como si se tratara de un proceso legítimo.

Robo de datos

El nuevo proceso comienza buscando en la máquina host información como el nombre del equipo activo, clientes de correo electrónico, utilidades FTP, clientes VNC y navegadores web.
La mayoría de las muestras de Agent Tesla contienen una extensa lista predefinida de navegadores de Internet que el malware intenta encontrar en la máquina de la víctima. Si encuentra esos navegadores, busca el directorio «User Data» y el archivo «Login Data», que contiene los identificadores de correo y las credenciales de los perfiles almacenados.

Agent Tesla también buscará la presencia de diferentes clientes de correo electrónico. Si los encuentra, intentará robar sus credenciales de inicio de sesión.
Las utilidades de FTP también son blanco de estos ataques con el fin de robar credenciales de inicio de sesión.
Algunas muestras, incluida la nuestra, también tienen la capacidad de buscar otro software y utilidades en la computadora de la víctima, principalmente para el robo de credenciales, como la búsqueda de VPN, clientes VNC y más.

Envío de datos robados al atacante

Una vez que el malware ha obtenido todas las credenciales disponibles y otros datos de la víctima, los envía a través del protocolo SMTP:

Indicadores de compromiso (IOC): SHA1:

Archivo RTF inicial: d0a83aaadb0b181679410760e328f21022a784ea

Primera carga útil ejecutable: da3c7819a7ff635afcc0090613504a89d9c7195d

Segunda carga útil DLL: 999F1A288B323BD0E22CB6B3CAEB0DBE6E47A35C

Tercera carga útil DLL: 034EC11A18822A6315A988B129BA11632EE31EB0

¿Cómo protegerse contra Agent Tesla?

Como se mencionó anteriormente, Agent Tesla suele propagarse a través de correos electrónicos de phishing, y la forma más eficaz de protegerse contra este malware es mediante una protección avanzada contra amenazas para el correo electrónico. Datto SaaS Defense —la protección avanzada contra amenazas de Datto para la suite de Microsoft 365— protege contra el phishing y múltiples tipos de malware. Su tecnología independiente de datos analiza los archivos adjuntos, los enlaces y el contenido de los correos electrónicos para detectar amenazas desconocidas desde el primer momento, antes de que lleguen al usuario final.

Para saber cómo SaaS Defense puede ayudarte a proteger a tus clientes contra los ciberataques más avanzados, solicita una demostración con uno de nuestros representantes.

Prueba el producto Datto SaaS Protection de forma gratuita. Comienza hoy mismo tu prueba de 14 días. 

Siguientes lecturas recomendadas