Troyano bancario que aparenta ser ícono del Panel de Control

Resumen

La muestra que se analiza en esta ocasión se obtuvo a partir de un reporte hecho al equipo de Análisis de Software Malicioso de la SSI/UNAM-CERT en donde se informaba que se habían encontrado supuestos programas maliciosos alojados en sitios web brasileños. Al analizarlo, se descubrió que la muestra envía información de los equipos infectados, como: sistema operativo, privilegios del usuario, plugins de seguridad bancarios y dirección IP, a una bitácora que parece estar alojada en una URL legítima.

 

Introducción

Se puede observar en la siguiente imagen que la extensión del archivo descargado es “cpl”. Losarchivos cpl son bibliotecas de enlace dinámico (DLL por sus siglas en inglés) que contienen la funcionalidad de los íconos del Panel de Control, es decir, cada una de las herramientas que vemos contiene un archivo .cpl en la carpeta C:\WINDOWS\System32\ que se carga automáticamente cuando el usuario inicia el Panel de Control. A diferencia de los archivos .dll, los archivos con extensión cpl pueden ser ejecutados al dar doble clic sobre ellos.

 

 

En el contexto de programas maliciosos, cpl es un formato de archivo ejecutable muy utilizado por los desarrolladores de troyanos bancarios, particularmente de Brasil. Como se menciona en la investigación de Trend Micro, la forma de propagación más común de este tipo de malware es por medio de correos electrónicos que parecen provenir de organizaciones financieras conocidas, por lo que convencen a sus víctimas de dar clic en un enlace para descargar recibos o consultar sus transacciones. En este caso el nombre de la muestra, que aparenta ser un archivo PDF, incluye la palabra “pedido” que se puede traducir como “solicitud”.

 

 

 

Análisis Dinámico

 

La muestra fue ejecutada en un ambiente controlado sin salida a Internet y se monitoreó el tráfico de red utilizando Wireshark. En la captura se pueden observar peticiones a los dominios www.ricxxx.com.br y www.ecoxxxxx.com.br.

 

 

Una vez que resuelve dichos dominios, trata de conectarse al puerto 80 (HTTP). El archivo .cpl, al igual que cualquier archivo DLL de 32 bits, es cargado en memoria y ejecutado por la utilería de Windows rundll32.exe.

 

 

La muestra hace una petición GET al archivo “unistals.txt” en el dominio “ricxxx.com.br” y envía una cadena en el parámetro “query” al dominio “acoxxxxx.com.br”, como se muestra en la siguiente captura de tráfico.

 

 

A partir del contenido del archivo “unistals.txt”, alojado en el servidor del dominio ricxxx.com.br, crea el ejecutable llamado “unistals.exe” en el directorio C:\Documents and Settings\User\Application Data\. Puesto que las primeras pruebas se llevan a cabo en un ambiente sin salida a Internet, los archivos y los directorios donde se encuentran fueron creados dentro del directorio /var/www/ de un servidor de pruebas.

 

 

A continuación se muestra el contenido del archivo unistals.exe:

 

 

También crea el archivo Songs.exe en el directorio C:\Documents and Settings\User\Application Data\ sin contenido.

 

 

Actividad de Red

 

En uno de los paquetes de la captura se puede observar el envío de la siguiente cadena, codificada en base64:

YWRtaW4sNDgtNDctQkItNEItQkItNDcsV2luZG93cyBYUCgzMiksMTAwLFVOS05PV04tRjkzRDMwRSwsLG5hbw==

 

 

Cuya representación en ASCII es:

 

admin, 48-47-BB-4B-BB-47, Windows XP(32), 100, UNKNOWN-F93D30E, , , nao
1 2 3 4 5 6 7 8

 

A primera vista, se puede deducir que:

1 = Privilegios del usuario que inició sesión

2 = Dirección MAC del equipo

3 = Versión de Windows

5 = Nombre del equipo

 

 

Al consultar el archivo que la muestra necesitaba, http://www.rixxxx.com.br/imagens/xxxxxx/files/unistals.txt, nos dimos cuenta de que ya no estaba disponible. Mientras que www.ecoxxxxx.com.br/modules/mods/sis.php no mostraba información.

 

 

Sin embargo, al añadir como parámetro la cadena codificada en base64, fuimos redirigidos al sitio www.ecoxxxxx.com.br/modules/xxxx/sis.php?query=Listar, que parece ser un registro de los equipos infectados. Por los nombres de las columnas es posible identificar los campos 4, 6, 7 y 8 de la cadena codificada que se envía por método GET desde el equipo infectado hacia el sitio ecoxxxxx.com.br:

4 = Puede ser la versión del troyano

6 = Plugins de seguridad de los bancos

7 = Antivirus instalado en el equipo infectado

8 = Comandos

 

 

Al dar clic en “Totalizar” se obtiene la cantidad total de equipos registrados que, hasta el momento de este análisis, eran 753.

 

 

De los 753 equipos infectados la mayoría son de Brasil, aunque en la lista también se encontraron:

  • ·         15 de Estados Unidos
  • ·         2 de España
  • ·         2 de Alemania
  • ·         2 del Reino Unido
  • ·         1 de Argentina
  • ·         1 de Filipinas
  • ·         1 de Australia
  • ·         1 de Suiza
  • ·         1 de Holanda

 

En cuanto a los sistemas operativos de los equipos infectados se tiene:

  • ·         172 con Windows XP
  • ·         529 con Windows 7
  • ·         24 con Windows 8
  • ·         18 con Windows Vista
  • ·         1 con Windows Server 2003
  • ·         9 son sistemas operativos desconocidos para el troyano

 

En el campo “Plugins” se encontraron los siguientes campos referentes a instituciones brasileñas:

  • ·         BB = Banco de Brasil
  • ·         SANTA = Santander
  • ·         BRADA = Banco Bradesco
  • ·         ITAU = Banco Itaú
  • ·         CEF = Caixa Econômica Federal
  • ·         SICREDI = Banco Sicredi
  • ·         INFOSEG = Integra las bases de datos de los departamentos de seguridad pública de Brasil
  • ·         BANESTES = Banco del Espíritu Santo
  • ·         MERCANTIL = Banco Mercantil de Brasil

 

Al buscar en Google la cadena “NF_pedido04--4589511.pdf” en Google nos regresa 73 resultados, la mayoría relacionados con análisis del archivo o de URLs de dónde se podía descargar la muestra. En la siguiente tabla se pueden observar las URLs encontradas, si el troyano sigue o no activo y el servidor web. En la mayoría de los sitios el programa malicioso se encontraba alojado dentro de directorios que contenían imágenes. En aquellos sitios que tienen un estado “inactivo”, el acceso a estos directorios ha sido restringido y el troyano ha sido eliminado.

 

URL Estado Servidor Web
http://prexxxxx.com.br/fotos/nf_pedido04-4589511.pdf.zip Inactivo IIS
http://proxxx.agr.br/imgs/NF_Pedido04-4589511.pdf.zip Inactivo IIS
http://camaraxxxxxxxxx.sp.gov.br/NF_Pedido04-4589511.pdf.zip Inactivo IIS
www.interxxxxxxxxx.com.br/imagens-produtos/NF_Pedido04-4589511.pdf.zip Activo IIS
http://xxxxresponde.com.br/wp-content/NF_Pedido04-4589511.pdf.zip Activo Apache
http://200.xxx.xxx.7/images/NF_Pedido04-4589511.pdf.zip Activo Apache

 

 

 

Descargamos los archivos de los sitios activos y comparamos los hashes md5 para saber si se trataba de la misma muestra. Como se puede observar son tres muestras únicas, probablemente de la misma familia de malware. Esto se puede comprobar de varias formas: utilizando VirusTotal o incluso un solo antivirus, analizando las muestras estática o dinámicamente o empleando cualquier método heurístico.

 

 

En esta ocasión vamos a utilizar un método heurístico basado en llamadas al sistema. El procedimiento general es el siguiente: se extrae la cantidad de funciones que las muestras llaman de cada biblioteca de enlace dinámico y se crean vectores numéricos con esta información, por último se calcula la distancia euclidiana entre la muestra original y los vectores de las muestras b, c y d. Si las muestras descargadas son similares a la muestra analizada, la distancia entre ellos tendrá un valor bajo.

 

 

Como se puede observar en la imagen anterior, las muestras son similares por lo que se puede afirmar que pertenecen a la misma familia de malware.

 

 

Detalles Técnicos

 

Como se ha mencionado en análisis anteriores, el primer paso es saber si la muestra está o no empaquetada. Utilizamos la herramienta Exeinfo PE y el resultado nos indica que la muestra está comprimida y cifrada con UPX. Cabe mencionar que las muestras b y d, descargadas de los sitios web comprometidos, también se encontraban empaquetadas con UPX.

 

 

Removemos el empaquetador desde línea de comando.

 

 

Abrimos la muestra desempaquetada en IDA Pro para analizarla y revisamos las cadenas para ver si podemos obtener algún dato útil sobre el funcionamiento de la muestra.

 

 

No se encontraron cadenas con los dominios consultados, ni el nombre de los ejecutables que se descargan, tampoco directorios ni llaves de registro modificadas. En vez de eso, se encontraron cadenas que parecen estar cifradas, lo que nos hace suponer que los creadores del malware ocultaron los datos importantes para dificultar el análisis de la muestra.

 

 

Los reportes de VirusTotal, tanto del troyano analizado como de las muestras similares que se descargaron de las URLs con contenido malicioso, se muestran a continuación:

https://www.virustotal.com/en/file/699714f3545e0d2142e486b908bdaadf3dd5b714653002a4dd1ec3de25465bc3/analysis/1398125369/

https://www.virustotal.com/en/file/2511e8186fe5cc1c8df128e38b0ce9e9699671bcc9877c6b9b6f99cbb756d29d/analysis/

https://www.virustotal.com/en/file/5d8a54674981e47f8af7663f4ac595059557d8f669b16ef2c561b5ab59788083/analysis/1398125742/

Las URLs ya fueron reportadas para evitar que este troyano se siguiera propagando.