Pentesting Móvil Parte 1
La entrada de hoy veremos cómo hacer pentestong móvil con la ayuda de un servidor de pruebas llamado
“WaTF-Bank”, la herramienta Jadx y otras más, veremos lo relacionado a temas de OWASP
Mobile Top 10, manos a la obra.
¿Qué es Owasp Mobile Top 10?
Es un recurso centralizado destinado
a brindar a los desarrolladores y equipos de seguridad los recursos que
necesitan para crear y mantener aplicaciones móviles seguras.
Los 10 principales riesgos para
dispositivos móviles: lista final de 2016
- M1:
Uso Inadecuado de la Plataforma
- M2: Almacenamiento de Datos Inseguro
- M3: Comunicación Insegura
- M4: Autenticación Insegura
- M5: Criptografía Insuficiente
- M6: Autorización Insegura
- M7: Calidad del Código de Cliente
- M8: Manipulación de Código
- M9: Ingeniería Inversa
- M10: Funcionalidad Extraña
Herramientas:
Para la parte dinámica usaremos el servidor de pruebas WaTF-Bank, BurpSuite u Owasp-Zap, Nox o GenyMotion, Frida y ADB. y para la parte estática usaremos: Jadx y MobSF.
¿Qué es WaTF-Bank:?
La aplicación de banca móvil What-a-Terrible-Failure (WaTF-Bank), escrita en Java, Swift 4, Objective-C y Python (marco Flask) como servidor backend, está diseñada para simular servicios web del "mundo real". aplicación de banca móvil habilitada que contiene más de 30 vulnerabilidades.
¿Qué es Jadx?
Herramientas de línea de comandos y GUI para producir código fuente Java a partir de archivos Android Dex y Apk.
Principales características:
- descompilar el código de bytes de Dalvik en clases de Java desde archivos APK, dex, aar, aab y zip
- decodificar AndroidManifest.xml y otros recursos de resources.arsc
- Desofuscador incluido
características de jadx-gui:
- ver código descompilado con sintaxis resaltada
- búsqueda de texto completo
- entre otras cosas más
Otros servidores o entornos de
prueba:
Instalación WaTF-Bank: clonaremos el repositorio
desde github: git clone https://github.com/WaTF-Team/WaTF-Bank.git, luego de ello entraremos
la carpeta backend que nos crea e instalaremos los requerimientos: sudo pip3 install
-r requirements.txt, luego ejecutaremos
el servidor de la siguiente forma: sudo python3 app.py -h 192.168.1.7 -p 5000,
nos muestra que el funcionamiento del servidor esta correcto y nos muestra además
una url con un puerto por defecto, procedemos a instalar la aplicación .apk en
nuestro emulador. En mi caso usare Nox. Y modificaremos los parámetros
ip:puerto con los que configuramos anteriormente en el servidor. Colocamos el
usuario y la contraseña y con esto ya estría nuestro laboratorio listo para
empezar las pruebas.
Nota: esta aplicación antes de conectarnos se necesita hacer un bypass de Root, se enseñara como realizarlo en la entrada siguiente.
Instalación Jadx-GUI: Para la instalación lo
usaremos en Windows descargamos el .jar desde aquí, luego
descomprimimos el archivo y ejecutamos el archivo.
Ejemplos: M1. Uso Inadecuado de la
Plataforma
Permisos excesivos: A menudo las aplicaciones nos solicitan un cantidad de permisos para su instalación, cuando revisamos estos detenidamente nos damos cuenta que algunos no los usan o no tendrían por qué solicitarlos.
Copia de seguridad Activa: Es muy recurrente que se deje activa (true) andoird.allowBackup,
esto de rebe de ir “false”.
Proveedor de contenido de Android: Se encuentra que un receptor de transmisión se
comparte con otras aplicaciones en el dispositivo, por lo tanto, lo deja
accesible para cualquier otra aplicación en el dispositivo.
Receptor de radiodifusión de Android:
Se encuentra que un proveedor de contenido se comparte con otras aplicaciones en el dispositivo, por lo tanto, lo deja accesible para cualquier otra aplicación en el dispositivo.
Abarcaremos más contenido en las demás partes.
Happy-Hacking
😊
0 comentarios:
Publicar un comentario