
iLEAPP v2026.3.3
Verarbeitet forensische Extraktionen von iOS und iPadOS zu HTML-, TSV-, Timeline-, KML- und LAVA-Berichten mit modularer Artefakt-Erkennung und Unterstützung verschlüsselter iTunes-Backups.

iOS Logs, Events, And Plists Parser
iLEAPP analysiert forensische iOS- und iPadOS-Extraktionen und erzeugt HTML-, TSV-, Timeline-, KML- und LAVA-Ausgaben. Es unterstützt iOS/iPadOS 11 bis zu den aktuellen Versionen.
Durchsuchen Sie die vollständige, durchsuchbare Artefaktliste unter leapps.org/artifacts (filtern Sie nach dem LEAPP-Tool).
Schnellstart (empfohlen)
Laden Sie ein vorgefertigtes Release herunter – keine Python-Installation erforderlich.
- LEAPPs Releases — alle Tools der LEAPP-Familie durchsuchen
- iLEAPP GitHub Releases — direkte Downloads
| Plattform | 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 — entpacken Sie den Download, führen Sie ileappGUI aus und wählen Sie dann Ihren Eingabetyp, den Quellpfad, den Ausgabeordner und die zu verarbeitenden Module aus.
CLI — entpacken Sie den Download und führen Sie das Programm in einem Terminal aus. Der Ausgabeordner muss bereits existieren.
ileapp.exe -t zip -i C:\path\to\extraction.zip -o C:\path\to\output\
Verwenden Sie unter macOS und Linux die Binärdatei ileapp aus dem entpackten Archiv anstelle von ileapp.exe.
Eingabetypen
| Typ | Beschreibung |
|---|---|
fs | Ordner mit extrahierten Dateien mit normalen Pfaden und Namen |
zip | ZIP-Archiv mit Dateien mit normalen Namen |
tar | TAR-Archiv, unkomprimiert oder xz-komprimiert (.tar.xz) |
gz | GZIP-komprimiertes Archiv |
itunes | iTunes/Finder-Backup-Ordner mit gehashten Pfaden und Namen |
file | Einzelne Datei als Eingabe |
Verschlüsselte iTunes/Finder-Backups (-t itunes) werden unterstützt. Die GUI fordert vor der Verarbeitung zur Eingabe eines Passworts auf, wenn eine Verschlüsselung erkannt wird. In der CLI übergeben Sie das Passwort mit --itunes_password (siehe Optionale Parsing-Optionen unten).
CLI-Argumente
Diese Optionen gelten nur für den CLI-Build (ileapp / ileapp.exe / python ileapp.py). Die GUI (ileappGUI) bietet dieselben Einstellungen über ihre Oberfläche statt über Kommandozeilen-Flags an.
Führen Sie ileapp --help (oder python ileapp.py --help aus dem Quellcode) aus, um die integrierte Referenz anzuzeigen.
Einen Fall parsen
Diese drei Argumente sind für einen normalen Parse-Durchlauf erforderlich:
| Argument | Langform | Beschreibung |
|---|---|---|
-t | Eingabetyp: fs, tar, zip, gz, itunes oder file | |
-i | --input_path | Pfad zur Eingabedatei oder zum Ordner |
-o | --output_path | Pfad zum Ausgabeordner (muss bereits existieren) |
Beispiel:
ileapp -t zip -i /path/to/extraction.zip -o /path/to/output/
Optionale Parsing-Optionen
| Argument | Langform | Beschreibung |
|---|---|---|
-w | --wrap_text | Übergeben Sie dieses Flag, um den Textumbruch in Ausgabedateien zu deaktivieren |
-m | --load_profile | Pfad zu einer iLEAPP-Profil-Datei (.ilprofile), um einzuschränken, welche Module ausgeführt werden |
-d | --load_case_data | Pfad zu einer LEAPP-Falldaten-Datei (.lcasedata) |
--custom_output_folder | Benutzerdefinierter Name für den Unterordner der Berichtsausgabe | |
--custom_artifacts_path | Zusätzlicher Ordner, aus dem Artefaktmodule geladen werden (z. B. scripts/alternate_artifacts) | |
--html_row_limit | Zeilenanzahl, ab der die Tabelle eines Artefakts auf seiner HTML-Seite weggelassen wird, die dann stattdessen auf die LAVA-Datenbank und den TSV-Export verweist. Standard 50000; 0 schreibt jede Tabelle. Die GUI verwendet den Standardwert | |
--itunes_password |
Eigenständige Dienstprogramm-Modi
Diese Modi parsen keinen Fall. Verwenden Sie sie allein – ohne -t, -i oder -o:
| Argument | Langform | Beschreibung |
|---|---|---|
-p | --artifact_paths | Schreibt alle Artefakt-Suchpfade in path_list.txt im aktuellen Verzeichnis |
-c | --create_profile_casedata | Interaktiver Assistent zum Erstellen einer .ilprofile- oder .lcasedata-Datei im angegebenen Ordner |
Beispiele:
ileapp -p
ileapp -c /path/to/output/folder/
Mitwirken
Artefaktmodule befinden sich in scripts/artifacts/ und werden zur Laufzeit dynamisch geladen.
Neue Module: Beginnen Sie mit der Schritt-für-Schritt-Anleitung unter How to Write an iLEAPP Module.
Weitere Referenzen:
- Artifact Info Block Structure
- Updating Modules for Automatic Output Generation
- Updating Complex Modules to Include LAVA Output
- Testing Modules
Testdaten und sample_data für Ihren PR
Ein PR, der ein Artefakt hinzufügt oder ändert, lässt sich am einfachsten prüfen und zusammenführen, wenn er zwei Dinge mitbringt: ein kleines Test-Fixture, das aus einer echten Extraktion herausgeschnitten wurde, und sample_data-Werte, die festhalten, was das Modul erzeugt hat. Skripte generieren beides. Hier ist der gesamte Ablauf.
Eine Regel vor allem anderen: Was Sie hier committen, wird öffentlich. Verwenden Sie nur Daten, die Sie weitergeben dürfen, wie ein Testgerät, das Sie selbst befüllt haben, ein öffentliches Forschungs-Image oder eine von Hand bereinigte Datei. Niemals Fallarbeit.
1. Schneiden Sie ein Fixture aus Ihrer Extraktion heraus
python admin/test/scripts/make_test_data.py <module> --case 1 --input <extraction.zip>
Dies zieht die Dateien, die zu den paths-Mustern Ihres Moduls passen, aus der Extraktion heraus und schreibt die Falldatei admin/test/cases/testdata.<module>.json sowie eine kleine Zip-Datei pro Artefakt unter admin/test/cases/data/<module>/.
Größenregeln: Unter 10 MB pro Zip-Datei committen Sie diese mit dem PR. Zwischen 10 und 25 MB committen Sie die Falldatei und hängen die Zip-Datei an einen PR-Kommentar an. Bei mehr als das geben Sie es im PR an, und ein Maintainer organisiert eine Übergabe.
2. Zeichnen Sie die erwartete Ausgabe auf
TZ=UTC python admin/test/scripts/test_module.py <module> -a all -c all
Dies führt das Modul gegen das Fixture aus und schreibt einen Snapshot der Ausgabe unter admin/test/results/<module>/. Committen Sie den Snapshot ebenfalls. Er wird zur Baseline, die das Modul nach dem Merge absichert. Behalten Sie den Teil TZ=UTC bei: Die committeten Snapshots sind UTC, und CI läuft in UTC.
3. Führen Sie denselben Vergleich aus, den CI ausführen wird
python admin/test/scripts/run_test_cases.py --module <module>
4. Generieren Sie die sample_data-Werte
python admin/scripts/validate_sample_data.py --emit <extraction.zip> --key <image_name>