
Perfilado de seguridad para iOS en caja negra
Herramienta de caja negra que ayuda a comprender qué hace una aplicación iOS en tiempo de ejecución y a identificar posibles problemas de seguridad.
Consulte http://isecpartners.github.io/Introspy-iOS/ para una introducción rápida.
Este es el repositorio del tracer de Introspy-iOS.
El tracer se puede instalar en un dispositivo con jailbreak para enganchar y registrar las APIs sensibles de iOS llamadas por las aplicaciones que se ejecutan en el dispositivo. La herramienta registra los detalles de las llamadas relevantes a las APIs, incluidos los argumentos y los valores de retorno, y los guarda en una base de datos. Además, las llamadas también se envían a la Consola para su análisis en tiempo real.
La base de datos puede alimentar a Introspy-Analyzer, un script de Python que genera informes HTML que contienen la lista de llamadas a funciones registradas, así como una lista de posibles vulnerabilidades que afectan a la aplicación. Introspy-Analyzer está alojado en un repositorio separado: https://github.com/iSECPartners/Introspy-Analyzer
Los usuarios deben descargar primero el paquete Debian precompilado más reciente disponible en la sección de lanzamientos de la página del proyecto en: https://github.com/integrity-sa/Introspy-iOS/releases o, para versiones anteriores, en https://github.com/iSECPartners/Introspy-iOS/releases
El tracer solo se ejecutará en un dispositivo con jailbreak. Usando Cydia, asegúrese de que los siguientes paquetes estén instalados:
Descargue y copie el paquete Debian al dispositivo; instálelo:
scp <package.deb> root@<device_ip>:~
ssh root@<device_ip>
dpkg -i <package.deb>
Reinicie el SpringBoard del dispositivo:
killall -HUP SpringBoard
Debería haber dos nuevos menús en los Ajustes del dispositivo. El menú Apps le permite seleccionar qué aplicaciones serán perfiladas, mientras que el menú Settings define qué grupos de APIs se están enganchando.
Finalmente, cierre y reinicie la aplicación que desea monitorear.
dpkg -r com.isecpartners.introspy
El tracer almacenará los datos sobre las llamadas a APIs realizadas por las aplicaciones en una base de datos guardada en el dispositivo (en realidad, una en la carpeta de cada aplicación). Esta base de datos puede alimentar a un script de Python llamado Introspy-Analyzer para generar informes HTML que facilitan mucho la revisión de los datos recopilados por el tracer. El script también analizará y marcará las llamadas a APIs peligrosas para facilitar el proceso de identificación de vulnerabilidades dentro de las aplicaciones iOS.
Introspy-Analyzer está alojado en un repositorio separado: https://github.com/iSECPartners/Introspy-Analyzer
La mayoría de los usuarios deberían simplemente descargar e instalar el paquete Debian precompilado. Sin embargo, si desea modificar la funcionalidad de la biblioteca, tendrá que compilar el paquete Debian usted mismo.
La compilación requiere el conjunto de herramientas Theos, disponible en https://github.com/theos/theos. Para obtener instrucciones generales sobre cómo instalar Theos, consulte https://github.com/theos/theos/wiki/Installation.
También debe establecer la variable $THEOS en su entorno y exportarla, de modo que make vea su valor cuando la ejecute
export THEOS=/absolute/path/to/theos
export PATH=$THEOS/bin:$PATH
Luego, el paquete se puede compilar usando:
make package
Una vez que haya creado correctamente el paquete Debian, puede usar Theos para instalar automáticamente el paquete y reiniciar el SpringBoard del dispositivo especificando la dirección IP del dispositivo en la variable de entorno THEOS_DEVICE_IP:
export THEOS_DEVICE_IP=192.168.1.127
make install
Consulte ./LICENSE.