IcoScript, el malware con un sistema de comunicación más que curioso

viernes, 12 de septiembre de 2014

IcoScript es un RAT (sistema de administración remota) descubierto en agosto por G-Data más o menos normal... excepto por su forma de contactar con su servidor y recibir órdenes. La novedad consiste en que, en vez de comunicarse con su C&C directamente, lo hace con mails creados y recibidos a través del correo web de Yahoo!, lo que implica pasar bastante desapercibido entre el tráfico "habitual". Veamos más detalles.

Desde hace años, el malware no funciona de forma "standalone". No tiene sentido. Por varias razones. Comunicarse con el exterior le permite:

  • Recibir órdenes (en el caso de los RATs).
  • Propagarse (lo creamos o no, esto está en desuso).
  • Obtener una configuración dinámica que le permita funcionar incluso cuando las condiciones cambian.
  • Y lo más importante: deben dejar en algún punto el "botín" y enviar a los atacantes los datos (cualesquiera que sea su naturaleza) robados.

Para conseguirlo, el proceso habitual fue, en principio y durante años, que el atacante se conectara a la máquina. Desde 2004, era el sistema infectado el que se conectaba a través de diferentes puertos al sistema. Poco más tarde, se estandarizó el tráfico HTTP para pasar desapercibido y sortear cortafuegos. De nuevo, no mucho más tarde, el cifrado (con estándares o no) de ese tráfico HTTP. En seguida, vino el uso de dominios cambiantes, dinámicos, FastFlux.... todo para sostener la infraestructura en el tiempo y que no se dependiese de un único punto de fallo para el malware. En los últimos tiempos, se ha popularizado la comunicación P2P entre malware y el uso de la red TOR. Estos métodos hacen que sea muy difícil que caiga la infraestructura, pero no oculta especialmente la actividad del malware, que puede ser detectada de forma relativamente "sencilla" analizando tráfico sospechoso o direcciones de destino poco habituales.

Método "tradicional" de comunicación con un C&C


IcoScript lo que hace es trabajar de forma original en dos puntos muy concretos: intentar que el tráfico pase desapercibido y conseguir que la infraestructura sea "imposible" de tirar, pues usa el correo web de Yahoo!.

Cómo exactamente

Lo que hace el malware es aprovechar Internet Explorer para visitar Yahoo! Mail e interpretar los correos que le envía el atacante, y a su vez enviarle a él la comunicación. El esquema sería el siguiente:

Esquema del método de comunicación de IcoScript

Para conseguirlo, internamente en el sistema infectado, se comunica con Internet Explorer a través de una instancia COM con el navegador. Esto permite que, de cara al sistema, sea el propio Internet Explorer el que realiza la conexión con Yahoo! Mail, recoja la información, cree los correos... El troyano solo tiene que construir las URLs, buscar los TEXTAREA, rellenarlos, enviar... Todo de forma "invisible" en el sistema.

Con esto consigue algo muy interesante, y es que, de cara a los IDS, forenses, etc, la actividad realizada sea de lo más "normal". Apenas se detectará que a través del navegador se ha visitado Yahoo! Mail y enviado correos a un atacante... y solo si se revisan los logs... Esto le ha permitido pasar desapercibido al menos desde 2012.

Con este método, resulta imposible bloquear un dominio "desconocido" (a través de lista blanca o negra) con el que se comunique el malware.

Otros detalles

El malware utiliza un archivo .ico (con el icono de Adobe Reader) que en realidad contiene, ofuscado, código scripting inventado por los atacantes. El lenguaje hace que las variables se compongan de acciones, pasos... Así consigue, poco a poco, ir a la página de http://mail.yahoo.com, y a través de comunicación COM con el navegador, rellenar el usuario, contraseña, entrar, comprobar el correo... y recibir órdenes. Lo hizo con Yahoo!, pero nada impide intentarlo con otros servicios de correo web.

Utiliza los caracteres "<<<<<<<<"COMANDO">>>>>>>>" en los correos para que el malware sepa qué hacer exactamente. Dado que el flujo de comunicación con Yahoo! se hace por gzip, y solo se descomprime en el navegador, en la red no se vería nada de eso si se intenta detectar, puesto que se comprime fácilmente.

De cara al usuario, solo sería necesario "una instancia" de Internet Explorer en el sistema, que estaría llevando a cabo toda la comunicación. El troyano que lo ha abierto, podría estar oculto en otro proceso cualquiera, más oculto aún como rootkit... De cara al IDS o los detectores en la red, se estaría enviando un simple correo por Yahoo! Ingenioso, realmente.


Sergio de los Santos
ssantos@11paths.com

No hay comentarios:

Publicar un comentario en la entrada