Pentesting en Android (I): Configuración del entorno

En este artículo vamos a tratar de explicar, paso a paso de la forma más sencilla posible, cómo crear un entorno de trabajo para realizar un hacking ético sobre una aplicación de un dispositivo Android, de tal forma que lo pueda realizar cualquier persona independientemente de los conocimientos que tenga.

El primer paso es la creación de un entorno de trabajo para comenzar una auditoria de aplicaciones móviles en Android. Para ello, veremos varios emuladores de dispositivos móviles y elegiremos uno en el cual montaremos nuestro entorno.

Algunos emuladores en el mercado

Empecemos por explicar que es un emulador. Esta palabra procede del vocablo latino aemulātor (emula), es decir, algo que imita el funcionamiento de otra cosa. Wikipedia lo define de la siguiente forma: “En informática, un emulador es un software que permite ejecutar programas o videojuegos en una plataforma (sea una arquitectura de hardware o un sistema operativo) diferente de aquella para la cual fueron escritos originalmente. A diferencia de un simulador, que solo trata de reproducir el comportamiento del programa, un emulador trata de modelar de forma precisa el dispositivo de manera que este funcione como si estuviese siendo usado en el aparato original”.

Una vez explicado este concepto procedemos a nombrar algunos de estos emuladores que nos podemos encontrar en el mercado:

  • Android Studio: Iniciamos la lista con el software sobre el que montaremos nuestro entorno. En este caso, nos encontramos ante una herramienta oficial y no tenemos que preocuparnos del adware (software diseñado para mostrar anuncios en la pantalla) o de que incluyan decenas de aplicaciones preinstaladas.
  • Genymotion: Otro de los emuladores más popular y que, además, ofrece tanto una versión de escritorio como en la nube, consumiendo muchos menos recursos del ordenador. La única “pega” es que está centrada en desarrolladores por lo que puede parecer un poco más compleja para el usuario básico. Además, comentar que en esta ocasión nos encontramos con un programa limitado en su parte gratis y con todas las funciones en su tarifa de pago.
  • BlueStacks: Es de las herramientas más veteranas y conocidas para emular. En este caso, nos encontramos con una interfaz adaptada para escritorio del ordenador, por lo que no lo veríamos como un móvil por ello se suele utilizar para jugar principalmente.
  • NOX: Otro emulador centrado en el gaming.
  • Visual Studio: Emulador gratuito, rápido y dispone de varios perfiles de dispositivos que permiten emular una gran variedad de hardware de Android.
  • MEmu Play: Es otra alternativa centrada en los juegos, es decir, toda la experiencia e interfaz está adaptada para poder jugar a juegos de Android en un PC.

Instalación del emulador Android Studio

Como hemos comentado, nosotros vamos a elegir Android Studio como emulador de este entorno, pero sois libres de utilizar cualquiera de los anteriormente expuestos. Nuestra maquina anfitriona será un Windows.

Procedemos a buscar en Google “Android developer studio” y nos muestra lo siguiente:

Os facilitamos el link por si queréis ir directamente a la página: https://developer.android.com/studio

En la página pulsamos “Download Android Studio Electrio Eel” para que inicie la descarga del instalador.

Nos saldrá un cuadro con las condiciones y términos legales donde deberemos marcar el consentimiento y darle a “Download Android Studio Electrio Eel | 2022.1.1 Patch 2 for Windows” y ahora sí, iniciará la descarga.

Como podemos ver en la siguiente imagen, nos descarga un fichero “.exe”, en el cual haremos doble clic para iniciar la instalación.

A continuación se abrirá el panel de instalación y pulsaremos en “Next” para ir a la siguiente vista.

En la siguiente ventana nos mostrará los componentes que se van a instala. Estos los dejamos como muestran por defecto y pulsamos en “Next”.

A continuación, nos mostrará la ruta donde se instalará indicando que debe tener como mínimo 500 MB de espacio libre. En “Browser” podremos modificar dicha ruta por defecto si así lo consideramos.

Posteriormente, nos preguntarán si queremos crear un acceso directo como se muestra a continuación.

Cuando se complete la descarga pulsaremos en “Next”.

Por último, en la siguiente pantalla pulsaremos en “Finish”.

Una vez terminamos la instalación básica, comenzamos con la configuración de la herramienta dándole a “Next”.

Seleccionamos la instalación “Standard” debido a que con esta es suficiente y nos ahorrará tiempo y algún que otro dolor de cabeza.

En el siguiente apartado, seleccionamos el tema que queremos usar, por defecto vienen dos instalados: el tema claro y oscuro.  En nuestro caso será “Darcula”.

Y procedemos a la instalación de los complementos necesarios para el uso de la herramienta dándole a “Next”.

Aceptamos los términos y condiciones y “Finish”.

Veremos como inicia la descarga de los paquetes y cuando termine pulsaremos en “Finish”.

Una vez terminamos la instalación se nos abre el panel de los proyectos.

En el desplegable seleccionaremos “More Actions” y posteriormente seleccionaremos la opción “Virtual Device Manager” para crear nuestro dispositivo Android:

AVISO!! A veces esta opción se encuentra bloqueada. Si esto sucede, lo que haremos será seleccionar la opción SDK Manager que se encuentra justo encima:

Se nos abrirá la siguiente ventana, donde tendremos que comprobar dos cosas principalmente:

  1. La ruta “Android SDK Location” si aparece en rojo será porque la ruta no es válida y deberemos proporcionarle una admitida.
  • En la pestaña “SDK Tools” tenemos que revisar que tengamos instalado el paquete “Android SDK Build-Tools 33”. Si no es el caso, deberemos seleccionar el cuadrado de la izquierda del paquete y darle a “OK” para que se descargue e instale.

A modo informativo, en la pestaña “SDK Platforms” podemos ver y descargar las distintas versiones de Android que podemos instalar en los dispositivos emulados.

Volvemos a la opción anteriormente comentada “Virtual Device Manager” para empezar con la creación del dispositivo.

Se abrirá la siguiente ventana y seleccionaremos el botón “Create device” o en el link con el mismo nombre situado en el centro del cuerpo de la venta.

Se nos mostrará la siguiente ventana con las categorías y las características de los dispositivos que podemos encontrar en la plataforma.

Podremos ver como los todos los modelos de móvil presentan una columna llamada “Play Store” donde aparecerá o no, el logo de esta aplicación en dependencia de si lo trae instalado o no. Esta característica nos facilitará la instalación de aplicaciones que estén en esta plataforma.

En la captura siguiente veremos que nuestra elección será un modelo Pixel 4 con la aplicación de Play Store instalada y le daremos a “Next”.

En la siguiente vista seleccionaremos la versión de Android que queramos instalar. En la parte superior veremos tres pestañas que nos indican las imágenes recomendadas, las que son x86 y otras imágenes.

Seleccionaremos la imagen de la versión de Android que queremos instalar y la descargaremos pulsando en la flecha que aparece a la derecha del nombre de la versión. En este caso, hemos elegido Android 8.0 (Google APIS) que además tiene instalado el servicio de Google Play y con una arquitectura x86_64 y le daremos a “Next”.

Aceptaremos el acuerdo de licencia y pulsaremos en “Next”.

Cuando termine de instalar todos los componentes seleccionados pulsaremos en “Finish”.

Posteriormente nos mostrará una ventana con el resumen de las características del dispositivo que hemos configurado y aquí, en “AVD Name”, podremos cambiar el nombre del terminal emulado y le daremos a “Finish”.

Una vez cargado el dispositivo nos mostrará una ventana donde podremos arrancarlo, ver dónde está guardado, editar la configuración y ver la configuración del terminal. En la imagen resaltamos el botón de arranque.

Y veremos cómo se nos abre una ventana nueva con el terminal con el móvil en funcionamiento.

Instalación y ejecución de Android Debug Bridge (ADB)

Android Debug Bridge es una herramienta de línea de comandos que nos permite comunicarnos con el dispositivo móvil y ejecutar múltiples instrucciones para realizar distintas acciones como puede ser acceder al interior del dispositivo, copiar o eliminar información, instalar o desinstalar aplicaciones, etc.

Al descargar Android Studio, generalmente se incluye dentro de la carpeta “SDK Tools” que mencionamos anteriormente bajo el nombre de “platform-tools”.

En cualquier caso, si no la encontráis la podéis obtener en el siguiente enlace para su descarga:

https://developer.android.com/studio/releases/platform-tools

Una vez localizada o descargada, accederemos a dicha carpeta y abriremos un cmd.

La ruta suele ser: C:\Users\USUARIO\AppData\Local\Android\Sdk\platform-tools

Ejecutaremos adb.exe para ver las posibles opciones que tiene la herramienta.

Desde la misma consola, podremos utilizar algunos de los siguientes comandos:

  • adb devices: Lista los emuladores que actualmente se encuentran conectados en el sistema.
  • adb root/unroot: Reinicia el cliente con permisos (root) o sin permisos de root (unroot). Es importante destacar que para la realización de la mayoría de las acciones es necesario que seamos root.
  • adb push/pull [path_to_file]: Este comando nos permite enviar un archivo desde el ordenador al dispositivo móvil (push) y del dispositivo móvil al ordenador (pull).
  • adb install/uninstall [path_to_apk]: Para instalar (install) o desinstalar una aplicación (uninstall).
  • adb shell: Permite acceder al dispositivo por consola (recordar que Android es un sistema Linux, por lo que los comandos serán los mismos que empleamos en nuestra Kali).
  • adb reboot: Fuerza un reinicio del dispositivo.

Instalación de Android Debug Bridge

En caso de no tener Android Debug Bridge instalado, a continuación, mostramos los pasos a seguir para descargarlo. Podemos realizar la descarga desde el siguiente link: https://developer.android.com/studio/releases/platform-tools

En nuestro caso, pulsaremos sobre “Cómo descargar las herramientas de la plataforma SDK para Windows” como se puede ver en la siguiente imagen.

Aceptaremos los términos y condiciones del contrato, pulsaremos sobre “Descargar Android SDK Plataform-Tools para Windows” y se descargará con zip con las herramientas.

Descomprimimos el .zip que se habrá guardado en nuestra carpeta de descargas o la que tengamos configurada para descargas.

Entramos en la carpeta “platform-tools”.

Vemos que está el ejecutable “adb.exe”, abrimos un cmd y ejecutamos “adb.exe”.

Llegados a este punto volveríamos al apartado anterior “Instalación y ejecución de Android Debug Bridge”.

Hasta aquí tendríamos montado nuestro entorno de pruebas con el emulador móvil funcionando.

Referencias

Ver también en: