Retour aux mises à jour
New releaseSep 9, 2026

iLEAPP v2026.3.3

Analyse les extractions forensiques iOS et iPadOS en rapports HTML, TSV, timeline, KML et LAVA avec découverte modulaire d'artefacts et prise en charge des sauvegardes iTunes chiffrées.

Partager

iLEAPP

Analyseur de journaux, d'événements et de plists iOS

iLEAPP analyse les extractions forensiques iOS et iPadOS et produit des sorties HTML, TSV, chronologie, KML et LAVA. Il prend en charge les versions iOS/iPadOS 11 jusqu'aux versions actuelles.

Parcourez la liste complète et consultable des artefacts sur leapps.org/artifacts (filtrez par outil LEAPP).

Démarrage rapide (recommandé)

Téléchargez une version précompilée — aucune installation de Python requise.

PlateformeGUICLI
Windows (Intel)ileappGUI-v*-Windows_x86_64.zipileapp-v*-Windows_x86_64.zip
Windows (ARM)ileappGUI-v*-Windows_arm64.zipileapp-v*-Windows_arm64.zip
macOS (Apple Silicon)ileappGUI-v*-macOS_Apple_Silicon.dmgileapp-v*-macOS_Apple_Silicon.zip
macOS (Intel)ileappGUI-v*-macOS_Mac_Intel.dmgileapp-v*-macOS_Mac_Intel.zip
Linux (Intel)ileappGUI-v*-Linux_x86_64.AppImageileapp-v*-Linux_x86_64.AppImage
Linux (ARM)ileappGUI-v*-Linux_arm64.AppImageileapp-v*-Linux_arm64.AppImage

GUI — extrayez le téléchargement, exécutez ileappGUI, puis sélectionnez votre type d'entrée, le chemin source, le dossier de sortie et les modules à traiter.

CLI — extrayez le téléchargement et exécutez depuis un terminal. Le dossier de sortie doit déjà exister.

ileapp.exe -t zip -i C:\path\to\extraction.zip -o C:\path\to\output\

Sur macOS et Linux, utilisez le binaire ileapp de l'archive extraite au lieu de ileapp.exe.

Types d'entrée

TypeDescription
fsDossier de fichiers extraits avec des chemins et noms normaux
zipArchive ZIP contenant des fichiers aux noms normaux
tarArchive TAR, simple ou compressée en xz (.tar.xz)
gzArchive compressée GZIP
itunesDossier de sauvegarde iTunes/Finder avec des chemins et noms hachés
fileEntrée d'un seul fichier

Les sauvegardes iTunes/Finder chiffrées (-t itunes) sont prises en charge. L'interface graphique demandera un mot de passe avant le traitement lorsque le chiffrement est détecté. En CLI, transmettez le mot de passe avec --itunes_password (voir Options d'analyse facultatives ci-dessous).

Arguments CLI

Ces options s'appliquent uniquement à la version CLI (ileapp / ileapp.exe / python ileapp.py). L'interface graphique (ileappGUI) expose les mêmes paramètres via son interface plutôt que par des options en ligne de commande.

Exécutez ileapp --help (ou python ileapp.py --help depuis les sources) pour la référence intégrée.

Analyse d'un cas

Ces trois arguments sont requis pour une exécution d'analyse normale :

ArgumentForme longueDescription
-tType d'entrée : fs, tar, zip, gz, itunes ou file
-i--input_pathChemin vers le fichier ou dossier d'entrée
-o--output_pathChemin vers le dossier de sortie (doit déjà exister)

Exemple :

ileapp -t zip -i /path/to/extraction.zip -o /path/to/output/

Options d'analyse facultatives

ArgumentForme longueDescription
-w--wrap_textPassez cette option pour désactiver le retour à la ligne automatique dans les fichiers de sortie
-m--load_profileChemin vers un fichier de profil iLEAPP (.ilprofile) pour limiter les modules exécutés
-d--load_case_dataChemin vers un fichier de données de cas LEAPP (.lcasedata)
--custom_output_folderNom personnalisé pour le sous-dossier de sortie du rapport
--custom_artifacts_pathDossier supplémentaire à partir duquel charger les modules d'artefacts (par ex. scripts/alternate_artifacts)
--html_row_limitNombre de lignes au-delà duquel le tableau d'un artefact est omis de sa page HTML, qui pointe alors vers la base de données LAVA et l'export TSV à la place. Valeur par défaut 50000 ; 0 écrit tous les tableaux. L'interface graphique utilise la valeur par défaut
--itunes_password

Modes utilitaires autonomes

Ces modes n'analysent pas de cas. Utilisez-les seuls — sans -t, -i ni -o :

ArgumentForme longueDescription
-p--artifact_pathsÉcrit tous les chemins de recherche d'artefacts dans path_list.txt dans le répertoire courant
-c--create_profile_casedataAssistant interactif pour créer un fichier .ilprofile ou .lcasedata dans le dossier donné

Exemples :

ileapp -p
ileapp -c /path/to/output/folder/

Contribution

Les modules d'artefacts se trouvent dans scripts/artifacts/ et sont chargés dynamiquement à l'exécution.

Nouveaux modules : commencez par le guide pas à pas sur How to Write an iLEAPP Module.

Références supplémentaires :

Données de test et sample_data pour votre PR

Une PR qui ajoute ou modifie un artefact est plus facile à réviser et à fusionner lorsqu'elle arrive avec deux choses : une petite fixture de test extraite d'une extraction réelle, et des valeurs sample_data qui enregistrent ce que le module a produit. Des scripts génèrent les deux. Voici tout le déroulement.

Une règle avant tout : tout ce que vous committez ici devient public. N'utilisez que des données que vous êtes autorisé à partager, comme un appareil de test que vous avez rempli vous-même, une image de recherche publique, ou un fichier que vous avez assaini manuellement. Jamais de données de dossier réel.

1. Extrayez une fixture de votre extraction

python admin/test/scripts/make_test_data.py <module> --case 1 --input <extraction.zip>

Cela extrait les fichiers correspondant aux motifs paths de votre module depuis l'extraction et écrit le fichier de cas admin/test/cases/testdata.<module>.json plus un petit zip par artefact sous admin/test/cases/data/<module>/.

Règles de taille : moins de 10 Mo par zip, committez-le avec la PR. Entre 10 et 25 Mo, committez le fichier de cas et joignez le zip à un commentaire de PR. Plus gros que cela, signalez-le dans la PR et un mainteneur organisera un transfert.

2. Enregistrez la sortie attendue

TZ=UTC python admin/test/scripts/test_module.py <module> -a all -c all

Cela exécute le module sur la fixture et écrit un instantané de la sortie sous admin/test/results/<module>/. Committez aussi l'instantané. Il devient la référence qui protège le module après la fusion. Conservez la partie TZ=UTC : les instantanés committés sont en UTC et la CI s'exécute en UTC.

3. Exécutez la même comparaison que celle lancée par la CI

python admin/test/scripts/run_test_cases.py --module <module>

4. Générez les valeurs sample_data

python admin/scripts/validate_sample_data.py --emit <extraction.zip> --key <image_name>

Catégories