La participación falló: expongamos AgentTesla al agua limpia. Parte 2

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
Continuamos nuestra serie de artículos dedicados al análisis de malware. EN primero En parte, contamos cómo Ilya Pomerantsev, especialista en análisis de malware de CERT Group-IB, realizó un análisis detallado de un archivo recibido por correo de una de las empresas europeas y descubrió software espía allí. agente de Tesla. En este artículo, Ilya proporciona los resultados de un análisis paso a paso del módulo principal. agente de Tesla.

Agent Tesla es un software de espionaje modular que se distribuye utilizando un modelo de malware como servicio bajo la apariencia de un producto legítimo de registro de pulsaciones. El agente Tesla es capaz de extraer y transmitir credenciales de usuario desde navegadores, clientes de correo electrónico y clientes FTP al servidor a los atacantes, registrar datos del portapapeles y capturar la pantalla del dispositivo. En el momento del análisis, el sitio web oficial de los desarrolladores no estaba disponible.

Archivo de configuración

La siguiente tabla enumera qué funcionalidad se aplica al ejemplo que está utilizando:

Descripción Valor
Indicador de uso de KeyLogger verdadero
Indicador de uso de ScreenLogger false
Intervalo de envío de registros de KeyLogger en minutos 20
Intervalo de envío de registros de ScreenLogger en minutos 20
Bandera de manejo de tecla de retroceso. Falso: solo registro. Verdadero: borra la clave anterior false
Tipo CNC. Opciones: smtp, panel web, ftp smtp
Indicador de activación de hilo para finalizar procesos de la lista "%filter_list%" false
Bandera de desactivación de UAC false
Bandera de desactivación del administrador de tareas false
Bandera de desactivación de CMD false
Ejecutar bandera de desactivación de ventana false
Indicador de desactivación del visor de registro false
Deshabilitar el indicador de puntos de restauración del sistema verdadero
Indicador de desactivación del panel de control false
Bandera de desactivación de MSCONFIG false
Bandera para desactivar el menú contextual en Explorer false
Bandera de alfiler false
Ruta para copiar el módulo principal al fijarlo al sistema %carpeta de inicio% %insfolder%%insname%
Bandera para configurar los atributos "Sistema" y "Oculto" para el módulo principal asignado al sistema false
Marcar para realizar un reinicio cuando está anclado al sistema false
Bandera para mover el módulo principal a una carpeta temporal false
Bandera de derivación de UAC false
Formato de fecha y hora para el registro aaaa-MM-dd HH: mm: ss
Bandera para usar un filtro de programa para KeyLogger verdadero
Tipo de filtrado de programas.
1 – el nombre del programa se busca en los títulos de la ventana
2 – el nombre del programa se busca en el nombre del proceso de la ventana
1
Filtro de programa "Facebook"
"gorjeo"
"gmail"
"instagram"
"película"
"skype"
"pornografía"
"cortar a tajos"
"whatsapp"
"discordia"

Conexión del módulo principal al sistema

Si se establece el indicador correspondiente, el módulo principal se copia a la ruta especificada en la configuración como la ruta que se asignará al sistema.

Dependiendo del valor de la configuración, el archivo recibe los atributos "Oculto" y "Sistema".
La ejecución automática la proporcionan dos ramas del registro:

  • Software HKCUMicrosoftWindowsCurrentVersionRun%insregname%
  • HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedEjecutar %insregname%

Dado que el gestor de arranque se inyecta en el proceso. RegAsmo, establecer el indicador persistente para el módulo principal tiene consecuencias bastante interesantes. En lugar de copiarse a sí mismo, el malware adjuntó el archivo original al sistema RegAsm.exe, durante el cual se llevó a cabo la inyección.

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
La participación falló: expongamos AgentTesla al agua limpia. Parte 2

Interacción con C&C

Independientemente del método utilizado, la comunicación en la red comienza con la obtención de la IP externa de la víctima utilizando el recurso. chequeo[.]amazonaws[.]com/.
A continuación se describen los métodos de interacción de red presentados en el software.

panel web

La interacción se realiza a través del protocolo HTTP. El malware ejecuta una solicitud POST con los siguientes encabezados:

  • Agente de usuario: Mozilla/5.0 (Windows U Windows NT 6.1 ru rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (.NET CLR 3.5.30729)
  • Conexión: Keep-Alive
  • Tipo de contenido: application / x-www-form-urlencoded

La dirección del servidor está especificada por el valor. %PostURL%. El mensaje cifrado se envía en el parámetro "pag". El mecanismo de cifrado se describe en la sección "Algoritmos de cifrado" (Método 2).

El mensaje transmitido se ve así:

type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nclient={8}nlink={9}nusername={10}npassword={11}nscreen_link={12}

Parámetro tipo indica el tipo de mensaje:

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
ancho — Se registra un hash MD5 a partir de los valores del número de serie de la placa base y el ID del procesador. Probablemente se utilice como ID de usuario.
equipo — sirve para transmitir la hora y fecha actuales.
nombre de pc - definido como <Nombre de usuario>/<Nombre de computadora>.
Dato de registro - Dato de registro.

Al transmitir contraseñas, el mensaje se ve así:

type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nscreen_link={8}n[passwords]

Las siguientes son descripciones de los datos robados en el formato nclient[]={0}nlink[]={1}nnombredeusuario[]={2}ncontraseña[]={3}.

smtp

La interacción se realiza a través del protocolo SMTP. La carta transmitida está en formato HTML. Parámetro CUERPO tiene la forma:

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
El encabezado de la carta tiene la forma general: <NOMBRE DE USUARIO>/<NOMBRE DE COMPUTADORA> <TIPO DE CONTENIDO>. El contenido de la carta, así como sus archivos adjuntos, no están cifrados.

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
La interacción se realiza a través del protocolo FTP. Un archivo con el nombre se transfiere al servidor especificado. <TIPO DE CONTENIDO>_<NOMBRE DE USUARIO>-<NOMBRE DE COMPUTADORA>_<FECHA Y HORA>.html. El contenido del archivo no está cifrado.

La participación falló: expongamos AgentTesla al agua limpia. Parte 2

Algoritmos de cifrado

Este caso utiliza los siguientes métodos de cifrado:

El método 1

Este método se utiliza para cifrar cadenas en el módulo principal. El algoritmo utilizado para el cifrado es AES.

La entrada es un número decimal de seis dígitos. Sobre él se realiza la siguiente transformación:

f(x) = (((x >> 2 - 31059) ^ 6380) - 1363) >> 3

El valor resultante es el índice de la matriz de datos incrustada.

Cada elemento de la matriz es una secuencia. DWORD. Al fusionarse DWORD Se obtiene una matriz de bytes: los primeros 32 bytes son la clave de cifrado, seguidos de 16 bytes del vector de inicialización y los bytes restantes son los datos cifrados.

El método 2

Algoritmo utilizado 3DES en el modo BCE con relleno en bytes enteros (PKCS7).

La clave está especificada por el parámetro. % clave de URL%, sin embargo, el cifrado utiliza su hash MD5.

Funcionalidad maliciosa

La muestra en estudio utiliza los siguientes programas para implementar su función maliciosa:

KeyLogger

Si hay un indicador de malware correspondiente usando la función WinAPI SetWindowsHookEx Asigna su propio controlador para eventos de pulsación de teclas en el teclado. La función del controlador comienza obteniendo el título de la ventana activa.

Si se establece el indicador de filtrado de aplicaciones, el filtrado se realiza según el tipo especificado:

  1. el nombre del programa se busca en los títulos de la ventana
  2. el nombre del programa se busca en la ventana nombre del proceso

A continuación, se agrega una entrada al registro con información sobre la ventana activa en el formato:

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
Luego se registra información sobre la tecla presionada:

Llave Registro
Retroceso Dependiendo del indicador de procesamiento de la tecla Retroceso: Falso – {BACK}
Verdadero: borra la clave anterior
BLOQ MAYÚS {BLOQ MAYÚS}
ESC {ESC}
PageUp {Página arriba}
Plumón
BORRAR {BORRAR}
" "
F5 {F5}
& Y
F10 {F10}
TAB {PESTAÑA}
< <
> >
brecha
F8 {F8}
F12 {F12}
F9 {F9}
ALT + TAB {ALT+TAB}
FIN {FINAL}
F4 {F4}
F2 {F2}
CTRL {CONTROL}
F6 {F6}
Derecha
Up
F1 {F1}
Unidades
PageDown {Página abajo}
recuadro {Insertar}
Win {Ganar}
BlNum {Num lock}
F11 {F11}
F3 {F3}
INICIO {HOGAR}
ENTRAR {INGRESAR}
ALT + F4 {ALT+F4}
F7 {F7}
Otra clave El carácter está en mayúsculas o minúsculas dependiendo de las posiciones de las teclas CapsLock y Shift.

Con una frecuencia especificada, el registro recopilado se envía al servidor. Si la transferencia no tiene éxito, el registro se guarda en un archivo %TEMP%log.tmp en formato:

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
Cuando se active el temporizador, el archivo se transferirá al servidor.

Registrador de pantalla

Con una frecuencia específica, el malware crea una captura de pantalla en el formato JPEG con valor Quality igual a 50 y lo guarda en un archivo %APPDATA %<Secuencia aleatoria de 10 caracteres>.jpg. Después de la transferencia, el archivo se elimina.

registrador del portapapeles

Si se establece la bandera adecuada, se realizan reemplazos en el texto interceptado de acuerdo con la siguiente tabla.

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
Después de esto, el texto se inserta en el registro:

La participación falló: expongamos AgentTesla al agua limpia. Parte 2

Ladrón de contraseñas

El malware puede descargar contraseñas de las siguientes aplicaciones:

Navegadores Clientes de correo Clientes FTP
Chrome Outlook FileZilla
Firefox Thunderbird WS_FTP
IE/borde Foxmail WinSCP
Safari Opera Mail Núcleo FTP
Navegador de Opera IncrediMail Navegador FTP
Yandex pococorreo FlashFXP
Comodo Eudora SmartFTP
Chrome Plus Thebat Comandante FTP
Cromo Buzón
Torch GarrasCorreo
7Star
Amigo
software valiente Clientes Jabber Clientes VPN
CentBrowser psi/psi+ VPN abierto
Chedot
CocCoc
Explorador de elementos Administradores de descargas
Navegador de privacidad épico Internet Download Manager
Cometa JDownloader
Orbitum
Sputnik
uCozMedia
Vivaldi
SeaMonkey
Flock Browser
UC Browser
BlackHawk
Ciberzorro
K-Meleon
gato de hielo
Icedragon
Luna pálida
Zorro de agua
Navegador Falkon

Oposición al análisis dinámico

  • Uso de la función Calidad de Sueño. Le permite omitir algunas zonas de pruebas por tiempo de espera.
  • Destruyendo un hilo Identificador de zona. Le permite ocultar el hecho de descargar un archivo de Internet.
  • en parámetro %lista_filtro% especifica una lista de procesos que el malware finalizará en intervalos de un segundo
  • Desconectando UAC
  • Deshabilitar el administrador de tareas
  • Desconectando CMD
  • Deshabilitar una ventana "Ejecutar"
  • Deshabilitar el panel de control
  • Deshabilitar una herramienta RegEdit
  • Deshabilitar los puntos de restauración del sistema
  • Deshabilitar el menú contextual en Explorer
  • Desconectando MSCONFIG
  • Derivación UAC:

Funciones inactivas del módulo principal.

Durante el análisis del módulo principal se identificaron funciones que se encargaban de difundirse por la red y rastrear la posición del mouse.

Gusano

Los eventos para conectar medios extraíbles se monitorean en un hilo separado. Cuando se conecta, el malware con el nombre se copia a la raíz del sistema de archivos scr.exe, después de lo cual busca archivos con la extensión LNK. El equipo de todos LNK cambiando a cmd.exe /c iniciar scr.exe&iniciar <comando original>& salir.

Cada directorio en la raíz del medio recibe un atributo. "Oculto" y se crea un archivo con la extensión LNK con el nombre del directorio oculto y el comando cmd.exe /c iniciar scr.exe&explorer /root,"%CD%<NOMBRE DEL DIRECTORIO>" y salir.

Rastreador de ratón

El método para realizar la interceptación es similar al utilizado para el teclado. Esta funcionalidad aún está en desarrollo.

Actividad del archivo

Camino Descripción
%Temp%temp.tmp Contiene un contador para intentos de omisión de UAC
%carpeta de inicio%%insfolder%%insname% Ruta que se asignará al sistema HPE
%Temp%tmpG{Hora actual en milisegundos}.tmp Ruta para la copia de seguridad del módulo principal.
%Temp%log.tmp Archivo de registro
%AppData%{Una secuencia arbitraria de 10 caracteres}.jpeg Imágenes
C:UsersPublic{Una secuencia arbitraria de 10 caracteres}.vbs Ruta a un archivo vbs que el gestor de arranque puede usar para adjuntarlo al sistema
%Temp%{Nombre de carpeta personalizada}{Nombre de archivo} Ruta utilizada por el gestor de arranque para conectarse al sistema

Perfil del atacante

Gracias a los datos de autenticación codificados, pudimos acceder al centro de mando.

La participación falló: expongamos AgentTesla al agua limpia. Parte 2
Esto nos permitió identificar el correo electrónico final de los atacantes:

junaid[.]en***@gmail[.]com.

El nombre de dominio del centro de comando está registrado en el correo. sg***@gmail[.]com.

Conclusión

Durante un análisis detallado del malware utilizado en el ataque, pudimos establecer su funcionalidad y obtener la lista más completa de indicadores de compromiso relevantes para este caso. Comprender los mecanismos de interacción de la red de malware permitió dar recomendaciones para ajustar el funcionamiento de las herramientas de seguridad de la información, así como escribir reglas IDS estables.

Peligro principal agente de Tesla como DataStealer en el sentido de que no necesita comprometerse con el sistema ni esperar un comando de control para realizar sus tareas. Una vez en la máquina, inmediatamente comienza a recopilar información privada y la transfiere al CnC. Este comportamiento agresivo es en cierto modo similar al comportamiento del ransomware, con la única diferencia de que este último ni siquiera requiere una conexión de red. Si te encuentras con esta familia, después de limpiar el sistema infectado del malware, definitivamente deberías cambiar todas las contraseñas que, al menos en teoría, podrían guardarse en una de las aplicaciones enumeradas anteriormente.

De cara al futuro, digamos que los atacantes que envían agente de Tesla, el cargador de arranque inicial se cambia muy a menudo. Esto le permite pasar desapercibido para los escáneres estáticos y los analizadores heurísticos en el momento del ataque. Y la tendencia de esta familia a iniciar inmediatamente sus actividades hace que los monitores del sistema sean inútiles. La mejor manera de combatir a AgentTesla es un análisis preliminar en una zona de pruebas.

En el tercer artículo de esta serie veremos otros gestores de arranque utilizados. agente de Tesla, y también estudiar el proceso de su desembalaje semiautomático. ¡No te pierdas!

Hash

SHA1
A8C2765B3D655BA23886D663D22BDD8EF6E8E894
8010CC2AF398F9F951555F7D481CE13DF60BBECF
79B445DE923C92BF378B19D12A309C0E9C5851BF
15839B7AB0417FA35F2858722F0BD47BDF840D62
1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD

C & C

Enlance
sina-c0m[.]icu
smtp[.]sina-c0m[.]icu

clave de registro

registro
HKCUSoftwareMicrosoftWindowsCurrentVersionRun{Nombre del script}
HKCUSoftwareMicrosoftWindowsCurrentVersionRun%insregname%
HKCUSOFTWAREMicrosoftWindowsVersión actualExplorerInicioAprobadoEjecutar%insregname%

Mutex

No hay indicadores.

archivos

Actividad del archivo
%Temp%temp.tmp
%carpeta de inicio%%insfolder%%insname%
%Temp%tmpG{Hora actual en milisegundos}.tmp
%Temp%log.tmp
%AppData%{Una secuencia arbitraria de 10 caracteres}.jpeg
C:UsersPublic{Una secuencia arbitraria de 10 caracteres}.vbs
%Temp%{Nombre de carpeta personalizada}{Nombre de archivo}

Información de muestras

Nombre Desconocido
MD5 F7722DD8660B261EA13B710062B59C43
SHA1 15839B7AB0417FA35F2858722F0BD47BDF840D62
SHA256 41DC0D5459F25E2FDCF8797948A7B315D3CB0753
98D808D1772CACCC726AF6E9
Tipo de Propiedad PE (.NET)
Tamaño 327680
Nombre original AZZRIDKGGSLTYFUUBCCRRCUMRKTOXFVPDKGAGPUZI_20190701133545943.exe
Sello de la fecha 01.07.2019
Compilador VB.NET

Nombre IELibrary.dll
MD5 BFB160A89F4A607A60464631ED3ED9FD
SHA1 1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD
SHA256 D55800A825792F55999ABDAD199DFA54F3184417
215A298910F2C12CD9CC31EE
Tipo de Propiedad PE (.NET DLL)
Tamaño 16896
Nombre original IELibrary.dll
Sello de la fecha 11.10.2016
Compilador Vinculador de Microsoft(48.0*)

Fuente: habr.com

Añadir un comentario