CyberHUBBlue Team Level 1
Forensics Fundamentals

Hashing and Integrity

Extracted from Digital Forensics(4).pdf - source PDF page(s) 40-43.

Hashing and Integrity - source page 41
Source illustration - PDF page 41

La création de hachages est un élément important de la criminalistique numérique, car elle permet de détecter immédiatement toute falsification ou modification de preuves. Cette leçon expliquera ce que sont les hachages, comment ils peuvent être récupérés, comment ils sont utilisés pour garantir l'intégrité des preuves numériques, comment ils peuvent être déchiffrés (même s'il s'agit d'une fonction à sens unique !) , et terminez par quelques exercices pratiques dans la leçon suivante.

Que sont les hachages ?

Les valeurs de hachage, qui se présentent sous la forme de chaînes de texte, constituent l'empreinte unique d'un fichier ou d'une chaîne. Si j'avais un fichier texte contenant la lettre « ABC », je pourrais générer une valeur de hachage. Maintenant, si je retournais dans ce fichier, que j'y ajoutais la lettre « D » et que je récupérais la valeur de hachage du fichier, elle sera différente de la valeur initiale. Nous avons modifié le contenu, donc maintenant l'empreinte est différente.

Le hachage le plus couramment utilisé est Message Digest 5, communément appelé MD5. Deux autres hachages courants sont SHA1 et SHA256. En raison de collisions, un événement dans lequel deux valeurs de données différentes peuvent avoir la même valeur de hachage, le MD5 n'est plus utilisé comme norme sécurisée et SHA256 est devenu l'algorithme le plus couramment utilisé. Nous avons déjà expliqué comment générer des hachages MD5, SHA1 et SHA256 dans le domaine d'analyse du phishing, mais nous allons vous en donner un bref aperçu ici.

Collecte de hachages dans Windows

Dans la capture d'écran ci-dessous, nous utilisons PowerShell sur un système Windows pour générer différents hachages de fichiers pour un fichier exécutable nommé « wallpaperHD.exe ». Par défaut, la commande get-filehash <file>génère un hachage SHA256. Si nous voulons récupérer les valeurs MD5 ou SHA1, nous devons ajouter l'indicateur « -algorithm » pour spécifier les hachages souhaités. En utilisant l'algorithme get-filehash md5, <file>nous pouvons récupérer le hachage md5, et la même méthode peut être appliquée pour SHA1.

Hashing and Integrity - source page 42
Source illustration - PDF page 42

Recueillir des hachages Linux

Sur un Linux système, la génération de hachages est beaucoup plus rapide. Nous pouvons utiliser les trois commandes suivantes pour générer des hachages SHA256, MD5 et SHA1 respectivement :

  • sha256sum <file>
  • somme md5 <file>
  • sha1sum <file>
Hashing and Integrity - source page 42
Source illustration - PDF page 42

Nous pouvons également récupérer les valeurs de hachage des chaînes de texte à l'aide de la commande echo -n | string<text>, comme illustré ci-dessous.

Hashing and Integrity - source page 42
Source illustration - PDF page 42

Intégrité des preuves

Maintenant que vous comprenez comment fonctionnent les hachages et comment ils sont générés, vous devriez être en mesure de voir comment cela s'applique à la criminalistique numérique et à la garantie de l'intégrité des fichiers ou des preuves. Dans la plupart des enquêtes impliquant un disque dur, un hachage est généré à partir du disque dur, puis une copie complète du support de stockage est prise au niveau bit par bit, ce qui signifie que tout ce qui est possible depuis le disque est copié sur un nouveau disque dur. Le hachage de ce nouveau disque dur est ensuite généré, afin de garantir qu'il s'agit exactement de la même valeur que l'original, prouvant ainsi qu'une copie exacte a été générée avec succès. Cela permet aux analystes judiciaires ou aux enquêteurs de travailler sur une copie des preuves, au lieu d'analyser le disque lui-même, ce qui pourrait entraîner la perte de preuves en cas de problème, ou le tribunal pourrait faire valoir que les preuves ont peut-être été falsifiées et ne peuvent donc pas être utilisées devant un tribunal dans le cadre de procédures judiciaires.