iGoat – iOS Reverse Engineering

iGoat

Se van a realizar algunas de las pruebas básicas sobre la aplicacion vulnerable para iOS, iGoat.

Requerimientos en dispositivo movil:

How to Setup and Install Frida and Objection On macOS

Cycript permite explorar y modificar aplicaciones en ejecución en iOS utilizando un híbrido de sintaxis Objective-C ++ y JavaScript a través de una consola interactiva que presenta resaltado de sintaxis y finalización de pestañas. Para ejecutar Cycript podemos instalar Cyrun, agregando http://www.tateu.net/repo/ como repositorio e instalando cyrun y cycript.

Requerimientos en OSX:

objection

ANÁLISIS

Habiendo instalado iGoat-Swift (v1.0)

Se identifica la aplicacion:

Y se procede a explorar mediante Objection:

Usamos «pwd print» para mostrar el path:

«env» muestra las variables de entorno:

Es posible usar «cd» para cambiar entre directorios y «ls» para enumerar los ficheros:

Se muestra el contenido de un fichero plist mediante «ios plist cat file.plist«

También es posible la descarga o subida de ficheros usando «file download» y «file upload«. Es muy interesante encontrar archivos sqlite, inspeccionarlos, modificarlos y cargarlos nuevamente.

Inyección de codigo

Se inicia sesión en el dispositivo mediante ssh para proceder a inyectar código.

Analisis de las comunicaciones

Mediante BurpSuite. La fijación de certificados no se aplica en iGoat, pero en aplicaciones en produccion si, es posible omitir la fijación de certificados con objection:

Extraccion de fichero IPA descifrado

Es posible extraer el fichero IPA al equipo para realizar análisis locales mediante fri-dump. Se ha comentado en un post del mismo blog:

Decompilado de clases

Podemos usar class-dump o frida-ios-dump para decompilar las clases.

Ingenieria Inversa de la aplicación mediante ghidra

Deja un comentario