Grabit y RATs

Hace poco, clientes de Kaspersky en Estados Unidos recurrieron a los expertos de Kaspersky, solicitándoles investigar un nuevo tipo de programa malicioso que lograron recuperar de los servidores de sus organizaciones. Este programa malicioso se llama Grabit y se distingue por su comportamiento versátil. Cada una de las muestras que analizamos tenía tamaño y actividades diferentes respecto a las otras, pero el nombre interno y otros identificadores eran perturbadoramente similares. La marca de tiempo parece ser válida y próxima a la cronología de infección documentada. Nuestra documentación apunta a una campaña que comenzó a fines de febrero de 2015 y concluyó a mediados de marzo. Cuando se supone que terminó la fase de desarrollo , el programa malicioso comenzó a propagarse desde India, Estados Unidos e Israel por el mundo entero.

Las decenas de muestras que logramos obtener estaban programadas en un equipo con plataforma Windows y procesador de 32bit, en .NET Framework de Microsoft (Visual Basic/C#). Los archivos se compilaron durante tres días, entre el 7 y el 9 de marzo de 2015. El siguiente gráfico ilustra cómo el grupo, o el individuo, crearon las muestras, el tamaño de cada una, la hora del día en que se compilaron, y los intervalos de tiempo entre cada compilación.

Cronología de compilación del programa malicioso

La muestra más pequeña (0,52Mb) y la más grande (1,57Mb) se crearon el mismo día, lo que podría indicar que el grupo realizaba experimentos para probar sus funciones, empacadores e implementaciones de “códigos muertos”.

El cuadro revela el modus operandis a medida que el actor se esfuerza siempre para alcanzar una variedad de muestras, código de diferentes tamaños y, supuestamente, una ofuscación más complicada.

Junto a esta variedad de tamaños, actividades y ofuscación, se implementó en cada muestra un sólido algoritmo de cifrado. La cadena ofuscada, clases y métodos exclusivos dificultaron su análisis. También se encuentra activada la ASLR, lo que puede ser un indicio de un RAT de código abierto o incluso un framework comercial que empaquetó el programa malicioso en una estructura bien escrita. Este tipo de trabajo se conoce como un factor de mitigación para que los actores mantengan su código oculto a los ojos de los analistas.

Durante nuestra investigación, el análisis dinámico mostró que la función “call home” del programa malicioso se comunica mediante canales obvios y no se esfuerza por ocultar su actividad. Además, los archivos no estaban programados para realizar ningún tipo de maniobras en el registro para ocultarse de Windows Explorer. En sentido figurado, parece que los actores están enviando a la guerra a un “caballero débil en armadura pesada”. Es decir, quienquiera que haya desarrollado el programa malicioso, no escribió todo el código desde cero. Un caballero bien entrenado nunca iría a la guerra con un escudo y una espada de madera.

Al mirar el tráfico “call home”, la función keylogger prepara archivos que actúan como contenedores para intercepciones del teclado, recopilando nombres de hosts, de aplicaciones, de usuario y contraseñas. Sin embargo, lo interesante se encuentra aquí.

Los nombres de archivo contienen una cadena muy informativa:

HawkEye es una herramienta comercial que viene desarrollándose desde hace varios años. Apareció en 2014 como un sitio llamado HawkEyeProducts, e hizo una contribución famosa a la comunidad hacker.

En el sitio, el producto muestra una gran versatilidad, ya que contiene muchos tipos de RATs, funciones y características, como el registrador HawkEye tradicional u otros tipos de herramientas de administración remota, como Cyborg Logger, CyberGate, DarkComet, NanoCore y otras. Parece admitir tres tipos de entregas: FTP, SMTP y Web-Panel.

Como se ve, este programa malicioso utiliza varios RATs para controlar a sus víctimas o hacer seguimiento de sus actividades. Una de las implementaciones exitosas de este actor contenía el reconocido DarkComet. Esta conveniente función “elige tu RAT” desempeña un papel muy importante en la infección del programa malicioso, la rutina y la sobrevivencia en el equipo de la víctima. Las muestras de DarkComet son más complicadas que el registrador HawkEye tradicional. Una instancia tenía un generador de llaves aleatorias que fija un vector de inicialización para los 4 primeros bytes del archivo ejecutable y agrega una llave aleatoria de 5 bytes que desempaqueta otro archivo PE, de menos de 20Kb de tamaño. El archivo PE contiene otro empaquetador con una técnica de ofuscación mucho más compleja. La última muestra que probamos tenía un comportamiento muy complicado. El código tenía la misma técnica de ofuscación, aunque el tráfico no se transfería en texto simple. Los datos robados se empaquetaban y enviaban cifrados mediante puertos HTTP aleatorios. Esto significa que el grupo está tratando de producir otros tipos de muestras maliciosas con RATs diferentes.

Se han recopilado aproximadamente 10.000 archivos robados. Las compañías con sede en Tailandia e India tenían el mayor porcentaje de equipos infectados. Al observar las credenciales robadas, queda claro que los empleados se enviaban el programa malicioso entre sí, pues los nombres de hosts robados y las aplicaciones internas son los mismos.

A continuación se muestra el cuadro completo, actualizado a mayo de 2015:

Clasificación por país del programa malicioso

Demostrando la efectividad de sus sencillos keyloggers, un C2 (el 15 de mayo) contenía miles de credenciales de cuentas víctimas de Cientos de sistemas infectados.

En resumen, los actores de Grabit no usaron evasiones ni maniobras sofisticadas en sus actividades dinámicas. Resulta interesante ver las diferencias principales entre el desarrollo básico del programa malicioso y las funciones reales que usa.

Algunas muestras del programa malicioso usaban el mismo servidor hosting e incluso las mismas credenciales. ¿Será que nuestro actor estaba apurado?
Nuestra apuesta es que estamos ante un grupo y no ante un solo individuo. Algunos miembros del grupo son más técnicos, y otros están más orientados hacia la seguridad y más conscientes de los riesgos a que pueden exponerse.

Volviendo al principio

Por lo que hemos visto hasta ahora, este programa malicioso se propaga como un archivo de Microsoft Office Word (.doc) adjunto de correo, que contiene un macro malicioso llamado AutoOpen. Este macro abre un socket en TCP y envía una petición HTTP a un servidor remoto, pirateado por el grupo para usarlo como un hub malicioso, antes de descargar el programa malicioso. En algunos casos, el macro malicioso estaba protegido por contraseña, pero nuestro actor puede haber olvidado que un documento .doc es en realidad un archivo comprimido y que cuando se abre con un editor apropiado, las cadenas del macro se muestran en texto simple.

El programa malicioso actúa de una forma evidente, modificando entradas de registro comunes, como las configuraciones de arranque, sin cubrir su rastro. En la mayoría de los casos, sus binarios no se eliminan, y su comunicación es en texto simple, donde la víctima puede espiar la comunicación y capturar las credenciales del servidor FTP/SMTP.

Los derivados del programa malicioso se encuentran principalmente en:

Extensiones phishing: .doc

3f77403a64a2dde60c4962a6752de601d56a621a

4E7765F3BF73AEC6E350F412B623C23D37964DFC

Iconos: .pdf, .doc, .ttf, .xls, .ppt, .msg, .exe

Stealer: .txt, .jpeg, .eml

Nombres de ejecutables adicionales:

AudioEndpointBuilder.exe
BrokerInfrastructure.exe
WindowsUpdate.exe

Extensiones del programa malicioso: .zip o .exe

9b48a2e82d8a82c1717f135fa750ba774403e972b6edb2a522f9870bed57e72a

ea57da38870f0460f526b8504b5f4f1af3ee490ba8acfde4ad781a4e206a3d27

0b96811e4f4cfaa57fe47ebc369fdac7dfb4a900a2af8a07a7b3f513eb3e0dfa

1948f57cad96d37df95da2ee0057dd91dd4a9a67153efc278aa0736113f969e5

1d15003732430c004997f0df7cac7749ae10f992bea217a8da84e1c957143b1c

2049352f94a75978761a5367b01d486283aab1b7b94df7b08cf856f92352166b

26c6167dfcb7cda40621a952eac03b87a2f0dff1769ab9d09dafd09edc1a4c29

2e4507ff9e490f9137b73229cb0cd7b04b4dd88637890059eb1b90a757e99bcf

3928ea510a114ad0411a3528cd894f6b65f59e3d52532d3e0c35157b1de27651

710960677066beba4db33a62e59d069676ffce4a01e63dc968ad7446158f55d6

7371983a64ef9389bf3bfa8d2abacd3a909d13c3ee8b53cccf437026d5925df5

76ba61e510a340f8751e46449a7d857a2d242bd4724d0d040b060137ab5fb31a

78970883afe52e4ee846f4a7cf75b569f6e5a8e7a830d69358a8b33d186d6fec

7c8c3247ffeb269dbf840c7648e9bfaa8cf3d375a03066b57773c48de2b6d477

7f0c4d3644fdcd8ac5bc2e007bb5c3e9eab56a3d2d470bb796af88125cd74ac9

Direcciones IP:

31.220.16.147
204.152.219.78
128.90.15.98
31.170.163.242
185.77.128.65
193.0.200.136
208.91.199.223
31.170.164.81
185.28.21.35
185.28.21.32
112.209.76.184

Publicaciones relacionadas

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *