Navigation dans le tableau d'entrée des partitions GPT pour l'analyse forensique. Partie 3.

Troisième partie

Introduction

Dans nos articles précédents, nous avons jeté les bases de la compréhension de la table de partition GUID (GPT) en examinant le MBR de protection et l'en-tête GPT. À présent, dans la troisième partie, nous nous concentrons sur le tableau d'entrée des partitions GPT. Ce composant crucial du schéma GPT fournit une carte détaillée de toutes les partitions du disque, chaque entrée contenant des informations vitales sur une partition spécifique. En comprenant la structure et la fonction de la matrice d'entrées de partitions GPT, vous obtiendrez une vue d'ensemble de la manière dont GPT gère les partitions, ce qui vous permettra d'effectuer des analyses, des dépannages et des récupérations de données plus efficaces.

Tableau d'entrées de partition GPT (GUID Partition Table)

Le tableau d'entrées de la table de partition GUID (GPT) est un élément essentiel du système de partitionnement GPT, qui est utilisé pour définir et gérer les partitions d'un disque dur. Il s'agit d'une liste détaillée qui enregistre les spécificités de chaque partition sur le disque, comme le catalogue d'une bibliothèque qui répertorie les détails de chaque livre.

Composants clés du tableau d'entrée GPT :

GUID de la partition: Chaque partition possède un identifiant unique, connu sous le nom de GUID de partition, qui garantit que chaque partition peut être identifiée de manière unique, même sur des systèmes différents.

Identifiant unique: Il s'agit d'un autre identifiant unique propre à chaque partition, qui fournit une couche supplémentaire d'identification unique.

Démarrage du LBA (Logical Block Addressing) de la partition: Indique le point de départ de la partition sur le disque. Il indique au système où commence la partition.

LBA de fin de partition: Comme le LBA de départ, il indique l'endroit où la partition se termine sur le disque.

Bits d'attributs: Il s'agit d'indicateurs qui fournissent des informations supplémentaires sur la partition, par exemple si elle est amorçable ou si elle possède des attributs spéciaux.

Nom de la partition: Chaque partition peut avoir un nom lisible par l'homme, ce qui facilite l'identification de l'objet ou du contenu de la partition. Ce nom est terminé par un caractère nul pour marquer la fin de la chaîne.

Nous allons les détailler afin que vous compreniez bien chaque entrée du tableau.

Lorsque le disque est configuré comme un disque GPT, la première partition créée est la partition système EFI (ESP). Il s'agit d'une partition cachée, difficilement accessible aux utilisateurs. Cette partition se trouve dans le secteur 2048 et est formatée en FAT32 pour être compatible avec tous les systèmes (Windows, Linux, MacOS).

La capture d'écran ci-dessus montre une installation standard de Windows 10 où la partition réservée Microsoft a été créée avec une partition de données de base spécifiée par l'utilisateur lors de l'installation.

Vous trouverez ci-dessous un extrait des GUID d'un tableau trouvé sur la page Wikipedia GUID Partition Table (tableau de partition des GUID) :

Source : https://en.wikipedia.org/wiki/GUID_Partition_Table#Partition_type_GUIDs

Bien entendu, le GUID ne sera pas stocké dans le formulaire GUIID lors de l'affichage des valeurs dans le visualiseur hexagonal. 

Les GUID sont convertis comme nous l'avons fait dans l'article de blog précédent, mais ils sont également facilement visibles lorsque vous les visualisez dans HxD :

Nous pouvons confirmer les GUID des partitions du volume avec la commande : mountvol.exe

En connaissant le LBA de départ et le LBA d'arrivée, nous pouvons calculer la taille de la partition. Par exemple, la partition EFI :

LBA de départ : 2048

LBA de fin : 534527

Longueur totale : 532479 secteurs x 512 octets/secteur = 272629248 octets, soit 260 Mo.

Le tableau d'entrées de partition GPT de sauvegarde

Le tableau d'entrée de la partition GPT de sauvegarde est situé à la fin du disque et avant l'en-tête GPT, plus précisément 33 secteurs avant la fin du disque (LBA (n - 33) où n est le dernier secteur du disque). Nous pouvons également calculer pourquoi il se trouve 33 secteurs avant la fin du disque, ou 32 secteurs avant l'en-tête GPT de sauvegarde.

Chaque entrée de partition a une taille de 128 octets et il y a 128 entrées au total dans le tableau d'entrées. Cela signifie qu'il y a 16 384 secteurs dans le tableau ou 32 secteurs (16384/512). 

L'en-tête GPT de sauvegarde pointe vers l'emplacement du tableau d'entrée de partition GPT de sauvegarde.

Sauvegarde d'un tableau d'entrée de partition GPT proche de la fin du disque

Réparation d'un tableau d'entrées de partition GPT

Pour réparer le tableau d'entrées de partition GPT, il suffit de copier la sauvegarde de 16 384 octets trouvée dans 33 secteurs de la fin du disque et de la coller dans les LBA 2 à 3. Il n'est pas nécessaire d'altérer/modifier les valeurs hexagonales car il s'agit de copies exactes.

Le GPT de sauvegarde situé vers la fin du disque est identique au primaire. En fait, le découpage des secteurs pour chacun d'eux et leur hachage montrent qu'ils correspondent exactement. 

Conclusion

Dans ce troisième épisode, nous avons examiné en détail le tableau d'entrées de partition GPT, un composant essentiel du schéma GPT. En décomposant chaque champ des entrées de partition, des GUID aux bits d'attribut et aux noms de partition, nous avons vu comment GPT fournit un cadre solide pour organiser et accéder aux données du disque. Ces connaissances sont essentielles pour les enquêtes médico-légales, la récupération des données et l'administration des systèmes, car elles vous permettent de naviguer et de manipuler efficacement les disques partitionnés GPT. Restez à l'écoute pour notre prochain article, dans lequel nous nous pencherons sur des applications pratiques et des études de cas, afin de mettre la théorie en pratique.

Cet article conclut notre série de trois articles sur les structures de partition GPT.
Si vous avez manqué les articles précédents, commencez par Partie 1 - Le MBR de protectionoù nous examinons la manière dont la compatibilité avec l'héritage est maintenue, et nous poursuivons avec Partie 2 - L'en-tête GPTqui définit l'agencement du disque et en garantit l'intégrité.

Vous voulez aller plus loin ? Abonnez-vous à notre lettre d'information pour obtenir des informations sur la récupération des partitions, le hachage au niveau du disque et les défis CTF basés sur des scénarios réels de criminalistique.

Facebook
Twitter
Courriel
Imprimer

Une réponse

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *