Architecture Android
L’architecture d’Android est superposée et modulaire, ce qui la rend polyvalente et complexe d’un point de vue Forensic.
Elle est composé des couche suivantes :
Noyau Linux
C’est la base du système, elle va fournir des fonctionnalités de base du système. Elle agit comme couche entre l’hardware et le software
- Services de base
- Gestion des processus
- Gestion de la mémoire
- Conducteurs de dispositifs
Bibliothèques Native
Elles fournissent des fonctionnalités de base du système et aux applications.
- Bibliothèques du système
- Cadres pour les médias
- Moteur de base de données SQLite
- Moteur de navigateur WebKit
Framework Application
Elle fournit des API pour des niveau plus haut, comme la localisation, la téléphonie …
- API pour le développement d’applications
- Gestion des ressources
- Interaction des composants
- Traitement des services
Application
La couche la plus haute de l’architecture Android. Elle comprend le système et les applications installé par l’utilisateur. C’est la principale source de données dans une enquêtes Forensic.
- Demandes d’utilisation
- Applications du système
- Applications de tiers
Système de fichiers Android
Android utilise un système de fichier basé sur Linux qui partitionne et met des “couches” pour gérer les données de manière sécurisée et efficace. La structure est personnalisée en fonction du matériel et de l’OS.

Partitions du système de fichier
|
|
Analyse d’une image
Nous avons un fichier .ad1, nous l’importons dans FTK Imager.
Ensuite nous avons accès à certains fichiers de l’appareil suspect :

Le but de l’exercice ici est de trouver le numéro de série qui se trouve dans /system/build.prop:

Artefacts
Pour commencer nous allons devoir poser les bases et se demandé quelles information vont être importantes ou non.
Voici une liste d’artefacts qui peuvent être intéressant selon notre enquête.
SMS et Journaux d’Appels
Emplacement :
- SMS (et MMS) : /data/data/com.android.providers.telephony/databases/mmssms.db
- Journaux d’appel : /data/data/com.android.providers.contacts/databases/calllog.db
Contacts
Emplacement :
- Contacts : /data/services/com.android.providers.contacts/databases/contacts2.db
Historique du navigateur
Emplacement (Chrome) :
- /data/data/com.android.chrome/app-chrome/par défaut/history
Données de localisation
Emplacement :
- /data/data/com.google.android.gms/databases/ (location.db, networklocations.db ou com.google.android.location)
Mediatech
Emplacement :
- /sdcard/DCIM/
- /sdcard/Pictures/
- /sdcard/WhatsApp/Media/
Données d’applications
Emplacement :
- /data/data/(app.package.name)/
- Par exemple: /data/data/com.instagram.android/ ou /data/com.snapchat.android/
Compte utilisateurs
Emplacement :
- /data/system/users/0/accounts.db
- /data/data/com.google.android.gms/databases
Information sur les applications installé
Emplacement :
- /system/packages.xml
Outils commercial
Il y a 3 types d’exfiltration de données sur android :
| Type | Description |
|---|---|
| Logique | Comme en utilisant une sauvegarde pour obtenir des données au niveau de l’utilisateur. |
| Système de fichiers | Donne l’accès aux dossiers et aux fichiers système. Il permet un accès plus profond que l’acquisition logique, y compris les répertoires d’applications et le stockage interne, ce qui est utile pour examiner les données et les configurations des applications. |
| Physique | Une copie bit par bit de la mémoire complète de l’appareil, y compris des données supprimées, un espace non alloué et des zones du système inaccessibles par des acquisitions de plus haut niveau. |
Les outils
| Nom | Fonction | Utilisation |
|---|---|---|
| ALEAPP | Artifact Parser | Extracts and parses key Android artifacts (e.g., app data, location, usage stats). |
| Autopsy + Android Modules | GUI Forensics Suite | Examines logical dumps with plugin support for call logs, messages, and app data. |
| Cellebrite UFED | Commercial Mobile Forensics Platform | Physical, file system, and logical Android (and iOS) device extraction. |
| Magnet AXIOM | Commercial Suite | Ingests Android images and categorizes artifacts using timeline, chats, media, etc. |
| Oxygen Forensic Detective | Commercial All-in-One Tool | Recovers deleted data, decrypts apps, and parses communications and cloud data. |
| ADB (Android Debug Bridge) | Command-line Interface | Communicates with the Android device, collects logs, and performs manual file extraction (root may be needed). |
| TWRP Recovery | Custom Recovery Interface | Used to boot into a custom recovery mode for image acquisition or data access. |
| LiME (Linux Memory Extractor) | Memory Dumping Tool | It captures volatile memory (RAM) from an Android device and is used for live memory forensics. |
| Andriller | Device Analysis + Unlock Tool | Extracts device data, PIN cracking, and report generation from Android backups. |
| ADB-Backup Extractors | Backup Utilities | Converts Android ADB backups (.ab files) into accessible .tar archives. |
| Protobuf Parsers | Data Format Parser | Parses Android usage stats, app events, and settings stored in Protobuf format. |
Analyse des artefacts
SMS
On se rends dans le fichier nécessaire :
|
|
On envoie une requête SQL pour nous afficher TOUT les messages de la base sms :

Journal d’appel
Comme à l’étape précédente, on se rend au chemin nécessaire :
|
|

Et ainsi de suite pour les différentes base de données.
aLEAPP
Nous venons de faire une analyse d’artefact à la main, c’est fastidieux de faire ça. Nous pouvons donc utilisé un outil dont nous avons parlé tout à l’heure : aLEAPP
Analyse Android
aLEAPP analyse et fournit un rapport lisible par nous. Il possède 2 interface, une graphique et l’autre en ligne de commande.
GUI
python aleappgui.py
Il prend des fichier .zip/.tar/.gz.
Une fois le fichier en .zip donné, un fichier de sortie et lancé l’analyse nous pouvons cliquer sur Open Report and Close Le rapport s’ouvrira dans le navigateur.
