martes, 11 de junio de 2013

Avanzado malware para Android aprovecha vulnerabilidades desconocidas

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

1 comentario:

  1. Suficientte del problema... y la solución??? que no sea dejar de usar Android?

    ResponderEliminar