Introduction à l’investigation numérique (2)

Investigation numérique à froid (post-mortem)

L’investigation numérique à froid ou post-mortem représente la méthode classique d’investigation numérique. Dans cette approche, l’enquêteur débranche le système cible, puis prend des images (des copies) des disques, soit sur le site ou soit dans un laboratoire.  Ensuite, un analyste examine l’image (en fait une copie) dans un environnement contrôlé.

L’investigation numérique à froid comporte certains avantages découlant du fait que possède et travaille sur une copie figée du système. L’investigation numérique a froid est en outre non-invasive, car les données sont conservées uniquement en mode lecture, ce qui garantit leur authenticité. L’investigation à froid est reproductible car un environnement statique se prête à des résultats reproductibles. Dans le cas d’une investigation à froid, le temps n’est pas un facteur clé, puisque l’analyste travaille sur une image figée. En plus, le fait d’avoir un certain laps de temps pour analyser les données, permet de diminuer le nombre d’erreurs susceptibles d’apparaître. Enfin, l’investigation numérique a froid présente aussi l’avantage de pouvoir mettre en corrélation différents résultats, compte tenu de la capacité d’examiner d’autres sources d’informations.

Néanmoins, l’approche post-mortem présente aussi plusieurs inconvénients. Tout d’abord, cette approche ne permet pas toujours de déconnecter le système d’information. Comme la taille des disques des systèmes continue d’augmenter, faire une image du disque peut durer plusieurs heures. Le temps et les efforts nécessaires pour l’analyse des disques augmentent proportionnellement avec la taille des disques.

Pendant le clonage d’un disque, le système a qui il appartiens est déconnecté, mais pour de nombreux systèmes, tels que par exemple, les systèmes de commerce électronique, la perte de recettes due a une interruption de quelques heures est inacceptable.

Finalement, lorsque l’alimentation est coupée, beaucoup d’informations sur ce qui se passe sur un système d’informations vivant sont perdues L’investigation numérique traditionnelle tente de préserver toutes les preuves (les disques) dans un état immuable, tandis que l’investigation numérique des systèmes vivants cherche à prendre un instantané de l’état de l’ordinateur, semblable à une photographie d’une scène de crime.

Investigation numérique des systèmes vivants

Contrairement a l’investigation numérique post-mortem, l’investigation numérique des systèmes vivants se fait sans déconnecter le système cible de son environnement.

Selon leur nature, les informations disponibles sur un système vivant peuvent être classées dans l’une des catégories suivantes : les processus en cours, les connexions réseau, la mémoire (processus et physique), les fichiers de journalisation, les utilisateurs connectés, la charge du système d’exploitation. L’analyse des systèmes vivants peut capturer à la fois des informations volatiles et des informations statiques présentes sur le système de fichiers. Actuellement, la plus part des outils d’investigation numérique utilisent directement le système d’exploitation pour obtenir ces informations. Si une machine a été compromise, son noyau peut exécuter du code malveillant (via un rootkit) qui empêche le système d’exploitation de signaler de façon correcte l’existence des processus et des fichiers.  Bien qu’il existe des programmes qui permettent de détecter la présence des rootkits, il n’y a pas beaucoup de solutions si un rootkit est présent, sauf à utiliser l’approche traditionnelle (investigation a froid).

L’investigation numérique des systèmes vivants présente aussi une difficulté importante en raison du fait que le système n’est pas statique, les fichiers et les processus étant en constante évolution. Une investigation est un processus itératif: à plusieurs reprises on récupère et on analyse les données. L’enquêteur récupère les données volatiles du système en exécutant différents programmes. Compte tenu du fait que la collecte de preuves sur la cible peut affecter d’autres preuves sur la (même) cible, un ensemble des meilleures pratiques est apparu afin de maximiser la qualité des preuves. Les plus importants sont: exécuter des binaires surs, calculer des valeurs de hachage pour toutes les preuves et la collecte des données dans l’ordre de la volatilité des données.

Exécuter des binaires surs. Un enquêteur ne devrait pas faire confiance aux fichiers exécutables sur le système cible, mais devrait posséder tous les exécutables utilisés pour recueillir des preuves. Les fichiers exécutables devraient être compilés de façon statique, si possible, sinon ils devraient inclure toutes les bibliothèques partagées requises par l’exécutable.

Les programmes devraient provenir d’un support en lecture seule, tel qu’un CD-ROM. Les fichiers exécutables peuvent être copiés sur le système cible, mais cette action aura une incidence sur le disque, pouvant par exemple écraser des preuves résidant dans des fichiers supprimés.

S’il faut faire le choix entre la perte de certains éléments de preuve en écrasant des fichiers supprimés et la perte de toutes les preuves en n’obtenant pas l’information, il vaut mieux risquer des dommages mineurs en copiant des fichiers vers le système cible.

Calculer des valeurs de hachage pour toutes les preuves. Une fois acquise, la preuve doit être conservée de façon adéquate, afin que l’enquêteur puisse ensuite démontrer qu’elle n’a subi aucune altération. La méthode acceptée consiste à calculer une valeur utilisant un algorithme de hachage cryptographique sécurisé (généralement MD5 ou SHA-1).

La valeur de hachage peut être recalculée plus tard et comparée par rapport à l’original pour montrer que les données n’ont pas changé depuis l’obtention de la valeur de hachage d’origine. Si les données sont transmises par le réseau de la cible vers une autre machine, la valeur de hachage doit être calculée sur les deux machines et comparée pour s’assurer qu’aucune des données n’a été modifiée durant le transfert. La valeur de hachage et la preuve devraient être maintenues dans un endroit sûr.

Collecte des données par ordre de volatilité des données. Certaines données sont plus volatiles que d’autres. C’est pourquoi, les preuves devraient être rassemblées en fonction de l’ordre de volatilité des données. Par exemple, les connexions réseau changent plus fréquemment que les utilisateurs connectés au système.

Par ailleurs, certaines actions peuvent affecter d’autres données. Par exemple, la connexion à un système peut générer des entrées dans les fichiers de log du système. Pour compliquer encore plus les choses, le temps nécessaire pour recueillir des preuves peut dépendre de la nature de la preuve recueillie. Un listage (« dump ») de la mémoire physique d’une machine peut être utile mais, mais compte tenu de sa volatilité, il doit être effectue au début de l’enquête. Cependant, cette opération peut prendre des dizaines de minutes à accomplir, et pendant ce temps, les informations les plus utiles (telles que les listes de processus en cours, fichiers ouverts, et les connexions réseau) pourront avoir changé ou disparu.

Tandis que l’ensemble de la mémoire vive du système est en constante évolution, sur un système moderne avec un gigaoctet ou plus de mémoire, les pages mémoire peuvent persister pendant un temps considérable (quelques jours ou semaines). En d’autres termes, l’enquêteur doit être conscient du contexte global de l’enquête pour prendre des décisions sur l’ordre d’acquisition des preuves.

Le tableau suivant permet d’illustrer le temps de vie des différents artefacts digitaux [Farmer 2004]:

Registres, mémoire périphérique Nanosecondes
Mémoire principale Nanosecondes
L’état du réseaux Millisecondes
Processus actifs Secondes
Disc Minutes
Bandes d’archivage (backup) Années
CD-ROM, DVD-ROM Dizaines d’années

Le temps de vie des différents artefacts digitaux

Pour conclure, l’investigation numérique des systèmes vivants peut fournir des preuves qui ne sont pas disponibles dans une image statique d’un disque. Mais ce domaine est encore relativement nouveau.

Pour accroitre l’utilité de l’investigation numérique des systèmes vivants, des progrès dans plusieurs domaines seront essentiels, notamment en ce qui concerne les outils d’automatisation et standardisation du processus d’acquisition et de préservation des preuves et les outils de présentation des preuves.

Introduction à l’investigation numérique (1)

Qu’est-ce que c’est l’investigation numérique ?

Au premier workshop du Digital Forensics Research Group (DFRWS) in 2001, l’investigation numérique a été définie de la façon suivante :

« L’utilisation de méthodes scientifiquement prouvées qui ont comme but la préservation, la collecte, la validation, l’identification, l’analyse, l’interprétation, la documentation et la présentation de preuves numériques provenant de sources numériques dans le but de faciliter ou de favoriser la reconstitution des événements de nature criminelle, ou en aidant d’anticiper les actions non autorisées qui pourraient être préjudiciables pour les opérations planifiées. »[DFRWS]

Même si les techniques d’investigation numérique sont utilisées  dans d’autres contextes que des enquêtes criminelles, les principes et les procédures sont plus ou moins les mêmes indépendamment du type d’enquête. L’investigation numérique utilise comme source d’information les données générées par ordinateur.

Le but de toute investigation numérique est de trouver des faits, afin de reconstituer la vérité d’un événement. L’examinateur révèle la vérité d’un événement en découvrant et en exposant les traces que l’événement a laissées sur le système. En accord avec la métaphore ‘’archéologue numérique’’, ces traces sont connues comme des artefacts. Ces traces sont parfois appelées des preuves.

Ainsi que l’indique le principe d’échange de Locard, « lorsque deux corps entrent en contact l’un avec l’autre, il y a nécessairement un transfert entre ceux-ci. » [LOCARD]

Cette simple déclaration est le principe fondamental au cœur de la dynamique des éléments de preuve. Transposé à l’investigation numérique, cela signifie que l’action d’un acteur sur un système d’information laissera des traces de cette activité sur le système. Des actions très simples peuvent tout simplement causer des changements dans les registres du processeur. Les actions plus complexes ont une plus grande probabilité de créer et laisser des traces plus durables sur le système, mais même des tâches simples peuvent laisser des traces.

Il est important de rappeler le travail de l’examinateur: déterminer la vérité. Chaque examen devrait commencer par une hypothèse. La tâche de l’examinateur n’est pas de démontrer ces affirmations, mais de découvrir des artefacts indiquant si l’hypothèse est valide ou non valide.

Une subtilité supplémentaire apparait en raison de la facilité avec laquelle les éléments numériques peuvent être manipulés ou entièrement fabriqués. Dans beaucoup d’enquêtes, l’examinateur doit déterminer si les éléments de preuve numérique sont compatibles ou non avec les processus et les systèmes censés les avoir générés. Dans certains cas, la détermination de la cohérence des éléments de preuve numérique est le seul but de l’examen.

Le processus d’investigation numérique peut être décomposé en trois catégories d’activités: l’acquisition, l’analyse et la présentation.

  • L’acquisition se réfère à la collecte des supports numériques à  examiner. Selon le type d’analyse, il peut s’agir des disques durs physiques, des médias optiques, des cartes de stockage, des caméras numériques, des téléphones portables ou des simples documents. Dans tous les cas, les supports à examiner doivent être traités avec beaucoup de délicatesse. Il convient notamment de créer un duplicata des médias originaux (la copie de travail) ainsi que de maintenir des notes de toutes les mesures prises des supports originaux.
  • L’analyse consiste dans l’examen proprement dit des supports, «l’identification, l’analyse et l’interprétation » des éléments de la définition de DFRWS. L’identification consiste à localiser les éléments ou des éléments présents dans les médias en question, puis de réduire encore cet ensemble à des artefacts d’intérêt. Ces éléments sont ensuite soumis à une analyse appropriée. Cela peut être l’analyse du système de fichiers, l’examen du contenu d’un fichier, l’analyse d’un fichier de journalisation, l’analyse statistique ou n’importe quel autre type d’examens. Enfin, l’examinateur doit interpréter les résultats de cette analyse. La qualité de l’analyse dépend beaucoup de la formation de l’examinateur, de son expertise technique et de son niveau d’expérience.
  • La présentation est le processus par lequel l’examinateur partage les résultats de la phase d’analyse avec la partie ou les parties intéressées. Celle-ci consiste dans un rapport des mesures prises par l’examinateur, une description des artefacts découverts et la signification de ces artefacts.

Notez que les résultats de la phase d’analyse peuvent conduire à d’autres acquisitions, chacune pouvant conduire a des analyses supplémentaires, etc. Cette boucle peut se poursuivre pendant de nombreux cycles donnant lieux à des enquêtes de longue durée.