Forensic

Introduction

Dans la terminologie de la sécurité informatique, beaucoup de termes sont déformés par les usages commerciaux ou journalistiques.

Voici par exemple la définition extraite d’un article publié en juin 2024 (source : https://www.zataz.com/la-cybersecurite-des-metiers-et-des-opportunites/)  :

L’analyste forensic est un expert chargé d’examiner les systèmes d’information après la détection d’une cyberattaque, qu’elle ait abouti ou non. Il collecte et analyse des données brutes telles que des fichiers effacés, des sauvegardes, des journaux du système et des disques durs. Son objectif : comprendre l’incident et en tirer des conclusions afin d’améliorer la sécurité derrière. Un métier passion puisque chaque incident est différent d’un autre. Ce qui représente un défi et un challenge.

Si la définition est globalement acceptable, elle mérite quelques précisions.

En anglais, le mot « Forensic » désigne l’application des méthodes scientifiques dédiées à l’investigation criminelle. Une définition plus large est « relatif aux tribunaux » ou simplement « légal ». Le terme peut s’appliquer par conséquent de façon...

Artefacts et méthodologie

Edmond Locard, éminent criminologue, a démocratisé l’idée selon laquelle

« Tout contact laisse une trace »

En forensic, un artefact est simplement la trace que laisse une interaction. Ces artefacts peuvent être laissés à tout niveau, logique ou physique.

La durée de vie de chaque artefact varie en fonction de la nature des matériaux utilisés et de choix de conception du système. Plus un artefact disparaît facilement, plus on dit qu’il est volatile.

Il est très facile d’altérer un artefact par inattention ou en essayant d’en collecter un second. C’est pour cela qu’une bonne connaissance des différents types d’artefacts et de leur volatilité est nécessaire.

1. Artefacts Windows

Afin d’éviter de transformer cet ouvrage en guide complet sur le forensic ou de servir de doublon aux ouvrages de référence, nous survolerons seulement les artefacts les plus courants des systèmes Windows. 

  • Bases de Registres (Ruches)

  • Fichiers (.dat, .sqlite)

  • Alternate Data Stream

  • Prefetch

  • Liens (.lnk)

  • Système de fichiers

  • Espaces disques non alloués

  • Fichiers d’Événement (.evtx)

  • Miniatures

Pour savoir quoi :

  • Téléchargements

  • Exécution

  • Ouverture de fichiers

  • Suppression de fichiers

  • Emplacement physique (Wi-Fi, GPS, TimeZone…)

  • Périphérique USB externe

  • Historique du compte utilisateur

  • Utilisation d’un navigateur web

2. Bonnes pratiques et cadre légal

Il est possible de trouver sur le site de l’IETF le document de référence, RFC3227 (https://www.ietf.org/rfc/rfc3227.txt). Ce document définit les bonnes pratiques ainsi que les comportements à éviter pour l’acquisition, la transmission et le traitement des preuves informatiques.

Voyons tout d’abord les précautions à prendre :

  • ne pas éteindre la machine avant d’avoir fait une collecte complète des preuves ;

  • ne pas faire confiance aux programmes sur le système ;

  • ne pas utiliser de programmes qui modifient les temps d’accès sur le système de fichiers. 

Afin d’éviter de supprimer certaines preuves en en collectant d’autres, nous suivrons l’ordre...

Analyses

1. Préparation et environnement

Il est important de noter que dans le cadre de notre apprentissage à travers ce chapitre nous n’aurons pas besoin d’un laboratoire aux normes antistatiques, ou de bloqueurs en écriture et autres équipements sophistiqués que vous trouverez dans un usage professionnel.

Avant d’entamer la recherche d’éléments, l’analyste devra au mieux « préparer le terrain ». Il est important de commencer par une analyse macroscopique (globale) avant de descendre progressivement vers l’analyse microscopique (système).

Avoir une vue d’ensemble d’un système permet par la suite de mieux cibler les éléments. Prenons un exemple. Vous êtes appelé par une compagnie internationale qui vient de subir une attaque de type DoS et qui souhaite en trouver la cause (ceci est bien une analyse que nous pouvons qualifier de forensic, car elle cherche des preuves, même si ce n’est pas pour inculper directement un auteur de délit) et éventuellement en trouver la source. Dans ce cas concret, vous comprendrez aisément que l’analyse directe du simple serveur web qui a été rendu indisponible par l’attaque ne vous donnera pas suffisamment d’éléments pour mener à bien votre investigation.

Aussi, il vous sera utile de commencer par « la source », bien souvent les logs du pare-feu, qui vous permettront d’établir quel type de DoS a été utilisé pour mener l’attaque (SYN flood, DNS amplification) ou bien de vous rendre rapidement compte si le serveur a été victime d’une attaque locale (fork bomb, saturation d’inodes).

S’il s’agit d’une attaque réseau, c’est alors vers les pare-feu et les routeurs que vos investigations devront porter en premier lieu. Vous déterminerez alors le protocole et le port qui ont été utilisés. Une fois ceci fait, si vous en avez la possibilité, vous pourrez alors étudier les logs portant sur ces informations, puis une analyse d’une capture « pcap » pourra également être menée. Vous voyez bien que cet exemple illustre parfaitement la « descente en profondeur »...

Distributions et outils

Certaines distributions de systèmes d’exploitation et autres projets open source rassemblent les outils les plus utilisés. De nombreuses distributions GNU/Linux existent dont CAINE, Tsurugi, Kaisen… mais il existe également le Projet SIFT Workstation pour les adorateurs de la marque au logo quadricolore.

Conclusion

Ce chapitre ne peut pas remplacer l’étude des ouvrages de référence faisant parfois plus de mille pages pour chacune des sous-disciplines évoquées, mais permet de couvrir les basiques.

Il est important de rappeler encore une fois que les aspects juridiques sont constituants du forensic, sans eux, cette discipline n’est constituée que de l’analyse des artefacts mais perd sa valeur probatoire (valeur de preuve).