Académique Documents
Professionnel Documents
Culture Documents
Mohammed-Amine KOULALI
m.koulali@ump.ac.ma
ENSAO/UMP
7 Février 2024
1
Plan
Introduction
Démarrage de l’ordinateur
2
Analyse d’évidences
Pour:
3
Analyse d’évidences
4
Analyse d’évidences
▶ Elle couvre
▶ Contenu
▶ Événements
▶ Algorithmes
▶ Propriétés Matérielles
▶ Elle révèle
▶ Information
▶ Matériel
▶ Systèmes
▶ Communication
5
L’analyse d’évidences pour ordinateurs
Définition
L’analyse d’évidences pour ordinateurs désigne le processus de
collecte, d’examen et d’interprétation des données numériques afin
de détecter et d’analyser le contenu ainsi que les événements ayant
eu lieu sur un ordinateur.
6
Ce que le cours couvrira
7
Trouver des fichiers sur des supports numériques
▶ Scénarios:
▶ Crash ou dysfonctionnement de l’ordinateur ou des supports
▶ Crash du système d’exploitation ou des applications
▶ Erreurs de manipulation logicielle ou matérielle
▶ Activité malveillante de logiciels malveillants
▶ Suppression volontaire par des utilisateurs
8
Trouver du contenu invisible dans des fichiers
9
Identifier les processus
10
Identifier les communications avec d’autres machines
11
Analyse du contenu des e-mails
12
Analyse des journaux d’activité
13
Ce que le cours ne couvre pas
14
Objectifs du cours
Objectifs:
▶ Montrer comment opère l’analyse d’évidence au niveau le plus
basique.
▶ Donner une vue d’ensemble sur le fonctionnement d’un
système de fichiers.
▶ C’est aussi la base des outils modernes d’analyse d’évidences.
Dans ce cours:
▶ Les concepts de base des systèmes de fichiers populaires seront
expliqués.
▶ Les concepts nécessaires pour approfondir les recherches sur
les systèmes de fichiers seront abordés.
15
Prérequis
16
Système de fichiers
17
Qu’est-ce qu’un système de fichiers ?
18
Stockage à accès séquentiel vs. Accès aléatoire
Accès Séquentiel :
▶ Les données sont lues ou écrites séquentiellement, l’une après
l’autre, du début à la fin.
▶ Il est nécessaire de parcourir toutes les données précédentes
pour accéder à une donnée spécifique.
▶ Exemples de supports de stockage à accès séquentiel :
▶ Bandes magnétiques, Bandes VHS, Cassettes audio
Accès Aléatoire :
▶ Les données peuvent être accédées directement, sans avoir à
parcourir les données précédentes.
▶ L’accès aux données est indépendant de leur position physique.
▶ Exemples de supports de stockage à accès aléatoire :
▶ Disques durs, Mémoires flash, CD-ROMs, DVD-ROMs
19
Stockage à accès séquentiel
20
Stockage à accès aléatoire
21
Les systèmes de fichiers les plus utilisés
▶ Windows :
▶ FAT12, FAT16, FAT32
▶ exFAT
▶ NTFS
▶ UNIX :
▶ ext, ext2 , ext3, ext4
▶ Autres :
▶ Mac OS : HFS, HFS+
▶ CD/DVD : ISO9660, UDF
▶ JFS, ReiserFS, XFS, UFS
▶ Google File System, Hadoop Distributed File System, etc.
22
Démarrage de l’ordinateur
23
Démarrage de l’ordinateur
24
Organisation de la mémoire permanente
25
Master Boot Record
26
MBR
27
Bootstrap code
#include <stdio.h>
#include <stdlib.h>
int main() {
// Trouver la partition active en scannant la table
// de partitionnement
// Lire le premier secteur de la partition active
// Copier le programme trouvé en mémoire
return 0;
}
28
Table de partitionnement
29
Table de partitionnement
30
Partitions Primaires et Étendues, EBR et EPBR
▶ Partitions Primaires (max 4) : Des partitions directement
adressables par le MBR, utilisées pour installer des systèmes
d’exploitation ou stocker des données.
▶ Partition Étendue (max 1) : Une partition spéciale qui peut
contenir plusieurs partitions logiques.
▶ EBR (Extended Boot Record) : Un enregistrement de
démarrage similaire au MBR, contenu dans le premier secteur
de la partition étendue.
▶ EPBR (Extended Partition Boot Record) : Le premier
secteur de la partition étendue contient l’EBR. L’EPBR
contient des informations sur les partitions logiques dans la
partition étendue.
▶ Seules les deux premières entrées de la table de
partitionnement sont utilisées :
▶ La première décrit la partition logique courante.
▶ La seconde décrit où commence la prochaine partition étendue.
▶ Ainsi, une liste chaînée de partitions peut être créée.
31
Partitions Primaires et Étendues, EBR et EPBR
32
Boot Signature
33
Limitations du MBR
34
GPT : Table de partitionnement avec GUID
35
Que se passe-t-il après ?
▶ 0x07 = NTFS
▶ 0x83 = Linux
▶ Localisation de la partition et de son premier secteur en
commençant du début du disque.
▶ Lecture du(s) premier(s) secteur(s).
▶ Le boot code lit ensuite le bootloader :
▶ Recherche du fichier dans le système de fichiers du programme
(bootloader) et le charge en mémoire.
▶ À partir de cette phase, les spécificités des systèmes de fichiers
interviennent.
36
Bootloader
▶ Le bootloader :
▶ Comprend le système de fichiers particulier utilisé.
▶ Cherche dans ce système de fichiers le noyau de l’OS.
▶ Le charge en RAM.
▶ Et le démarre.
37
BootLoader
38
Dual Boot
39
Liste des Bootloaders
▶ AiR-Boot
▶ AKernelLoader
▶ Barebox
▶ BootX (Apple)
▶ BootX (Linux)
▶ Darwin Boot Loader
▶ Das U-Boot
▶ FreeLoader
▶ GNU GRUB
▶ GRUB4DOS
▶ Gujin
▶ iBoot
▶ LILO
▶ NTLDR
▶ SYSLINUX
▶ systemd-boot / Gummiboot
▶ ...
40
BootLoader
41
Système de Fichiers FAT16
42
Système de Fichiers FAT16
43
Secteur d’Amorçage (Boot Sector)
44
Secteur d’Amorçage (Boot Sector)
45
Secteur d’Amorçage (Boot Sector) - FAT12
▶ Le secteur d’amorçage du système de fichiers FAT12 est
structuré comme suit :
▶ Octets 0-2 : Instructions de saut vers le bootstrap.
▶ Octets 3-10 : Nom/version de l’OEM (par exemple, "IBM
3.3", "IBM 20.0", "MSDOS5.0", "MSWIN4.0").
▶ BIOS Parameter Block : Bloc de paramètres BIOS :
▶ Octets 11-12 : Nombre d’octets par secteur (512).
▶ Octet 13 : Nombre de secteurs par cluster (1).
▶ Octets 14-15 : Nombre de secteurs réservés (1).
▶ Octet 16 : Nombre de copies de la FAT (2).
▶ Octets 17-18 : Nombre d’entrées du répertoire racine (224).
▶ Octets 19-20 : Nombre total de secteurs dans le système de
fichiers (2880).
▶ Octet 21 : Type de descripteur de média (f0 : 1.4 MB floppy,
f8 : disque dur, ...).
▶ Octets 22-23 : Nombre de secteurs par FAT (9).
▶ Octets 24-25 : Nombre de secteurs par piste (12).
▶ Octets 26-27 : Nombre de têtes.
▶ Octets 28-29 : Nombre de secteurs cachés (0).
▶ Octets 30-509 : Code de démarrage (Bootstrap).
▶ Octets 510-511 : Signature 55 AA.
46
Secteur d’Amorçage (Boot Sector) - FAT16
47
Répertoire Racine (Root Directory)
48
Table d’Allocation des Fichiers (FAT)
49
Table d’Allocation des Fichiers (FAT)
50
Clusters
51
NTFS - Structure de Base
52
NTFS - MFT
53
Boot Sector de la Partition
54
Master File Table (MFT)
55