Formation
Forensic sur Android
Une formation
Hamza KONDAH
Une formation
Introduction
Une formation
Plan de la formation
Présentation de la formation
L’analyse forensique mobile
Introduction à Android
Acquisitions de données
Analyse de la mémoire
Analyse applicative
Conclusion et perspectives
Une formation
Connaissances requises
Avoir des bases réseau, telles que le
modèle OSI et les généralités sur
TCP/IP,
Avoir des notions de bases Linux,
Avoir suivi la formation Hacking et
Sécurité, l'essentiel et avancé (l’idéal)
Une formation
Public concerné
Administrateurs réseaux et systèmes
RSSI
Pentesteurs ou auditeurs
…
Mettre en place le Lab
Une formation
Hamza KONDAH
Une formation
Lab : Mettre en place le Lab
Introduction à l'analyse
forensique
Une formation
Hamza KONDAH
Une formation
Introduction aux Forensic
Analyse post mortem
Récolte, analyse et exposition de
preuves
Récupération d’informations
Analyse avancée
Outils hardware et Software
Volatilité des données
Pourquoi l'analyse
forensique mobile?
Une formation
Hamza KONDAH
Une formation
Evolution incroyable de l’industrie
mobile
Prend la place des ordinateurs
Mine d’or
Données confidentielles
Photos
Contact
Pourquoi le forensique mobile ?
Une formation
Le smartphone connait tout sur vous
Ce qui en fait une cible privilégiée
pour les hackers
Les données étant la cible de tout
Hacker (de nos jours)
Pourquoi le forensique mobile ?
Processus d’analyse
forensique mobile
Une formation
Hamza KONDAH
Une formation
Méthodologie générale
Reporting
Examination et analyse
Acquisition
Saisie et isolation
Phase de préparation
Les challenges du
Forensic mobile
Une formation
Hamza KONDAH
Une formation
Processus d’analyse forensic
mobile
Grande
variations
hardware
Sécurité built-in
Systèmes de
fichiers
différents
Chiffrement Wiping
Volatilité des
données
Cloud
Introduction à Android
Une formation
Hamza KONDAH
Une formation
L’OS Android
Un système d'exploitation mobile
fondé sur le noyau Linux
Développé actuellement par Google
Open Source
OS Mobile le plus utilisé
Composants physiques
Une formation
Hamza KONDAH
Une formation
Composants physiques
Processeur central
Processeur base band
Mémoire
Carte SD
Afficheur
Batterie
L’architecture Android
Une formation
Hamza KONDAH
Une formation
L’architecture Android
Fréquences des mises à jour
Une formation
Hamza KONDAH
Une formation
Fréquences des mises à jours
Processus de boot Android
Une formation
Hamza KONDAH
Une formation
Processus de boot Android
Le boot loader
Le kernel
Le processus init
Zygot et Dalvik
Le système de serveur
Plan
Une formation
Processus de boot Android
Une formation
Bootloader
Une formation
Recovery
Une formation
Lock des Bootloaders
Une formation
Le kernel
Une formation
Le processus init
Une formation
Zygot et Dalvik
Une formation
Le système de serveur
Le Rooting, le boot et le
recovery mode
Une formation
Hamza KONDAH
Une formation
Rooting
Une formation
Recovery Mode
Une formation
Custom Recovery
Une formation
Fast boot
Une formation
Bootloader locké
Le mode debugging
Une formation
Hamza KONDAH
Une formation
Le mode debugging
Une formation
adb devices
adb shell
adb shell –s xxxxxxx
adb install xxx.apk
adb pull
adb push
Le mode debugging
Le port JTAG
Une formation
Hamza KONDAH
Une formation
JTAG : Join Test Action Group
Une formation
Chip-off
Les bases de données sous
Android
Une formation
Hamza KONDAH
Une formation
Les bases de données
Base de données SQLITE
Ouverture avec sqllite browser sous
Kali
Sqlite3 pour une interaction directe
Structure et système de
fichiers
Une formation
Hamza KONDAH
Une formation
Introduction
Partitions sous Android
Hiérarchie des fichiers
Plan
Une formation
Le premier objectif du Forensic est
l’extraction de données
Le but étant une analyse efficiente
Le plus important pour
l’investigateur est donc de
comprendre où et comment ces
données sont stockées
Introduction
Une formation
Partition
Système
de fichiers
Stockage
Introduction
Une formation
Partitions sous Android
Une formation
En outre il y a aussi les partitions
d'une carte SD :
Partitions sous Android
/sdcard /sdc-ext
Note : seule la partition /sdcard est
présente dans TOUS les appareils
Android. La /sdc-ext est présente dans
certains appareils
/boot
C'est la partition qui permet au téléphone de démarrer. Elle
inclut le kernel et le ramdisk
Sans cette partition, le téléphone ne sert à rien vu qu'il ne
peut pas démarrer. Le fait d'effacer cette partition depuis le
recovery doit uniquement être fait dans des situations bien
précises
Attention! Une fois la partition effacée, il ne faut PAS
redémarrer l’appareil avant d'en avoir installé une nouvelle
Le fait de flasher une ROM installe cette partition /boot
/system
Elle contient le système d'exploitation en entier, sauf le
kernel et le ramdisk
On a donc l'interface utilisateur Android ainsi que toutes les
applications système qui sont préinstallées sur l'appareil ou
une rom
Le fait d'effacer cette partition va supprimer Android de
l'appareil sans le rendre "non démarrable"
Vous pourrez toujours passer le téléphone en mode recovery
ou bootloader pour flasher une ROM
/recovery
Cette partition peut être considérée comme une
partition alternative de démarrage qui vous permet de
démarrer l'appareil dans la console recovery pour
procéder à des opérations avancées
/data
Egalement appelée "données utilisateurs" ou "userdata«
Cette partition contient les données de l'utilisateur. C'est à cet
endroit que vos contacts, messages, paramètres et
applications téléchargées sont stockés.
Le fait de supprimer cette partition correspond à un "factory
reset", autrement dit une réinitialisation usine. Toutes les
données personnelles ne seront pas effacées mais une
grande partie. Par exemple, si vous avez stocké des photos
dans /sdcard/DCIM, elles ne seront pas effacées
/cache
Il s'agit de la partition où Android stocke les données
fréquemment utilisées et des composants de
l'application Nettoyer le cache n'affecte pas vos
données personnelles, mais permet simplement de se
débarrasser des données existantes là-bas, qui sont
automatiquement reconstruites à chaque redémarrage
/misc
On retrouve ici des paramètres système divers qui sont
actifs ou pas. On a par exemple le CID (ID
Opérateur/Région), la configuration USB et certains
paramètres matériels
Elle représente une partition importante alors si elle
vient à être manquante ou corrompue, plusieurs
fonctionnalités de votre téléphone ne marcheront plus
ou de manière anormale
/sd-ext
Ceci n'est pas une partition Android standard mais elle est devenue populaire via
les ROMs Custom. C'est globalement une partition additionnelle sur votre carte
SD qui fonctionne comme la partition /data lorsqu‘elle est utilisée par certaines
ROMs ayant des fonctionnalités particulières comme App2SD ou Mount2SD
activées. Elle est particulièrement utile sur les appareils dotés d'une petite
mémoire interne allouée à la partition /data
Par conséquent, les utilisateurs - qui veulent installer plus de programmes que la
mémoire interne ne le permet - peuvent utiliser cette partition /sd-ext avec leur
ROM Custom (qui doit être compatible) pour avoir un espace de stockage
complémentaire
Le fait de supprimer cette partition aura les mêmes effets que /data, vous perdrez
donc contacts, messages, applications téléchargées et paramètres.
Une formation
Hiérarchie des fichiers
Une formation
hiérarchie des fichiers
Répertoires et fichiers
courants
Une formation
Hamza KONDAH
Une formation
Analyse Wi-Fi
Analyse des appels et contacts
Analyse MMS et SMS
Analyse de messagerie
Répertoires courants
Plan
Une formation
Le Wi-Fi
Base de données
Source de données très intéressante
/data/misc/wifi/wpa_supplicant.conf
Points d'accès par défaut
Analyse Wi-Fi
Une formation
Les contacts et les appels existent
dans la même BDD
Parfois auto-complétés depuis gmail
Package :
com.android.providers.contacts
Analyse des appels et
contacts
Une formation
Analyse des appels et
contacts
Une formation
Analyse MMS et SMS
Pareillement que les contacts +
appels
Même BDD
Une formation
Analyse de messagerie
Une formation
Répertoires courants
Liste des contacts :
•com.android.providers.contacts
Historique des appels:
•com.android.providers.contacts
SMS/MMS
•com.android.providers.telephony
Calendrier
•com.android.providers.calendar
Historique du navigateur
•com.android.browser
•com.android.chrome
Photos/Vidéos
•/data/media/ ou DCIM
Une formation
Répertoires courants
/data/system/packages.list
/system/app
Types d'acquisitions
Une formation
Hamza KONDAH
Une formation
La base de notre analyse Forensic
Exposition de toutes les données
intéressantes :
Acquisition logique des
données
SMS
Historique
des appels
Data Logs Photos
Une formation
Acquisition
Une formation
Acquisition physique
Acquisition logique
Acquisition mémoire
Acquisition
Acquisition physique
Une formation
Hamza KONDAH
Une formation
Carte SD
dd if=/dev/block/sdb3
of=/mnt/sdcard/output.img
bs=4096
conv=notrunc,noerror,sync
Acquisition physique
Une formation
Netcat
Installer l’APK busybox ou toybox, qui
nous permettra d’avoir Netcat sous
notre périphérique Android.
Acquisition physique
Une formation
adb forward tcp:9999 tcp:9999
dd if=/dev/block/sdb3 |
toybox nc -l -p 9999
ncat 127.0.0.1 9999 > data.img
Acquisition physique
Une formation
Acquisition physique
Une formation
Acquisition physique
Lab : Acquisition physique
Une formation
Hamza KONDAH
Lab : Via la commande dd
Une formation
Lab : Via Magnet Acquire
Une formation
Acquisition logique
Une formation
Hamza KONDAH
Une formation
ADB
Acquérir et analyser les sauvegardes
Android
Extraction SIM
Plan
Une formation
Acquisition physique
Acquisition logique
Acquisition mémoire
Acquisition
Une formation
Utilisé pour de développement
Utilisé pour le débogage
Ex : copie de fichiers, Shell,
récupération des logs…
ADB
Une formation
ADB
Une formation
Utilisé pour de développement
Utilisé pour le débogage
Ex : copie de fichiers, Shell,
récupération des logs…
ADB pull
Une formation
Adb backup est une technique populaire
qui est couramment utilisée pour les
sauvegardes de périphérique Android.
« adb –h »
Acquérir et analyser les
sauvegardes Android
Une formation
L’avantage par rapport à une
sauvegarde complète c’est que
vous n’avez pas besoin d’un
accès « Root »
Acquérir et analyser les
sauvegardes Android
Une formation
Placez vous dans le répertoire vers le
quel vous voulez extraire les données :
Adb backup -all (N’oubliez pas de le
valider sur le téléphone)
adb backup -shared ou -apk ou -system
Acquérir et analyser les
sauvegardes Android
Une formation
Avec l’outil Android Backup Extractor,
Nous allons extraire en tar notre
backup
http://sourceforge.net/projects/adbextr
actor/files/latest/download
Acquérir et analyser les
sauvegardes Android
Une formation
Effectuer la commande suivante en se
plaçant dans le répertoire qui contiendra
abe.jar et backup.ab :
Java -jar abe.jar -debug unpack
backup.ab backup.tar
Acquérir et analyser les
sauvegardes Android
Une formation
Enfin utiliser la commande tar
pour décompresser :
tar -xvf backup.tar
Acquérir et analyser les
sauvegardes Android
Une formation
Extraction SIM
Lab : Acquisition logique
Une formation
Hamza KONDAH
Lab : Acquisition logique
Une formation
Lab : Acquisition logique
Une formation
Lab : Acquisition logique
Une formation
Acquisition de la mémoire
Une formation
Hamza KONDAH
Une formation
Processus spécifique à chaque version
Utilisation de l’outil LiMe
Outils hardware et software dédiés
https://github.com/504ensicsLabs/LiME
http://opensource.samsung.com/reception.do
https://source.android.com/source/building-kernels.html
Acquisition de la mémoire
Une formation
Mémoire flash  RAM  Processeur
Tout dépend de l’utilisation du
périphérique
Données volatiles
Tendance des applications récentes
Acquisition de la mémoire
Une formation
Volatility
Une formation
Volatility
Cracking du lockpattern
Une formation
Hamza KONDAH
Une formation
Cracking du lock pattern
Autopsy
Cracking du PIN/Password
Cracking du Gesture
Plan
Une formation
Cracking du lock pattern
Une formation
Cracking du lock pattern
Une formation
Cracking du lock pattern
Une formation
Cracking du lock pattern
Une formation
Autopsy
Une formation
Cracking du PIN/Password
Une formation
Cracking du PIN
Lab : Cracking du lock pattern
Fichier gesture.key
Une formation
Hamza KONDAH
Lab : Cracking du lock pattern
Image mémoire
Une formation
Hamza KONDAH
Lab : Mise en situation
Une formation
Hamza KONDAH
Lab : Identification
d'applications suspicieuses
Une formation
Hamza KONDAH
Lab : Analyse de CVE
Une formation
Hamza KONDAH
Lab : Analyse de fichiers
malveillants
Une formation
Hamza KONDAH
Analyse et Reverse
engineering d’APK
Une formation
Hamza KONDAH
Une formation
Principe de reverse engineering
Lab : principe de reverse
engineering
Plan
Une formation
Principe de reverse engineering
Une formation
Lab : principe de reverse
engineering
Une formation
Lab : principe de reverse
engineering
Lab : Analyse avec MOBFS
Une formation
Hamza KONDAH
Une formation
Mobile Security Framework
(MobSF)
Framework de pentesting
Android, iOS et Windows Mobile
Analyse statique et dynamique
Analyse de malware
MobFS
Conclusion et perspectives de
la formation
Une formation
Hamza KONDAH
Une formation
Bilan
Analyse forensique mobile
Introduction au forensique sur
Android
L’ acquisition de données
Analyse de la mémoire
Analyse applicative et malware
Une formation
Prochaine formation
Analyse de malware
L’analyse dynamique
L’analyse hybride
Analyse de documents
Analyse de la mémoire
Machine Learning 
Une formation
Merci

Alphorm.com Formation Forensic sur Android