[PDF] [PDF] Analyse du Registre - Pearson France

2010 Pearson Education France – Outils d'analyse forensique sous Windows – Harlan Carvey Les versions ultérieures de Windows ont remplacé ces fichiers par le Registre, une base de données TheWindowsNTRegistryFileFormat pdf



Previous PDF Next PDF





[PDF] La base du registre - maurise-softaware (informatique)

On accède à la base de registre en ouvrant Démarrer, Exécuter et on tape regedit ou regedt32 une fenêtre ressemblant à l'explorateur Windows s'ouvre Elle est 



[PDF] Le registre Windows

Il est employé pour remettre en place (dans la base de registre) les associations relatives à l'exécution des fichiers exécutables ( exe, com, bat, reg, etc ) 



[PDF] Le registry - Cours Tech Info

http://home tiscali be/octet/OS/Registry pdf 1 Le registry Microsoft appelle la « Base de registre » (BDR) ou registry, un endroit où Windows rassemble des 



[PDF] Manipuler le Registre - PC Astuces

13 nov 2014 · Depuis Windows XP, tous les paramètres système de Windows sont enregistrés dans une base de données : le Registre Il contient des 



[PDF] Le registre Windows - Complément de cours - Module R3 - rt-bethune

Quelles différences entre fichiers REG et fichiers INF ? ➢ fichier REG permet de modifier, ajouter ou supprimer des clés de la base de registre, ➢ fichier 



[PDF] Analyse du Registre - Pearson France

2010 Pearson Education France – Outils d'analyse forensique sous Windows – Harlan Carvey Les versions ultérieures de Windows ont remplacé ces fichiers par le Registre, une base de données TheWindowsNTRegistryFileFormat pdf



[PDF] Maintenance - Systeme dexploitation DOS - Notes de cours

Le registre de Windows (ang : registry) est une base de données qui centralise, entre autres, les paramètres de configuration du matériel, des logiciels et de l' 



[PDF] explication regeditsxw - 3Kernels

Explication de base sur la base des registres Ce tutoriel S'il vous est impossible de sauver votre Registre sous Windows, insérer la disquette et respecter les



[PDF] Registre Windows 7 - 1foplus - Se connecter

15 oct 2004 · et de vos applications Ils constituent ce que l'on appelle le Registre ( anciennement la base de Registre) 1 Lancer l'éditeur du Registre



[PDF] The Hackademy School - Newbie - part 2pdf - Zenk - Security

Inistiation à la base de registre Windows LES COURS PAR CORRESPONDANCE DE THE HACKADEMY SCHOOL Initiation à la base de registre Windows

[PDF] base de registre pdf

[PDF] fogprep

[PDF] tuto sysprep

[PDF] comment creer un master windows 7

[PDF] comment faire un sysprep

[PDF] mode audit windows 10

[PDF] mode oobe

[PDF] changer mot de passe telephone android

[PDF] changer mot de passe outlook android

[PDF] android modifier mot de passe compte gmail

[PDF] changer mot de passe gmail android

[PDF] changer mot de passe tablette android

[PDF] changer mot de passe google

[PDF] changer mot de passe email samsung

[PDF] modifier mot de passe gmail

4

Analyse du Registre

Au sommaire de ce chapitre

UIntroduction

UAu coeur du Registre

UAnalyser le Registre

UEn résumé

UContenu du DVD

UFormation accélérée

UQuestions fréquentes

4.1 Introduction

Pour de nombreux administrateurs et analystes forensiques, le Registre ressemble pro- bablement à l'entrée d'une caverne sombre et inhospitalière dans le système d'exploita- tion Windows. D'autres peuvent le voir comme une porte noire à l'extrémité d'un long couloir sur laquelle est gravé "Vous qui allez franchir cette porte, abandonnez tout espoir". En vérité, le Registre est une véritable mine d'informations pour l'administra- teur et l'enquêteur. Dans de nombreux cas, le logiciel utilisé par l'assaillant laisse une empreinte dans le Registre, donnant alors à l'enquêteur des indices sur l'incident. Si vous savez où regarder et comment interpréter vos découvertes, vous disposez d'un for- midable moyen de connaître les activités qui ont eu lieu sur le système. L'objectif de ce chapitre est de vous donner une compréhension approfondie du Registre et de son contenu. Outre des informations de configuration, le Registre de Windows détient des données sur les fichiers récemment manipulés et des quantités d'autres sur les activités de l'utilisateur. Tout cela peut avoir une grande valeur, selon la nature du cas sur lequel vous travaillez et les questions auxquelles vous devez répondre. La plupart des analyses du Registre étudiées dans ce chapitre seront post mortem, c'est-

WS-forensics.book Page 151 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

152Outils d'analyse forensique sous Windows

à-dire après avoir acquis une copie du système. Néanmoins, dans certains cas, nous décrirons l'analyse d'un système actif et fournirons des exemples de clés et de valeurs que l'on trouve sur un système en fonctionnement. Quelques aspects mineurs propres aux analyses en direct ou post mortem ne doivent pas être oubliés et seront indiqués au moment opportun. Tout au long de ce chapitre, nous présenterons les clés et les valeurs du Registre qui pré- senteront un intérêt au cours d'une investigation. Toutefois, vous ne devez pas considé- rer ce chapitre comme une liste exhaustive des valeurs intéressantes. Bien que les clés du Registre directement liées au système d'exploitation évoluent rarement après l'ins- tallation du système, elles peuvent changer lorsque des Service Packs et des correctifs sont installés, ainsi qu'entre les versions du système d'exploitation Windows lui-même. Par ailleurs, les nombreuses applications existantes peuvent chacune ajouter leurs propres entrées au Registre et elles peuvent également changer entre les versions d'une même application. Vous devez voir ce chapitre comme un guide et une référence, mais n'oubliez surtout pas qu'il n'est absolument pas exhaustif. Son objectif est de décrire le format des fichiers du Registre, la manière d'étudier le Registre, certaines clés impor- tantes et la manière de les analyser. Lorsque vous aurez terminé sa lecture, vous devriez comprendre ce que le Registre contient et devenir un adepte de la recherche et de l'ana- lyse des informations qui s'y trouvent.

4.2 Au coeur du Registre

Qu'est-ce que le Registre ? Si nous revenons au DOS et aux premières versions de Win- dows (3.1, 3.11, etc.), les informations de configuration (pilotes, paramètres) du sys-

tème étaient réparties dans plusieurs fichiers, plus précisément autoexec.bat, config.sys,

win.ini (sur Windows) et system.ini. Les différents paramètres définis dans ces fichiers

déterminaient les programmes chargés, l'aspect du système et la manière dont il répon-

dait aux actions de l'utilisateur. Les versions ultérieures de Windows ont remplacé ces fichiers par le Registre, une base de données hiérarchique centrale ( http://support.microsoft.com/kb/256986) qui conserve les paramètres de configuration des applications, des pilotes matériels et des utilisateurs. Cette "base de données" (au sens large) remplace les fichiers texte de confi- guration utilisés par les anciennes versions des systèmes d'exploitation de Microsoft. En général, les administrateurs interagissent avec le Registre en utilisant une applica- tion intermédiaire, la plus courante étant l'éditeur graphique du Registre fourni avec Windows (regedit.exe ou regedt32.exe). Dans de nombreux cas, les changements apportés par l'utilisateur ou l'administrateur au Registre se font en réalité au travers d'un programme d'installation (application, correctifs) qui n'autorise pas une interac-

WS-forensics.book Page 152 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

Chapitre 4Analyse du Registre153

tion directe avec des clés et des valeurs particulières. Les distributions de Windows XP et 2003 proposent l'outil en ligne de commande reg.exe, qui peut être utilisé depuis l'invite de commandes ou des scripts (pour de plus amples informations sur les outils graphiques de manipulation du Registre, consultez l'encadré "RegEdit et RegEdt32").

RegEdit et RegEdt32

Il faut savoir que les deux outils de manipulation du Registre fournis avec le système d'exploitation ne sont pas équivalents sur toutes les versions de Windows ( http:// support.microsoft.com/kb/141377 Par exemple, sur Windows NT et 2000, regedit.exe est utilisé principalement pour ses possi-

bilités de recherche, non pour modifier les listes de contrôle d'accès (ACL, Access Control List)

des clés du Registre. Par ailleurs, regedit.exe ne reconnaît pas les types de données REG_EXPAND_SZ (chaîne de longueur variable) et REG_MULTI_SZ (chaîne multiple). En cas de modification d'une valeur de ce type, le s données sont enregistrées avec le type

REG_SZ

(chaîne de longueur fixe) et la clé perd sa fonctionnalité. Quant à regedt32.exe, il ne permet

pas d'importer ou d'exporter des fichiers ruches ( .reg). Sur Windows XP et 2003, regedit.exe donne accès à toutes ces possibilités, tandis que regedt32.exe n'est rien d'autre qu'un petit programme qui lance regedit.exe. Lorsque l'administrateur ouvre regedit.exe, il voit une arborescence constituée de cinq dossiers racines, appelés ruches, dans la zone de navigation de l'interface (voir Figure 4.1). Cette structure permet à l'administrateur de se déplacer facilement dans le registre, de manière comparable à la navigation dans un système de fichiers. Chacune de ces ruches joue un rôle important dans le fonctionnement du système. La ruche HKEY_USERS contient tous les profils d'utilisateurs chargés sur le système. HKEY_CURRENT_USER correspond au profil de l'utilisateur actuellement connecté sur le système. La ruche HKEY_LOCAL_MACHINE contient un grand nombre d'infor- mations de configuration du système, y compris les paramètres matériels et logiciels. La ruche HKEY_CURRENT_CONFIG contient le profil matériel du système utilisé au démarrage. Enfin, la ruche HKEY_CLASSES_ROOT contient les informations qui asso-

Figure 4.1

Affichage des cinq

ruches racines dans regedit.exe

WS-forensics.book Page 153 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

154Outils d'analyse forensique sous Windows

cient les applications aux différents types de fichiers sur le système. On la retrouve au travers de HKEY_CURRENT_USER\Software\Classes (pour les paramètres propres à l'utilisateur) et de HKEY_LOCAL_MACHINE\Software\Classes (pour les paramètres de niveau système). Tout cela est très bien, mais il est important de connaître l'origine des ruches et leur emplacement dans le système de fichiers. Le contenu visible dans l'Éditeur du Registre provient principalement des fichiers recensés au Tableau 4.1.

ASTUCE

Vista et Windows 7 définissent des fichiers ruches supplémentaires, notamment la ruche Components (dans le répertoire system32\config) et le fichier usrclass.dat (dans le répertoire C:\Users\nom d'utilisateur\AppData\Local\Microsoft\Windows). Nous reviendrons sur ces ruches, notamment le fichier usrclass.dat, plus loin dans ce chapitre. Vous noterez que certains chemins sont volatils et qu'il n'existe aucun fichier corres- pondant sur le disque dur. Ces ruches sont créées pendant le démarrage du système et ne sont pas disponibles lorsqu'il est arrêté. Il ne faut pas oublier ce point lorsque vous effectuez une analyse forensique post mortem, ainsi que lors d'une réponse immédiate sur un système actif. Si les données présentes dans les ruches volatiles sont importantes pour le dépannage du système ou pour la conduite des activités de réponse à un inci-

dent, avant que le système ne soit arrêté, vous devez envisager d'exporter l'intégralité

de la ruche dans un fichier .reg avec regedit.exe ou d'utiliser d'autres mécanismes pour collecter les données pertinentes depuis la ruche. Tableau 4.1 : Chemins dans le Registre et fichiers correspondants

Chemin du RegistreChemin du fichier

HKEY_LOCAL_MACHINE\System %WINDIR%\system32\config\System HKEY_LOCAL_MACHINE\SAM %WINDIR%\system32\config\Sam HKEY_LOCAL_MACHINE\Security %WINDIR%\system32\config\Security HKEY_LOCAL_MACHINE\Software %WINDIR%\system32\config\Software

HKEY_LOCAL_MACHINE\HardwareRuche volatile

HKEY_LOCAL_MACHINE\System\CloneRuche volatile

HKEY_USERS\SID d'utilisateur Profil d'utilisateur (NTUSER.DAT);

Documents and Settings\Utilisateur (devenu

Users\

Utilisateur sur Vista)

WS-forensics.book Page 154 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

Chapitre 4Analyse du Registre155

Outre les différentes sections, ou ruches, le Registre reconnaît plusieurs types de don- nées pour les différentes valeurs qu'il contient (voir Tableau 4.2). Vous le constatez, le Registre reconnaît différents types de données. Il ne semble pas y

avoir de règles ou de cohérence entre les valeurs trouvées dans les différentes clés ; des

valeurs à l'objectif comparable peuvent être de types différents, ce qui permet aux don- nées d'être mises en forme et enregistrées différemment. Cet aspect peut devenir un problème lorsque vous recherchez des données textuelles dans le Registre. Ainsi, une application peut enregistrer sa liste des documents récemment manipulés sous forme de chaînes textuelles ASCII, tandis qu'une autre peut enregistrer une liste comparable sous forme de chaînes Unicode avec des données binaires, auquel cas une recherche d'un texte ASCII ne donnerait aucun résultat. L'article 161678 de la base de connaissances de Microsoft ( http://support.microsoft.com/kb/161678) précise que la fonction de recherche de RegEdit ne doit être utilisée que pour rechercher des chaînes ASCII, non des données binaires ou de type

DWORD.

Tableau 4.2 : Types de données du Registre

Type de donnéesDescription

REG_BINARYDonnées binaires brutes

REG_DWORDEntier sur 32 bits (quatre octets)

REG_SZChaîne de caractères de longueur fixe

REG_EXPAND_SZChaîne de caractères de longueur variable REG_MULTI_SZChaînes multiples, séparées par une espace, une virgule ou tout autre délimiteur

REG_NONESans type de données

REG_QWORDEntier sur 64 bits (huit octets)

REG_LINKChaîne Unicode désignant un lien symbolique REG_RESOURCE_LISTSuite de tableaux imbriqués stockant une liste de ressources

REG_RESOURCE_REQUIREMENTS_LISTSuite de tableaux imbriqués stockant une liste de pilotes de périphériques pour des ressources matérielles possibles

REG_FULL_RESOURCE_DESCRIPTORSuite de tableaux imbriqués stockant une liste de ressources utilisées par un périphérique matériel physique

WS-forensics.book Page 155 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

156Outils d'analyse forensique sous Windows

Structure d'un fichier ruche

Puisque nous savons à présent où se trouvent les fichiers ruches du Registre, examinons l'intérieur de ces fichiers et étudions la structure du Registre lui-même, à un niveau beaucoup plus bas. À ce stade, vous vous demandez probablement pourquoi aborder cet aspect. Sachez qu'en comprenant les composants de base du Registre vous pourrez glaner des informations supplémentaires par des recherches de mots-clés dans d'autres emplacements et sources, comme le fichier d'échange, la mémoire physique ou même l'espace non alloué. Si nous savons ce que nous devons rechercher ou ce que nous exa- minons, nous sommes capables d'extraire des éléments d'information complémen- taires. Par ailleurs, en connaissant parfaitement les informations disponibles dans le Registre, nous avons une meilleure compréhension des possibilités et des éléments à rechercher. Mark Russinovich a écrit pour Windows NT Magazine un excellent article intitulé "Inside the Registry" ( http://technet.microsoft.com/fr-fr/library/cc750583.aspx). Il y décrit les différents composants, ou cellules, du Registre. Ces informations sont égale- ment présentées dans l'ouvrage Windows Internals, que Mark a coécrit avec David

Solomon.

Chaque type de cellule possède une structure particulière et contient des types d'infor- mations précis. Voici les différents types de cellules : mCellule de clé. Cette cellule contient des informations sur une clé du Registre et comprend des décalages vers d'autres cellules, ainsi que la date de dernière écriture de la clé. Sa signature est kn. mCellule de valeur. Cette cellule contient une valeur et ses données. Sa signature est kv. mCellule de liste de sous-clés. Cette cellule est constituée d'une suite d'indices (ou décalages) qui désignent des cellules de clés ; ces cellules de clés sont toutes des sous-clés de la cellule parente. mCellule de liste de valeurs. Cette cellule est constituée d'une suite d'indices (ou décalages) qui désignent des cellules de valeurs ; ces cellules de valeurs correspon- dent aux valeurs d'une cellule de clé commune. mCellule de descripteur de sécurité. Cette cellule contient un descripteur de sécu- rité pour une cellule de clé. Sa signature est ks. La Figure 4.2 illustre les différents types de cellules, à l'exception de la cellule de des- cripteur de sécurité, telles qu'elles apparaissent dans l'Éditeur du Registre.

WS-forensics.book Page 156 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

Chapitre 4Analyse du Registre157

La Figure 4.3 correspond à un extrait d'un fichier du Registre ouvert dans un éditeur hexadécimal. Elle montre les signatures d'une cellule de clé et d'une cellule de valeur. En raison de l'ordre des octets (endian), la signature d'une cellule de clé ( kn) apparaît sous la forme nk, tandis que celle d'une cellule de valeur (kv) est vk. Nous l'avons mentionné précédemment, ces signatures peuvent nous apporter des informations d'une grande valeur pour une investigation. Grâce à elles, nous pouvons extraire des informations sur les clés et les valeurs du Registre à partir des clusters non

Figure 4.2

Extrait du Registre de Windows, avec des clés, des valeurs et des données.

Figure 4.3

Extrait d'un fichier du Registre, avec les signatures des cellules de clé et de valeur.

ClésValeursDonnées

Cellule

Cellule

de clé de valeur

WS-forensics.book Page 157 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

158Outils d'analyse forensique sous Windows

alloués dans une copie acquise ou d'une image mémoire (pour de plus amples informa- tions concernant les images mémoire, consultez le Chapitre 3).

ASTUCE

La compréhension de la structure binaire des clés et des valeurs du Registre peut se révéler

extrêmement utile au cours d'une investigation. La plupart des enquêtes qui font intervenir

une analyse du Registre se focalisent sur les fichiers du Registre, en utilisant les outils présen-

tés dans ce chapitre. Cependant, en examinant l'espace non alloué ou le contenu d'une image mémoire, vous pouvez identifier des signatures telles que celles illustrées à la

Figure 4.3. En connaissant le format des struct

ures des clés et des valeurs du Registre, vous pouvez, si nécessaire, extraire et transformer les données en informations compréhensibles. Par exemple, vous pouvez trouver en mémoire une clé du Registre et extraire la date de

dernière écriture. En comprenant la structure des clés et des valeurs du Registre, vous pouvez

apporter un contexte aux informations obtenues à partir d'une image mémoire ou depuis un espace non alloué dans une copie acquise. Vous pouvez également analyser les clés supprimées depuis l'espace "non alloué" dans des fichiers ruches eux-mêmes ; nous revien- drons sur ce point plus loin dans ce chapitre. La meilleure source d'informations sur la structure binaire des différentes cellules des fichiers ruches n'est pas disponible auprès de Microsoft, mais, plutôt bizarrement, auprès d'une personne qui a développé un utilitaire Linux. Peter Nordahl-Hagen a créé l'outil Offline NT Password and Registry Editor ( http://pogostick.net/~pnh/ ntpasswd/ ), qui permet de démarrer un système Windows (en supposant que l'accès physique au système soit possible) à partir du disque Linux et de modifier le Registre pour changer les mots de passe. Peter fournit les sources de son utilitaire et, si vous choisissez de les télécharger, intéressez-vous au fichier nommé ntreg.h. Il s'agit d'un

fichier d'en-tête C qui définit les structures des différents types de cellules du Registre.

ASTUCE

Tim Morgan a rédigé un excellent article qui décrit la structure du Registre de Windows, notamment les différents types de cellules et leur interconnexion. Ce document est dispo- nible sur le site web Sentinelchicken.com à l'adresse http://www.sentinelchicken.com/data/

TheWindowsNTRegistryFileFormat.pdf.

En examinant le code source de Peter, nous constatons que la cellule de clé occupe soixante-seize octets, plus un nom de longueur variable. Par conséquent, si nous trou- vons la signature d'une cellule de clé (voir Figure 4.3) dans une image mémoire ou des clusters non alloués, nous pouvons être devant le contenu d'une cellule de clé. À partir de là, nous pourrons examiner les soixante-quatorze octets (la signature occupe deux octets, avec la valeur

0x6B6E dans le format little endian) et voir des informations,

comme le nom de la clé et sa date de dernière modification.

WS-forensics.book Page 158 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

Chapitre 4Analyse du Registre159

Par exemple, supposons que nous disposions de clusters non alloués ou d'une image mémoire d'un système et que nous ayons localisé une cellule de clé. Si la variable nommée $offset correspond au décalage dans le fichier auquel la cellule a été trouvée, voici le code Perl qui permet d'analyser cette cellule et d'en extraire des données : seek(FH,$offset,0); read(FH,$data,76); my %nk; my (@recs) = unpack("vvV17vv",$record); $nk{id} = $recs[0]; $nk{type} = $recs[1]; $nk{time1} = $recs[2]; $nk{time2} = $recs[3]; $nk{time3} = $recs[4]; $nk{no_subkeys} = $recs[6]; $nk{ofs_lf} = $recs[8]; $nk{no_values} = $recs[10]; $nk{ofs_vallist} = $recs[11]; $nk{ofs_sk} = $recs[12]; $nk{ofs_classname} = $recs[13]; $nk{len_name} = $recs[19]; $nk{len_classname} = $recs[20]; # Obtenir le nom. seek(FH,$offset + 76,0); read(FH,$data,$nk{len_name}); FH est un descripteur qui désigne le fichier dans lequel se trouvent les données exami- nées. $data est une variable dans laquelle est enregistré le contenu lu depuis le fichier. Ce code constitue une méthode simple d'analyse de l'information essentielle trouvée dans une cellule de clé : l'identifiant de la cellule de clé ( $nk{id}), comme l'illustre la

Figure 4.3. Sur cette figure, la représentation hexadécimale de la date de dernière écri-

ture de la clé est également visible, après l'identifiant nk. Le code précédent lit les don-

nées binaires et les décompose conformément à la structure de données d'une cellule de

clé. Nous pouvons voir les valeurs qui donnent la date de dernière écriture, ainsi que le nombre de sous-clés et valeurs associées à la cellule. Nous pouvons également connaître les décalages des structures de données supplémentaires, comme la liste des autres cellules de clés (les sous-clés) et celle des valeurs (les valeurs de cette clé).

ASTUCE

La valeur de $offset est importante pour la manipulation des clés du Registre, en particulier celles présentes dans les fichiers ruches. La valeur sur quatre octets (de type

DWORD) qui

précède la signature de la clé indiquée par $offset correspond à la taille de la clé. Lorsqu'elle est lue comme un entier long non signé, cette valeur est souvent négative. Des

études ont permis de montrer qu'une taille négative indique que la clé est utilisée, tandis

qu'une taille positive indique qu'elle a été supprimée. Nous y reviendrons ultérieurement

dans ce chapitre.

WS-forensics.book Page 159 Jeudi, 15. juillet 2010 11:34 11© 2010 Pearson Education France - Outils d'analyse forensique sous Windows - Harlan Carvey

quotesdbs_dbs19.pdfusesText_25