8 abr 2020

Virtualizando Android


¡Muy buenas! En este post vamos a introducir los entornos de Android más usados en el análisis de aplicaciones móviles, de forma que antes de comenzar una auditoría o un análisis de vulnerabilidades, tengamos en mente las diferentes opciones que podemos utilizar.

Para comenzar, debemos tener en cuenta que existen dos posibles escenarios para realizar las pruebas:
  1. En un dispositivo físico Android (smartphone o tablet) en el que poder instalar la aplicación, de forma que las pruebas se podrán ejecutar directamente sobre él. Esta es la mejor opción siempre que dispongamos del material necesario.
  2. En el caso de no contar con un dispositivo físico, será necesario virtualizar un entorno Android que nos permita ejecutar las pruebas.

En este caso, nos centraremos en las dos posibilidades más conocidas de virtualizar nuestro entorno de trabajo.

Androl4b

Nos ofrece una máquina virtual, no sólo con un emulador Android, sino también una serie de herramientas de hacking incorporadas para realizar análisis sobre el fichero .apk, facilitando información que posteriormente podremos analizar.

En la página oficial de Androl4b (https://github.com/sh4hin/Androl4b), tenemos en dos enlaces de descarga la máquina virtual para importarla en VMware o VirtualBox, de forma que al importar el fichero .ova descomprimido, haremos uso de las credenciales andro:andro (y con pin 1234 para el emulador) para iniciar la sesión.

Las herramientas que contiene son: Radare2, Frida, ByteCodeViewer, Mobile Security Framework (MobSF), Drozer, APKtool, AndroidStudio, BurpSuite, Wireshark, MARA, FindBugs-IDEA, AndroBugs Framework, Qark; además de una serie de aplicaciones que contienen vulnerabilidades para practicar y aprender.



A modo de ventajas, diría que es un entorno ya creado directamente para buscar y analizar vulnerabilidades en aplicaciones móviles, y que si queremos añadir herramientas que no se encuentren de base, se trataría de forma sencilla al igual que en un Ubuntu cualquiera.

Como desventajas, destacaría el hecho de que tenemos instaladas un conjunto de herramientas que la máquina virtual ya trae por defecto, y podemos no necesitar, pero eso nos ocurre habitualmente al utilizar otras distribuciones de hacking.

Genymotion

A través de la página oficial https://www.genymotion.com/fun-zone/, lo podemos obtener registrándonos en la plataforma y pulsando en la opción “download for personal use”.

Una vez descargado, debemos identificarnos con el usuario previamente creado en la web; a continuación, nos aparece el listado de dispositivos que podemos emular, como podemos ver en la siguiente imagen:



Las ventajas que me gustan de Genymotion son:

  • Eres root de todos los dispositivos emulados (of course escribiendo su en la terminal. Terminal que “asociaremos” con el dispositivo a través de la herramienta adb con el comando adb shell), lo que nos permite realizar una serie de operaciones sobre el dispositivo mucho mayor.
  • Diseñar los dispositivos con sus características (RAM, versión de Android y nº de procesadores) personalizadas.
  • La instalación de las aplicaciones en el dispositivo emulado se basan en ‘arrastrar y soltar'.




Las desventajas de Genymotion que podríamos decir son:
  • Si tenemos por una parte una máquina virtual Kali (o Parrot o Arch) donde tenemos las herramientas y por otra nuestro dispositivo emulado, habría que configurar Genymotion a nivel de red de cara a integrar pruebas con ella (a menos que las herramientas también las tengamos en el host, que en tal caso he dicho miau).
  • También en relación con el punto anterior, nos da una menor independencia (o mayor, según queramos verlo, como ventaja o desventaja) con las herramientas que usamos para realizar las pruebas, en el sentido de si ya tenemos nuestra carpeta o nuestro kit de herramientas instalado y sólo necesitamos el emulador, o si preferimos que venga con un conjunto de herramientas ya instaladas con un emulador ya incorporado (como sería el caso de la herramienta anterior, Androl4b).

Espero que os haya resultado útil :)

Hoy comienzan algunos días de descanso, con motivo de las vacaciones de Semana Santa, que seguro que nos vienen bien para retomar fuerzas tras estas semanas intensas, y volver la semana que viene con energías renovadas. Por nuestra parte, nos sumamos a este descanso y volveremos el lunes a Flu Project con más novedades.

¡Disfrutad de las vacaciones y os vemos estos días en C0r0n4CON!

1 comentario:

  1. Gracias por compartir. Creo que les faltó NOX (https://www.bignox.com/)

    Saludos.

    ResponderEliminar