Han pasado tres años desde que Dinero, municiones y dos troyanos codiciosos: Robo de bancos en el siglo XXI se publicara en esta bitácora. El artículo describe el primer programa malicioso diseñado para atacar a usuarios de un software para banca online desarrollado por la compañía BIFIT. Ahora existen varios programas maliciosos con similar funcionalidad, entre ellos:
- Trojan-Spy.Win32.Lurk
- Trojan-Banker.Win32.iBank
- Trojan-Banker.Win32.Oris
- Trojan-Spy.Win32.Carberp
- Trojan-Banker.Win32.BifiBank
- Trojan-Banker.Win32.BifitAgent
Aunque su funcionalidad ya no es única, el último programa de la lista llamó nuestra atención.
Palabras e hilos usados por Trojan-Banker.Win32.BifitAgent
Este particular programa malicioso posee varias características que lo distinguen de sus similares.
Arquitectura
Este programa malicioso ejecuta dos módulos principales en el equipo capturado: un archivo ejecutable y un archivo comprimido JAVA. Mientras se instala, crea la carpeta C:DOCUMENTS AND SETTINGSADMINISTRATORAPPLICATION DATABIFIT_A, en la que se copian los siguientes archivos:
- AGENT.EXE v, el principal módulo ejecutable responsable de las comunicaciones con el servidor de comando. Este módulo es capaz de autoactualizarse, gestionar procesos, ejecutar comandos mediante CMD.exe, y descargar y ejecutar cualquier archivo, siempre obedeciendo los comandos provenientes del servidor de comando.
- ALL.POLICY v, un archivo de configuración JAVA que elimina cualquier restricción de seguridad relacionada con JAVA.
- BIFIT_A.CFG v, el archivo de configuración de los programas maliciosos que incluye el número de identificación de los sistemas infectados y las direcciones de los servidores de comando.
- BIFIT_AGENT.JAR v, un archivo comprimido JAVA que contiene el código para interactuar con los sistemas de BIFIT.
- JAVASSIST.JAR v, un archivo comprimido JAVA y que incluye las funciones adicionales que requiere BIFIT_AGENT.JAR.
Fragmento del codigo deTrojan-Banker.Win32.BifitAgent responsable de la instalacion y autoejecucion de los modulos en un sistema infectado
En el transcurso de su funcionamiento, este programa malicioso también crea varios “pipes” con nombres.
- .pipe10c86ecd42 v, para identificación.
- .pipe10c86ecd51 v, para registrar sus propias acciones.
- .pipe10c86ecd52 v, para comunicarse con BIFIT_AGENT.JAR.
Como resultado, durante el funcionamiento del programa malicioso, el principal módulo ejecutable, que es el responsable de la comunicación con el servidor de comando, funciona de forma simultánea con los archivos maliciosos JAR, lo que permite a los atacantes modificar de forma instantánea cualquier código que se ejecute con JAVA mientras se llevan a cabo las transacciones bancarias.
BIFIT_AGENT.JAR
Por defecto, BIFIT_AGENT.JAR, que contiene el código que permite interactuar con los sistemas BIFIT, queda profusamente ofuscado y todas las clases que contiene se fragmentan en 156 archivos divididos aleatoriamente en subcarpetas.
Ejemplo de contenidos ofuscados de BIFIT_AGENT.JAR v
La ofuscación dificulta aún más el análisis de los archivos que interactúan con los sistemas BIFIT, aunque es posible reconstruir las acciones del programa malicioso ya que el archivo posee amplias capacidades relacionadas con el registro de sus propias acciones.
El segmento de la funcionalidad de BIFIT_AGENT.JAR responsable de interceptar las transacciones bancarias que se realizan a traves de los sistemas BIFIT
El análisis de la funcionalidad incluida en BIFIT_AGENT.JAR demuestra que la principal función de los archivos JAR es falsear los datos utilizados en las transacciones bancarias realizadas desde los equipos infectados. Y todo esto es transparente para el usuario, ya que los datos que se falsean son los que se envían al banco, no los que ve el usuario. El uso de un token USB en la transacción no es ningún obstáculo para los atacantes, ya que el token firma la transacción sólo después de que los datos se han falseado.
Por desgracia, al momento de redactar este artículo ya no estaban disponibles los servidores de comando que devuelven los números de cuentas a los que se transfieren los fondos robados.
Firma
Una de las características particulares de Trojan-Banker.Win32.BifitAgent es que incluye una firma digital. Al momento de redactar este artículo (16 de abril de 2013), la colección de programas maliciosos de Kaspersky Lab incluía alrededor de 10 variantes del programa malicioso, todas con una firma válida emitida por Accurate CNC.
Firma digital de Trojan-Banker.Win32.BifitAgent
Accurate CNC es una compañía real. Cuenta con un sitio web (http://www.accuratecnc.com/) y ofrece equipos y software para el diseño de dispositivos electrónicos. Vale la pena remarcar que la versión pública de prueba de su programa, PhCNC Demo v3.26.4 está firmada con el mismo certificado que el programa malicioso.
Firma digital del programa CNC-s PhCNC Demo v3.26.4 de Accurate
En otras palabras, se trata de una firma digital robada que los ciberdelincuentes usan para firmar sus programas maliciosos.
Comparacion de los certificados usados por Trojan-Banker.Win32.BifitAgent y Accurate CNC-s PhCNC Demo v3.26.4
Nos pusimos en contacto con representantes de GlobalSign y el certificado se revocó.
Conclusión
Hemos detectado instalaciones de Trojan-Banker.Win32.BifitAgent en equipos que son parte de redes zombi creadas para utilizar programas maliciosos como Trojan.Win32.DNSChanger, Backdoor.Win32.Shiz, Virus.Win32.Sality, etc. No hemos detectado ninguna propagación mediante exploits.
A partir de la selectividad de las infecciones, podemos deducir que los ciberdelincuentes venden equipos infectados en los cuales otros delincuentes detectan sistemas bancarios BIFIT y proceden a instalar Trojan-Banker.Win32.BifitAgent en dichos equipos.
Según los datos proporcionados por KSN, unos 100 usuarios de Kaspersky Lab han sido víctima de ataques de programas maliciosos desde principios de abril. Vale la pena notar que la cantidad de ataques por usuario crece día a día.
En resumen, los ciberdelincuentes se aprovechan de la arquitectura de los programas maliciosos, del certificado robado y del carácter dirigido de los ataques para poco a poco aumentar el número de usuarios infectados. Con lo cual, las cuentas bancarias de los ciberdelincuentes crecen.
Dinero, municiones y dos troyanos codiciosos, segunda parte