
iLEAPP v2026.3.3
Analiza extracciones forenses de iOS y iPadOS y las convierte en informes HTML, TSV, timeline, KML y LAVA, con descubrimiento modular de artefactos y soporte para copias de seguridad cifradas de iTunes.

Analizador de registros, eventos y plists de iOS
iLEAPP analiza extracciones forenses de iOS y iPadOS y genera salidas en HTML, TSV, línea de tiempo, KML y LAVA. Es compatible con iOS/iPadOS 11 hasta las versiones actuales.
Consulte la lista completa de artefactos con búsqueda en leapps.org/artifacts (filtre por herramienta LEAPP).
Inicio rápido (recomendado)
Descargue una versión precompilada: no requiere instalación de Python.
- Versiones de LEAPPs — explore todas las herramientas de la familia LEAPP
- Versiones de iLEAPP en GitHub — descargas directas
| Plataforma | GUI | CLI |
|---|---|---|
| Windows (Intel) | ileappGUI-v*-Windows_x86_64.zip | ileapp-v*-Windows_x86_64.zip |
| Windows (ARM) | ileappGUI-v*-Windows_arm64.zip | ileapp-v*-Windows_arm64.zip |
| macOS (Apple Silicon) | ileappGUI-v*-macOS_Apple_Silicon.dmg | ileapp-v*-macOS_Apple_Silicon.zip |
| macOS (Intel) | ileappGUI-v*-macOS_Mac_Intel.dmg | ileapp-v*-macOS_Mac_Intel.zip |
| Linux (Intel) | ileappGUI-v*-Linux_x86_64.AppImage | ileapp-v*-Linux_x86_64.AppImage |
| Linux (ARM) | ileappGUI-v*-Linux_arm64.AppImage | ileapp-v*-Linux_arm64.AppImage |
GUI — extraiga la descarga, ejecute ileappGUI y luego seleccione el tipo de entrada, la ruta de origen, la carpeta de salida y los módulos que desea procesar.
CLI — extraiga la descarga y ejecútela desde una terminal. La carpeta de salida debe existir previamente.
ileapp.exe -t zip -i C:\path\to\extraction.zip -o C:\path\to\output\
En macOS y Linux, use el binario ileapp del archivo extraído en lugar de ileapp.exe.
Tipos de entrada
| Tipo | Descripción |
|---|---|
fs | Carpeta de archivos extraídos con rutas y nombres normales |
zip | Archivo ZIP que contiene archivos con nombres normales |
tar | Archivo TAR, sin comprimir o comprimido con xz (.tar.xz) |
gz | Archivo comprimido con GZIP |
itunes | Carpeta de copia de seguridad de iTunes/Finder con rutas y nombres con hash |
file | Entrada de un solo archivo |
Se admiten las copias de seguridad cifradas de iTunes/Finder (-t itunes). La GUI solicitará una contraseña antes de procesar cuando detecte cifrado. En la CLI, pase la contraseña con --itunes_password (consulte Opciones de análisis opcionales a continuación).
Argumentos de la CLI
Estas opciones se aplican únicamente a la compilación de CLI (ileapp / ileapp.exe / python ileapp.py). La GUI (ileappGUI) expone la misma configuración a través de su interfaz en lugar de indicadores de línea de comandos.
Ejecute ileapp --help (o python ileapp.py --help desde el código fuente) para consultar la referencia integrada.
Análisis de un caso
Estos tres argumentos son obligatorios para una ejecución de análisis normal:
| Argumento | Forma larga | Descripción |
|---|---|---|
-t | Tipo de entrada: fs, tar, zip, gz, itunes o file | |
-i | --input_path | Ruta al archivo o carpeta de entrada |
-o | --output_path | Ruta a la carpeta de salida (debe existir previamente) |
Ejemplo:
ileapp -t zip -i /path/to/extraction.zip -o /path/to/output/
Opciones de análisis opcionales
| Argumento | Forma larga | Descripción |
|---|---|---|
-w | --wrap_text | Pase este indicador para desactivar el ajuste de texto en los archivos de salida |
-m | --load_profile | Ruta a un archivo de perfil de iLEAPP (.ilprofile) para limitar qué módulos se ejecutan |
-d | --load_case_data | Ruta a un archivo de datos de caso de LEAPP (.lcasedata) |
--custom_output_folder | Nombre personalizado para la subcarpeta de salida del informe | |
--custom_artifacts_path | Carpeta adicional desde la que cargar módulos de artefactos (p. ej. scripts/alternate_artifacts) | |
--html_row_limit | Número de filas por encima del cual la tabla de un artefacto se omite de su página HTML, que entonces apunta a la base de datos LAVA y a la exportación TSV en su lugar. Valor predeterminado 50000; 0 escribe todas las tablas. La GUI usa el valor predeterminado | |
--itunes_password |
Modos de utilidad independientes
Estos modos no analizan un caso. Úselos solos, sin -t, -i ni -o:
| Argumento | Forma larga | Descripción |
|---|---|---|
-p | --artifact_paths | Escribe todas las rutas de búsqueda de artefactos en path_list.txt en el directorio actual |
-c | --create_profile_casedata | Asistente interactivo para crear un archivo .ilprofile o .lcasedata en la carpeta indicada |
Ejemplos:
ileapp -p
ileapp -c /path/to/output/folder/
Contribuir
Los módulos de artefactos se encuentran en scripts/artifacts/ y se cargan dinámicamente en tiempo de ejecución.
Módulos nuevos: comience con la guía paso a paso en How to Write an iLEAPP Module.
Referencias adicionales:
- Artifact Info Block Structure
- Updating Modules for Automatic Output Generation
- Updating Complex Modules to Include LAVA Output
- Testing Modules
Datos de prueba y sample_data para su PR
Un PR que agrega o modifica un artefacto es más fácil de revisar y fusionar cuando llega con
dos cosas: un pequeño fixture de prueba extraído de una extracción real y valores de sample_data que
registran lo que produjo el módulo. Los scripts generan ambos. Este es el flujo completo.
Una regla antes que nada: todo lo que confirme aquí se vuelve público. Use únicamente datos que tenga permitido compartir, como un dispositivo de prueba que usted mismo pobló, una imagen de investigación pública o un archivo que haya saneado a mano. Nunca datos de un caso real.
1. Extraiga un fixture de su extracción
python admin/test/scripts/make_test_data.py <module> --case 1 --input <extraction.zip>
Esto extrae los archivos que coinciden con los patrones de paths de su módulo de la extracción y escribe
el archivo de caso admin/test/cases/testdata.<module>.json más un pequeño zip por artefacto
en admin/test/cases/data/<module>/.
Reglas de tamaño: menos de 10 MB por zip, confírmelo con el PR. Entre 10 y 25 MB, confirme el archivo de caso y adjunte el zip a un comentario del PR. Si es más grande, indíquelo en el PR y un mantenedor organizará la transferencia.
2. Registre la salida esperada
TZ=UTC python admin/test/scripts/test_module.py <module> -a all -c all
Esto ejecuta el módulo contra el fixture y escribe una instantánea de la salida en
admin/test/results/<module>/. Confirme también la instantánea. Se convierte en la línea base que
protege el módulo después de la fusión. Mantenga la parte TZ=UTC: las instantáneas confirmadas están en UTC
y CI se ejecuta en UTC.
3. Ejecute la misma comparación que ejecutará CI
python admin/test/scripts/run_test_cases.py --module <module>
4. Genere los valores de sample_data
python admin/scripts/validate_sample_data.py --emit <extraction.zip> --key <image_name>