Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
ALEAPP — Analyseur de journaux, d'événements et de Protobuf Android | Kitploit
Outils/GitHubGitHub/abrignoni/aleapp
Criminalistique MobileCriminalistique NumériqueRéponse aux IncidentsAnalyse de Journaux
GitHubabrignoni/aleapp

ALEAPP

Analyseur de journaux, d'événements et de Protobuf Android

Voir le dépôt
882239il y a 1 jourVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

ALEAPP

Analyseur de journaux, d'événements et de protobuf Android

Si vous souhaitez contribuer, contactez-moi ici : https://abrignoni.github.io

Articles de blog ici : https://leapps.org/blog

Prérequis

Python 3.10 ou supérieur

Dépendances

Les dépendances pour votre environnement Python sont listées dans requirements.txt. Installez-les à l'aide de la commande ci-dessous. Assurez-vous que la partie py est correcte pour votre environnement, par exemple py, python ou python3, etc.

py -m pip install -r requirements.txt ou pip3 install -r requirements.txt

Pour exécuter sous Linux, vous devrez également installer tkinter séparément comme ceci :

sudo apt-get install python3-tk

Compilation en exécutable

Pour compiler en exécutable afin de pouvoir exécuter ceci sur un système sans Python installé.

Windows OS

Pour créer aleapp.exe, exécutez :

root@kitploit:~
pyinstaller scripts\pyinstaller\aleapp.spec

Pour créer aleappGUI.exe, exécutez :

root@kitploit:~
pyinstaller scripts\pyinstaller\aleappGUI.spec

macOS

Pour créer aleapp, exécutez :

root@kitploit:~
pyinstaller scripts/pyinstaller/aleapp_macOS.spec

Pour créer aleappGUI.app, exécutez :

root@kitploit:~
pyinstaller scripts/pyinstaller/aleappGUI_macOS.spec

Linux

Pour créer aleapp, exécutez :

root@kitploit:~
pyinstaller scripts/pyinstaller/aleapp_Linux.spec

Pour créer aleappGUI, exécutez :

root@kitploit:~
pyinstaller scripts/pyinstaller/aleappGUI_Linux.spec

Utilisation

CLI

root@kitploit:~
$ python aleapp.py -t <zip | tar | fs | gz> -i <path_to_extraction> -o <path_for_report_output>

GUI

root@kitploit:~
$ python aleappGUI.py

Aide

root@kitploit:~
$ python aleapp.py --help

Contribution de plugins d'artefacts

Chaque plugin est un fichier source Python qui doit être ajouté au dossier scripts/artifacts ; il sera chargé dynamiquement à chaque exécution d'ALEAPP.

Le fichier source du plugin doit contenir un dictionnaire nommé __artifacts_v2__ au tout début du module, qui définit les artefacts que le plugin traite. Les clés du dictionnaire __artifacts_v2__ doivent être des identifiants pour le ou les artefacts, lesquels doivent être uniques au sein d'ALEAPP. Les valeurs doivent être des dictionnaires contenant les clés suivantes :

  • name : Le nom de l'artefact sous forme de chaîne de caractères.
  • description : Une description de l'artefact sous forme de chaîne de caractères.
  • author : L'auteur du plugin sous forme de chaîne de caractères.
  • version : La version de l'artefact sous forme de chaîne de caractères.
  • date : La date de la dernière mise à jour de l'artefact sous forme de chaîne de caractères.
  • requirements : Toute exigence pour traiter l'artefact sous forme de chaîne de caractères.
  • category : La catégorie de l'artefact sous forme de chaîne de caractères.
  • notes : Toute note supplémentaire sous forme de chaîne de caractères.
  • paths : Un tuple de chaînes contenant des modèles de recherche glob pour correspondre au chemin des données attendues par le plugin pour l'artefact.
  • function : Le nom de la fonction qui est le point d'entrée pour le traitement de l'artefact sous forme de chaîne de caractères.

Par exemple :

root@kitploit:~
__artifacts_v2__ = {
    "cool_artifact_1": {
        "name": "Cool Artifact 1",
        "description": "Extracts cool data from database files",
        "author": "@username",
        "version": "0.1",
        "date": "2022-10-25",
        "requirements": "none",
        "category": "Really cool artifacts",
        "notes": "",
        "paths": ('*/com.android.cooldata/databases/database*.db',),
        "function": "get_cool_data1"
    },
    "cool_artifact_2": {
        "name": "Cool Artifact 2",
        "description": "Extracts cool data from XML files",
        "author": "@username",
        "version": "0.1",
        "date": "2022-10-25",
        "requirements": "none",
        "category": "Really cool artifacts",
        "notes": "",
        "paths": ('*/com.android.cooldata/files/cool.xml',),
        "function": "get_cool_data2"
    }
}

Les fonctions référencées comme points d'entrée dans le dictionnaire __artifacts__ doivent prendre les arguments suivants :

  • Un itérable des fichiers trouvés qui doivent être traités (sous forme de chaînes de caractères)
  • Le chemin du dossier de sortie d'ALEAPP (sous forme de chaîne de caractères)
  • Le seeker (de type FileSeekerBase) qui a trouvé les fichiers
  • Une valeur booléenne indiquant si le plugin est censé ou non faire un retour à la ligne automatique du texte

Par exemple :

root@kitploit:~
def get_cool_data1(files_found, report_folder, seeker, wrap_text):
    pass  # do processing here

Les plugins sont généralement censés fournir une sortie au format HTML d'ALEAPP, en TSV, et éventuellement soumettre des enregistrements à la chronologie (timeline). Les fonctions permettant de générer cette sortie se trouvent dans les modules artifact_report et ilapfuncs. À un niveau général, un exemple pourrait ressembler à :

root@kitploit:~
__artifacts_v2__ = {
    "cool_artifact_1": {
        "name": "Cool Artifact 1",
        "description": "Extracts cool data from database files",
        "author": "@username",  # Replace with the actual author's username or name
        "version": "0.1",  # Version number
        "date": "2022-10-25",  # Date of the latest version
        "requirements": "none",
        "category": "Really cool artifacts",
        "notes": "",
        "paths": ('*/com.android.cooldata/databases/database*.db',),
        "function": "get_cool_data1"
    }
}

import datetime
from scripts.artifact_report import ArtifactHtmlReport
import scripts.ilapfuncs

def get_cool_data1(files_found, report_folder, seeker, wrap_text):
    # let's pretend we actually got this data from somewhere:
    rows = [
     (datetime.datetime.now(), "Cool data col 1, value 1", "Cool data col 1, value 2", "Cool data col 1, value 3"),
     (datetime.datetime.now(), "Cool data col 2, value 1", "Cool data col 2, value 2", "Cool data col 2, value 3"),
    ]

    headers = ["Timestamp", "Data 1", "Data 2", "Data 3"]

    # HTML output:
    report = ArtifactHtmlReport("Cool stuff")
    report_name = "Cool DFIR Data"
    report.start_artifact_report(report_folder, report_name)
    report.add_script()
    report.write_artifact_data_table(headers, rows, files_found[0])  # assuming only the first file was processed
    report.end_artifact_report()

    # TSV output:
    scripts.ilapfuncs.tsv(report_folder, headers, rows, report_name, files_found[0])  # assuming first file only

    # Timeline:
    scripts.ilapfuncs.timeline(report_folder, report_name, rows, headers)

Remerciements

Cet outil est le fruit d'un effort collaboratif de nombreuses personnes de la communauté DFIR.

Logo ALEAPP avec l'aimable autorisation de Derek Eiri.

Télécharger l’outil