El troyano más sofisticado de Android analizado al milímetro: características y funcionamiento al descubierto
Las amenazas contra Android parece que siguen desarrollándose y atacando a la plataforma. En este caso ya sabéis que el malware se mueve hacia donde esté el dinero, y eso convierte a Android en objetivo teniendo en cuenta que es una de las plataformas con más usuarios a nivel global (eso si no llega a ser la mayor).
Aunque cuestione mucho el verdadero significado del malware en Android, hoy es noticia porque se ha encontrado el troyano más sofisticado para Android hasta ahora. La pista nos viene de Securelist (Kaspersky, para ser exactos), donde han analizado una aplicación que contenía el citado malware, además del troyano en profundidad.
Bautizado con el nombre de Backdoor.AndroidOS.Obad.a., con un código totalmente encriptado y muy complejo, resulta ser un troyano con capacidad para enviar y recibir SMS, descargar, instalar y enviar vía WiFi o Bluetooth archivos (suponemos que maliciosos) y usar comandos en la consola de forma remota. Además está hecho para hacer la vida imposible a los expertos: usa vulnerabilidades de todo tipo: desde no cumplir con las normativas de Google en el AndroidManifest.xml (no en el sentido de que los permisos no aparezcan, sino en el sentido de que hace imposible usar análisis dinámicos) hasta permanecer oculta en la lista de Administradores del Dispositivo, cosa mucho más grave.
Su funcionamiento de cara al usuario es bastante sencillo porque, simplemente, casi no existe: funciona en segundo plano y no tiene ningún tipo de interfaz visual. En lo único en lo que participa el usuario es en instalar la aplicación (con sus consiguientes permisos muy cuestionables, como podéis ver en la captura) y en conceder permisos de administrador del sistema, cosa que solicita bajo el nombre de System nada más ser instalada. El problema aquí es que, gracias a la vulnerabilidad antes mencionada, al tener esos permisos no se puede borrar y no aparece entre los Administradores de Dispositivo, por lo que virtualmente seguiría así indefinidamente.
Aunque tampoco desaprovecha el permiso de bloquear la pantalla concedido antes: al ser Administrador del Dispositivo puede mantener bloqueada la pantalla hasta un máximo de 10 segundos. Teniendo en cuenta que esto ocurre cada vez que establece una conexión vía WiFi y Bluetooth, lo que hace es aprovechar ese tiempo para no ser descubierta y transmitir el mismo troyano a dispositivos cercanos. Y por otra parte, el programa también intenta obtener permisos Root usando «su id» en la consola.
Por otra parte, también se comunica con los administradores del malware, empezando por enviar la información obtenida con ese «su id» si ha tenido éxito. Además, una vez se ha ejecutado por primera vez envía toda esta información:
- Dirección MAC del Bluetooth
- Nombre de la operadora
- Número de teléfono
- IMEI
- Balance de la cuenta del usuario
- Si se han obtenido permisos de administrador del dispositivo o no
- Hora local
Toda esta información se envía de forma encriptada a un servidor situado en el dominio web androfox.com (caído a la hora de publicar este artículo, podéis consultar la versión en la caché de Google aquí), y la operación se repite cada vez que realiza una conexión. Además, el dispositivo recibe una tabla con números de teléfono premium junto a sus prefijos a los que enviar mensajes, una lista de tareas y una lista de servidores pertenecientes a una Botnet. Esta lista se va actualizando según se van haciendo conexiones al servidor, y a partir de esas actualizaciones que contienen la acción a realizar, la hora a la que hacerlo y una serie de parámetros, puede ejecutar las siguientes acciones:
- Enviar mensajes conteniendo texto y números, además de eliminar las respuestas
- Realizar un PING
- Usar USSD para acceder al «monedero» del usuario
- Actuar como servidor Proxy
- Conectar a una URL específica
- Descargar e instalar aplicaciones provenientes del servidor
- Enviar una lista de aplicaciones instaladas al servidor, además de información específica sobre cada una
- Enviar los datos personales del usuario al servidor
- Ejecutar comandos en la consola a distancia
- Enviar un archivo a todos los dispositivos detectados vía Bluetooth
Además, los creadores del troyano también pueden enviar mensajes de texto que el malware buscará en todos los mensajes entrantes (buscando en concreto las extensiones que dictaminan sus acciones) para controlar remotamente el funcionamiento del malware.
Sin embargo, y a pesar de sus capacidades, Backdoor.AndroidOS.Obad.a no está para nada extendido: después de un rastreo de tres días llevado a cabo en base a los datos de Kaspersky Security Network, no consiguió infectar más de un 0.15% de dispositivos en todos sus intentos realizados. Por otra parte, Roman Unuchek añade que este malware está mucho más cerca de uno diseñado para Windows que uno diseñado para Android debido a su complejidad y al uso de tantas vulnerabilidades desconocidas hasta ahora, lo cual indica que el malware para Android se está desarrollando más deprisa de lo que esperábamos. De todas formas os recomiendo leer su artículo entero, lleno de información técnica sobre el troyano y los métodos que emplea para funcionar.
Llegados a este punto, toca hacer un breve resumen de lo expuesto hasta ahora: un malware para Android tremendamente avanzado y que, aprovechandose del desconocimiento del usuario y de unas cuantas vulnerabilidades, consigue hacerse dueño y señor del dispositivo para conseguir sus propósitos y permanecer oculto a ojos del usuario. Su impacto es muy alto debido a las capacidades que tiene, aunque por suerte no ha conseguido extenderse mucho.
Como soluciones para este problema, tenemos por ejemplo que las soluciones de seguridad de Kaspersky para Android ya detectan este malware e impiden su instalación, aunque personalmente creo que la solución pasa por solucionar el problema situado entre la pantalla y la silla: no es de sentido común ni instalar una aplicación que pida todos esos permisos de buenas a primeras (y menos con un nombre tan «intentemos parecer algo del teléfono») ni mucho menos darle acceso a los privilegios de ser Administrador del Dispositivo.
La solución es concienciar de verdad a los usuarios con los permisos, cosa en la que hay un gran avance hoy en día (aunque parece seguir siendo insuficiente viendo ataques como estos), y dejar atrás malas costumbres como el Síndrome Windows (Continuar x veces, Acepto los Términos y Condiciones de Usuario, continuar y veces e instalar, todo ello son leer absolutamente nada). Y nunca está de más recordar unos cuantos consejos con los que podremos mantener a nuestro Android completamente seguro de las amenazas:
- Protege tu Android de accesos no autorizados con un método de seguridad como Face Unlock, un patrón de desbloqueo o una contraseña.
- Descargar aplicaciones de los canales oficiales y contrastados, como Play Store o Amazon AppStore, por citar dos ejemplos. Desconfía de las demás fuentes.
- ¿Que reputación tiene el desarrollador? ¿Y la aplicación? Comprueba todo esto antes de descargar cualquier app
- Importante: mira los permisos de cada aplicación dos veces antes de instalar, y si no estas seguro no la instales. No es razonable que un juego cualquiera nos pida permiso para enviar y recibir SMS u otros permisos que le permitan acceder al sistema de una forma más profunda, por ejemplo.
- Una suite de seguridad es opcional o incluso completamente inútil: esto funciona a gusto del usuario (por ejemplo, como podréis deducir a partir del artículo, no me gustan y las desaconsejo). Eso sí, aquí apartamos a un lado las aplicaciones que cumplen la función de localizar nuestro teléfono y etcétera como Cerberus o AndroidLost.
- Y el más importante de todos: Sentido común. Con esto no necesitamos más medidas de seguridad.