Reporte de técnicas usadas para bloquear el móvil y como eliminarlo. Conocemos el Virus de la Policía que afecta a los ordenadores bloqueando la pantalla y pidiendo dinero para desbloquear el sistema, el comportamiento típico de …

 … cualquier "ransomware". Recientemente se ha descubierto una versión para Android. Vamos a mostrar las técnicas usadas por el atacante para forzar que el malware permanezca en primer plano y persista al reinicio del dispositivo. Por último, ofreceremos una forma para eliminarlo del dispositivo. 

 
Si ejecutamos el Virus de la Policía en el emulador de Android, vemos una página web en la que nos pide dinero para desinstalar la aplicación. 
 
Al igual que ocurre con la versión de escritorio, sin pagar, es imposible de salir de la aplicación porque siempre vuelve al primer plano y no nos deja suficiente tiempo para desinstalarla a partir del menú "Ajustes" de Android. 
 
http://3.bp.blogspot.com/-uPLP2-oepSM/U3NBD54IeTI/AAAAAAAABAE/FKVoW5l846g/s1600/Virus_Policia_Android_1.png
 
Hemos usado "jd-gui" para decompilar la aplicación. Sin embargo, con la ofuscación y las técnicas de anti-decompilación, el decompilador no puede decompilar todas las partes del programa por lo que tenemos que usar Eclipse para depurar la aplicación (mediante la técnica que explicamos en el blog del Laboratorio de Hispasec http://laboratorio.blogs.hispasec.com/2014/04/depurar-malware-android-con-eclipse_23.html).
 
Es importante observar que las partes de código mostradas en esta entrada han sido convenientemente tratadas. 
 
Para empezar, analizamos el archivo de configuración de la aplicación "AndroidManifest.xml", que contiene actividades, servicios, permisos usados, identificador de la aplicación (package name), etc. Vemos que el malware tiene el nombre de paquete "com.android". Con el filtro "MAIN", podemos comprobar que la actividad "MainActivity" es la primera que se ejecuta cuando el usuario ejecuta la aplicación.

Después, se definen dos receptores "ScheduleLockReceiver" y "ScheduleUnlockReceiver" para ejecutarse en procesos diferentes por la etiqueta ":remote" (se explicarán más detalladamente). Por último el "BootstrapReceiver" es un clase que va a registrarse al evento "BOOT_COMPLETED" del móvil y que se llama durante la inicialización del móvil con la prioridad mas alta "999". De esta forma permite la persistencia al reinicio del móvil. Al tener la prioridad más alta, será una de las primeras clases llamadas durante la inicialización del móvil. 

 
http://2.bp.blogspot.com/-FKxrgOE5pII/U3NBj7_8MHI/AAAAAAAABAQ/L2n8JxkSXAg/s1600/Virus_Policia_Android_2.png
 
Mirando el código decompilado de la clase "MainActivity", vemos que lanza la actividad "LockActivity" llamando a la función "startActivity". 
 
En la actividad lanzada hemos encontrado la función "dispatchKeyEvent" que permite al atacante monitorizar y anular los botones del dispositivo (como HOME, BACK, y MENU) y así evitar que el usuario salga de la aplicación fácilmente. 
 
http://4.bp.blogspot.com/-OwHejHaULu8/U3NCoY7653I/AAAAAAAABAY/H5Fa5FcyoDM/s1600/Virus_Policia_Android_3.png
 
Esa misma clase va a lanzar en segundo plano el servicio "LockService", que va a programar dos tareas "ScheduleLockReceiver" y "ScheduleUnlockReceiver" a través del "AlarmManager". La primera tarea se ejecuta cada 2 segundos mientras que la segunda tarea se lanza cada 600 segundos. Como la segunda tarea no está implicada directamente en el bloqueo de la pantalla, nos concentramos en la primera tarea. 
 
http://1.bp.blogspot.com/-RfNG0miUHx4/U3NDRQz5AvI/AAAAAAAABAg/iRpj8AZg81o/s1600/Virus_Policia_Android_4.png
 
Cada vez que la tarea se ejecuta, se ejecuta la función "onReceive" y lanza el servicio "LockService" pasando el parámetro "start.event.type" 
a 2. 
 
http://3.bp.blogspot.com/-IsJ3ezgrI8k/U3NDZh3oXUI/AAAAAAAABAo/sGY3vsbDvec/s1600/Virus_Policia_Android_5.png
 
 
Llamando al servicio, se llama a la función "dispatchEvent". Con el tipo de evento 2, fuerza la actividad a lanzarse de nuevo. Y así no permite a otra aplicación pasar al primer plano. 
 
http://3.bp.blogspot.com/-G–QSO6FKrk/U3NE0yBw2OI/AAAAAAAABA0/7hxpUBjNqxs/s1600/Virus_Policia_Android_6.png
 
Desinstalar el Virus de la Policía en Android 
 
Como no tenemos acceso a la pantalla, no podemos desinstalar manualmente la aplicación desde el menú "Ajustes/Aplicaciones". Sin embargo, Google proporciona una herramienta llamada "adb" usada por desarrolladores de aplicaciones Android para instalar y desinstalar aplicaciones, grabar logs, etc. Antes de desinstalar una aplicación, necesitamos conocer el nombre del paquete que la identifica. Esta información se encuentra en el archivo de configuración "AndroidManifest.xml". Podemos ver que el nombre de paquete del ransomware es "com.android". 
 
La utilidad "adb" se encuentra incluida dentro del Android SDK disponible para descarga desde: 
http://developer.android.com/sdk/index.html
 
Una vez instalado (descomprimirlo) será necesario conectar el dispositivo infectado al ordenador, localizar la herramienta "adb" en la carpeta "/sdk/platform-tools/" y ejecutar el comando: 
adb uninstall com.android con lo que conseguiremos desinstalar el malware. 
 
Opina sobre esta noticia: 
http://unaaldia.hispasec.com/2014/05/virus-de-la-policia-en-android-tecnicas.html#comments
 
Más información:
 
Nuevas variantes del “virus de la policía”. Ahora para Android http://blogs.protegerse.com/laboratorio/2014/05/06/nuevas-variantes-del-virus-de-la-policia-ahora-para-android/, 2014
 
Police Locker land on Android Devices
http://malware.dontneedcoffee.com/2014/05/police-locker-available-for-your.html, 2014
 
Java decompiler
http://jd.benow.ca/, 2014
 
Depurar malware Android con Eclipse
http://laboratorio.blogs.hispasec.com/2014/04/depurar-malware-android-con-eclipse_23.html, 2014
 
Android Debug Bridge
http://developer.android.com/tools/help/adb.html, 2014
 
Hash del ransomware: 
2e1ca3a9f46748e0e4aebdea1afe84f1015e3e7ce667a91e4cfabd0db8557cbf
 
una-al-dia (21/06/2011) Vídeo: Troyano secuestra el ordenador en nombre de la policía nacional acusando al usuario de terrorista zoofílico
http://unaaldia.hispasec.com/2011/06/video-troyano-secuestra-el-ordenador-en.html
 
una-al-dia (28/02/2012) Vuelve el troyano que se hace pasar por la policía: Cómo protegerse (de verdad)
http://unaaldia.hispasec.com/2012/02/vuelve-el-troyano-que-se-hace-pasar-por.html
 
una-al-dia (02/03/2012) El virus de la policía "evoluciona" e impide el acceso en modo seguro
http://unaaldia.hispasec.com/2012/03/el-virus-de-la-policia-evoluciona-e.html
 
una-al-dia (06/03/2012) Más información sobre el virus de la policía
http://unaaldia.hispasec.com/2012/03/mas-informacion-sobre-el-virus-de-la.html
 
una-al-dia (09/03/2012) El malware de la policía aprovecha un exploit de Java "in-the-wild" y el secreto su "éxito"
http://unaaldia.hispasec.com/2012/03/el-malware-de-la-policia-aprovecha-un.html
 
una-al-dia (18/03/2012) WhitePaper: Estudio técnico del troyano de la policía
http://unaaldia.hispasec.com/2012/03/whitepaper-estudio-tecnico-del-troyano.html
 
una-al-dia (24/05/2012) Nuevas versiones del malware de la policía y cómo eludirlas
http://unaaldia.hispasec.com/2012/05/nuevas-versiones-del-malware-de-la.html
 

 

Fuente:

Laurent Delosières

ldelosieres@hispasec.com
Laboratorio Hispasec
www.hispasec.com

Imágenes: 
Foto Imagen Gratis en Internet
www.fotosdigitalesgratis.com

Logotipos/Imágenes/Texto MR Respectiva/s Compañía/s mencionada/s en la noticia.
Portal de Seguridad Informática, Tecnología e Internet
Descargas Antivirus/Antimalware
www.antivirusgratis.com.ar