Kaspersky ha vuelto a encontrar un
troyano de lo más sofisticado: aprovecha fallos desconocidos, actúa con
sigilo, roba todo tipo de información... y está programado para Android.
Las características lo sitúan entre los más avanzados encontrados hasta la fecha para esta plataforma.
Android es la plataforma móvil contra la que se ha volcado el malware de
forma masiva. Obvian los iPhone (por su política de firma de
aplicaciones), Blackbery y Windows Phone. Los usuarios de Android son
los que deben preocuparse por el malware en estos momentos por como ya
se ha mencionado en una-al-día, es el líder indiscutible. Este malware
encontrado introduce novedades interesantes.
El malware para Android se puede meter en cuatro grandes sacos:
Principalmente los que utilizan los mensajes premium para monetizar
rápidamente la infección. El sistema es infectado y permite el envío
automático de mensajes a servicios premium SMS. Otra variante es el
malware en Android como "complemento" de los troyanos bancarios.
Oras menos conocidas como las que, siguiendo los pasos del malware para
escritorio, bloquean el teléfono buscando un rescate o que muestran
publicidad. También existe el malware que inyecta publicidad en todas
las aplicaciones... Y por último están las aplicaciones espía que
permiten a un tercero obtener información del teléfono o de la actividad
del usuario. Aquí es donde innova Backdoor.AndroidOS.Obad, como lo han bautizado.
Ofuscación de código y aprovechamiento de vulnerabilidades
El malware habitual para Windows utiliza todo tipo de trucos y astucias
para evitar la ingeniería inversa. En Android esto no es tan habitual.
Los investigadores utilizan DEX2JAR, que convierte los APK en ficheros
JAR. Estos JAR, una vez descompilados, permiten una lectura limpia del
código del malware y así entenderlo. Obad lo tiene en cuenta y actúa de
forma que, aprovechando un fallo en DEX2JAR, evita la conversión y dificulta su análisis.
También construye de manera especial el AndroidManifest.xml, fichero de
configuración que acompaña a las aplicaciones y que, sin cumplir los
estándares, es procesado por el sistema operativo. Por último aprovecha
otro error del sistema, previamente desconocido, que permite a la
aplicación tener los privilegios de "Device Administrator" (más
privilegios que el usuario normal que usa el teléfono) sin que aparezca
en la lista de aplicaciones con esos privilegios. Esto, añadido a que
corre totalmente en el "background", impide acceder a ningún punto donde se pueda borrar la aplicación a nivel "normal". También intenta hacerse "root" ejecutando el comando "su id", y así también comprobar si el terminal está "rooteado".
Por último, cifra y ofusca todos las URL de sus sistemas de control externos a los que envía y desde los que recibe información.
Qué hace
Fundamentalmente, robar información del teléfono. Pero sobre todo, lo interesante es saber qué instrucciones recibe de sus sistemas de control. Las más relevantes son:
- Enviar mensajes SMS a números que se le pasan por parámetro y bloquear las respuestas.
- Recibir el saldo de la cuenta a través de USSD (Unstructured Supplementary Service Data).
- Actuar como proxy.
- Conectarse a diferentes direcciones (para actuar como clicker en anuncios, por ejemplos)
- Abrir una consola en el teléfono y ejecutar comandos.
- Enviar ficheros a los dispositivos Bluetooth alrededor.
Kaspersky también publica cómo se realiza la comunicación (a través de JSON, como viene siendo habitual) con los atacantes.
Como bien indican en la conclusión de su estudio, este malware se acerca
en sus prácticas a lo que podría entenderse como comportamientos
habituales del malware en el mundo Windows. Desde luego, ha ganado en
sofisticación, pero también resulta avanzado el uso de vulnerabilidades concretas previamente desconocidas para Android, algo poco habitual incluso para el malware en Windows.
Más información:
The most sophisticated Android Trojan
Sergio de los Santos
Twitter: @ssantosv