Troyano para Android, como ejecuta instrucciones

0

En nuestra anterior noticia sobre el Troyano más sofisticado aparecido para Android, explicamos como se manifestaba en el sistema y obtenía permisos. Hoy vamos a completar la explicación detallando su método de trabajo y envío de información a sus dueños.

Comunicación con sus creadores

La información sobre aquellos privilegios de superuser que han sido satisfactoriamente obtenidos es enviada a su servidor de Comando y Control -o C&C como solemos decir-. El hecho de obtener estos privilegios pone al cibercriminal en una posición ventajosa cuando tiene que ejecutar comandos en la consola de forma remota.

Tras la primera ejecución, la aplicación maliciosa recopila los siguientes datos y los envía al servidor C&C situado en androfox.com:

1. Dirección MAC del dispositivo bluetooth

2. Nombre del operador

3. Número de teléfono

4. Número IMEI

5. Gasto de la cuenta telefónica del objetivo

6. Se especifica si se han obtenido (o no) privilegios de administrador

7. Hora local

La información reunida se envía al servidor en forma de objeto encriptado JSON.

Información encriptada es enviada a www.androfox.com

Esta información será enviada a su C&C actual cada vez que sea establecida la conexión. Adicionalmente, el malware reporta su estado a su creador: envía la tabla actual de números premium y prefijos a los que enviar mensajes de texto (parámetro “aos“) y la lista de servidores C&C. Durante la primera sesión de comunicación con su servidor de control, envía una tabla en blanco y una lista de servidores C&C desencriptados como mencionamos anteriormente. Durante esta sesión de transferencia de datos, el Troyano podría recibir una tabla actualizada de números premium y otra de nuevas direcciones de C&C.

En respuesta, el servidor de comando envía otro objeto JSON que, una vez desencriptado, ofrecería este aspecto:

{“nextTime”:1,”conf”:{“key_con”:”oKzDAglGINy”,”key_url”:”3ylOp9UQwk”,
“key_die”:”ar8aW9YTX45TBeY”,”key_cip”:”lRo6JfLq9CRNd6F7IsZTyDKKg8UGE5EICh4xjzk”}}

Next time es la hora de la siguiente conexión planificada entre ambos.

Conf son cadenas de configuración.

Las cadenas de configuración pueden contener instrucciones para la conexión con nuevos servidores C&C, tablas de números con prefijos y claves para destinar a mensajes de texto, o nuevas tareas con sus parámetros. Además podrían incluir claves para tráfico encriptado (key_cip).

Los cibercriminales también pueden usar mensajes de texto para ejercer control sobre el troyano. Las cadenas de configuración podrían contener cadenas de claves (key_con, key_url, key_die) que el troyano buscará en mensajes de texto entrantes y ejecutar acciones precisas si están indicadas.

Cada mensaje entrante es analizado en busca de presencia de alguna de estas claves. Si se encuentran, se ejecuta la acción correspondiente:

key_con: establece conexión con el C&C de forma inmediata.

key_die: elimina las instrucciones de la base de datos.

key_url: conecta con un nuevo servidor de C&C. Esta instrucción debe ser acompañada de la dirección correspondiente. De esta forma el cibercriminal puede variar su servidor de control enviando un mensaje de texto simple al dispositivo infectado. 

Código interno del del malware

Instrucciones del C&C

El Troyano recibe instrucciones de su servidor/es de comando y control y los graba en su base de datos. Cada instrucción grabada en esta base de datos contiene la secuencia de números de dicha instrucción, la hora a la que será ejecutada y sus parámetros.

a) Envío de mensaje de texto. Los parámetros deben contener números y texto. Las respuestas se borran.

b) PING.

c) Obtención del balance de gasto vía USSD.

d) Actuación como proxy (enviar datos específicos a un destino específico y comunicar la respuesta)

e) Conexión a una dirección específica (clicker)

f) Descarga de un archivo del servidor y ejecutarlo.

g) Envío de una lista de aplicaciones instaladas en el terminal hacia el servidor.

h) Envío de datos de una aplicación específica instalada al servidor.

i) Envío de datos de contactos del usuario hacia el servidor.

j) Remote Shell (Símbolo de sistema). Ejecución de comandos en la consola, directamente especificados por el criminal.

k) Envío de un archivo a todos los dispositivos encontrados cerca mediante el estándar Bluetooth.

Esta última instrucción habilita al Troyano de Android OBad.a para esparcir sus archivos nocivos mediante Bluetooth. El servidor de Control recibe la respuesta con la dirección de los equipos localizados por el dispositivo infectado e intenta por último introducirlos en esos sistemas.

A pesar de sus impresionantes capacidades (sobre todo para un troyano que opera en Android) su difusión es limitada. Tras un período de observación de varios días por la red KSN, Obad.a solo ha acaparado el 0,015% de infecciones en cuanto a amenazas gloables para dispositivos móviles.

No podemos concluir sin otorgar a Backdoor.AndroidOS.Obad.a un mayor parecido con un malware para Windows que con cualquier otra amenaza conocida para Android (en términos de complejidad) Esto debe hacernos pensar que las amenazas para este sistema operativo evolucionan rápidamente en sofisticación.

Compartir.

Sobre el Autor

Alejandro es técnico micro-informático, experto en seguridad de las TIC y apasionado de la tecnología. Colabora habitualmente en diferentes publicaciones de seguridad, software y análisis de hardware entusiasta.

Dejar una Respuesta

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR