- Recuperation de donnees
-
Récupération de données
En informatique, en l'absence de sauvegardes, la récupération de données consiste à retrouver les données perdues sur un support
- ayant subi des défaillances ;
- ayant été endommagé.
Les supports peuvent être des disques durs, des bandes magnétiques, etc.
On distingue les défaillances logicielles et matérielles. Évidemment, les défaillances logicielles appellent des solutions logicielles tandis que les défaillances matérielles appellent une intervention matérielle. Les interventions matérielles permettent souvent de récupérer une partie des données mais elles aboutissent aussi souvent à la destruction du média. Les solutions de récupération logicielles bien mises en oeuvre n'altèrent pas le media. C'est pourquoi, quand la cause de la défaillance est non identifiée, on recommande le plus souvent d'essayer les solutions de récupération logicielles et ensuite seulement une approche matérielle de récupération. En général, le plus souvent, le coût très élevé des approches matérielles de récupération de données et la valeur des informations stockées sur le média limitent la récupération aux seules solutions logicielles.
Sommaire
Approches logicielles de la récupération de données
La récupération de données par logiciel a de multiples motivations : les plus courantes vont de l'erreur humaine involontaire aux virus en passant par les différents degrés de malveillance, l'espionnage et les enquêtes policières. Par exemple, dans l'affaire Clearstream, une partie de l'enquête s'est appuyée sur les données récupérées sur l'ordinateur du général Rondeau, données que ce dernier avait simplement effacées[1].
Le principe général des approches logicielles de la récupération de données est le suivant: en général, en informatique, les systèmes d'exploitation découpent toutes les ressources en morceaux auxquels ils accèdent à travers des index. Ainsi, très grossièrement, un système d'exploitation, voit un disque dur comme une encyclopédie et le système va utiliser la table des matières de l'encyclopédie afin d'accéder rapidement à tel ou tel article suivant les demandes des utilisateurs. Quand l'utilisateur demande au système d'exploitation d'effacer une structure (un fichier ou une partition par exemple), le système d'exploitation ne détruit pas directement la structure en question. Il se contente de modifier l'index. Ainsi, dans la métaphore de l'encyclopédie, demander au système d'exploitation d'effacer un article, équivaut à retirer l'article en question de la table des matières. L'article effacé, même s'il ne figure plus dans la table des matières, est cependant toujours bien là au milieu des pages de l'encyclopédie.
La récupération de données est une tâche difficile. En effet, en présence de sauvegardes - qu'il s'agisse de copies stockées dans la poubelle de Windows ou dans un quelconque outil de restauration du système, on sort du cadre de la récupération de données. De plus, les systèmes d'exploitation sont d'abord conçus afin d'utiliser les ressources efficacement pour assurer de bonnes performances. Par exemple, l'utilisateur peut demander de l'espace libre au système d'exploitation (pour rajouter un nouvel article à l'encyclopédie par exemple). Dans ce cas, le système d'exploitation peut donner les pages correspondant à l'article effacé à l'utilisateur voulant écrire un nouvel article. Comme les systèmes d'exploitation sont conçus d'abord pour assurer de bonnes performances, la récupération de données est au mieux une pensée après coup. Il est significatif qu'à partir de la version 5, le défunt MS-DOS offrait deux outils de récupération de données ("undelete" et "unformat"). Ces deux outils avaient été repris dans la version 6 mais ont été abandonnés au lancement de Windows 95.
On peut classer les outils logiciels de récupération en trois familles:
- Les outils basés sur le système d'exploitation
- L'idée de base de ces approches est de travailler au niveau des index maintenus par le système d'exploitation. Grossièrement, ces approches vont essayer de détecter les altérations récentes apportées à la table des matières de l'encyclopédie et d'en déduire les structures (fichiers ou partitions) récupérables.
- Les outils basés sur la structure effacée
- L'idée de base consiste à parcourir la totalité du média en essayant de détecter le début et la fin des structures qu'on cherche à récupérer. Grossièrement, ces approches vont donc ouvrir chaque tome de l'encyclopédie, parcourir chaque page et essayer de déterminer le début et la fin de chaque article.
- Les outils mixtes
- Les outils mixtes mélangent les deux approches: dans un premier temps, ils explorent les index du système d'exploitation afin d'en déduire une première approximation sur l'emplacement des données effacées. Dans un second temps, ils scannent le voisinage correspondant au début et à la fin des structures à restaurer afin d'arriver à affiner la première approximation.
Les outils basés sur le système d'exploitation
Les outils basés sur le système d'exploitation offrent plusieurs avantages: ils sont rapides et permettent d'accéder à des informations - comme le nom du fichier - qui ne sont pas contenus pas dans le fichier proprement dit mais maintenus par le système d'exploitation lui-même. Le désavantage de ces approches est qu'elles ne sont pas exhaustives: il aurait peut-être été possible de récupérer plus de données mais l'analyse des index maintenus par le système d'exploitation ne permet d'en retrouver qu'une partie.
Il n'y a malheureusement pas grand chose à faire pour tenter de pallier le manque d'exhaustivité de ces outils. En effet, ces outils s'appuient sur des structures de données propres au système d'exploitation et ces structures n'ont pas été conçues afin de faciliter la récupération de données. Toutefois, la Journalisation oblige les systèmes à maintenir une quantité plus importante d'information que par le passé permettant un relatif bon fonctionnement des outils de récupération.
Le type de système de fichiers - qu'on peut comprendre grossièrement comme la manière dont est structurée la table des matières dans notre métaphore encyclopédique - caractérise les outils basés sur le système d'exploitation. Les principaux outils sont :
- FilesLost.com est service gratuit de récupération de fichiers à travers Internet pour les systèmes de fichiers NTFS et FAT pour les machines Windows.
- le paquet ntfsprogs permet de récupérer des fichiers effacés sur une NTFS. Écrit pour Linux, une version pour Windows est disponible.
- recover permet de récupérer des fichiers effacés sur un système de fichier ext2. Recover fonctionne sous linux.
- Restoration de Brian Kato permet de récupérer des fichiers effacés sur une NTFS et FAT pour les machines Windows.
Enfin, certains auteurs ont proposés des outils qui vont fonctionner en tâche de fonds afin de faciliter la récupération de fichiers. Parmi eux, on peut citer:
- e2undel pour les systèmes de fichiers ext2. e2undel fonctionne sous Linux.
- giis pour les systèmes de fichiers ext2 et ext3. giss fonctionne sous Linux.
Les outils basés sur la structure effacée
Les outils basés sur la structure effacée ne souffrent pas des problèmes d'exhaustivité que rencontrent les outils basés sur le système d'exploitation. Ils ont cependant plusieurs inconvénients :
- ils sont limités à quelques types de structure.
- Métaphoriquement, ces outils vont parcourir toutes les pages de l'encyclopédie et essayer de détecter le début et la fin de chaque article composant l'encyclopédie. Cela signifie que le programme va détecter le début et la fin d'un article en utilisant les conventions typographiques de l'encyclopédie (titre de l'article en gras etc...). Un article ne suivant pas les conventions typographiques ne sera donc pas retrouvé. Or le système d'exploitation n'impose pas une "convention typographique" particulière aux applications, celles-ci sont libres d'utiliser le format de données qu'elles souhaitent. Ainsi les outils basés sur la structure effacée sont le plus souvent limités à quelques types de fichiers prédéfinis.
- ils ignorent le système d'exploitation.
- Cette ignorance a un double impact. La première conséquence est que les outils basés sur la structure effacée ne savent pas retrouver le nom original du fichier. La seconde conséquence est que les outils basés sur la structure effacée ne savent pas distinguer un fichier qui n'a pas été effacé d'un fichier qui a été effacé. Ces outils vont donc générer une quantité importante de fichiers dont la taille cumulée peut être plusieurs fois supérieures à la taille du media analysé.
Ces inconvénients peuvent se transformer en avantage dans les cas où le système d'exploitation n'arrive plus à maintenir la cohérence des données qu'il stocke. Dans notre métaphore encyclopédique, ce cas correspondrait à une encyclopédie sans table des matières et dont les pages seraient dans le désordre et/ou manquantes. En pratique, ce cas correspond le plus souvent à une défaillance matérielle.
Les principaux outils basés sur la structure sont:
- foremost fonctionne sous Linux et est capable de retrouver plusieurs types de fichiers images, vidéos, OLE, html et pdf.
- MagicRescue fonctionne sous Linux et est similaire à Foremost mais il peut être étendu à volonté afin de détecter de nouveaux types de fichiers (notions de "recipe" ).
- PhotoRec fonctionne sous la plupart des systèmes d'exploitation (Linux, Windows et Mac OS X) et permet de récupérer un grand nombre de type de fichiers images, mais aussi des documents de type office.
- TestDisk est un outil fonctionnant sur la plupart des systèmes d'exploitation (Linux, Windows et Mac OS X). Contrairement aux autres outils qui recherchent des fichiers, TestDisk permet de retrouver des partitions effacées.
Les outils mixtes
Les outils mixtes tentent de marier les deux approches afin de n'en conserver que les avantages sans les inconvénients.
On peut citer :
- fatback fonctionne sous linux. Il permet de récupérer les fichiers effacés sur une FAT (et donc en général les fichiers effacés sur une clef usb ou sur une carte mémoire d'appareil photo).
- numa permet de récupérer des fichiers effacés sur une ext3. Il est toujours en cours de développement et ne peut récupérer que des fichiers de moins de 48 Ko.
- The Sleuthkit fonctionne sous Linux. C'est un outil destiné aux experts qui laisse l'utilisateur déterminer comment marier la récupération basé sur le système d'exploitation et la récupération basée sur la structure effacée.
Approches matérielles de la récupération de données
Bien que chaque fabricant de media ou presque propose son service de récupération de données, le volume d’information publique sur les approches matérielles de récupération reste faible. En général un média de stockage est composé d'une carte contrôleur et d'un support physique de stockage. Par exemple, un disque dur est composé d'un contrôleur gérant les moteurs qui vont positionner les têtes de lectures/écritures sur les plateaux ; une clef USB contient typiquement un contrôleur gérant le bus USB et une puce de mémoire NAND. Si le contrôleur est endommagé, il suffit en général de le remplacer pour pouvoir accéder aux données. En revanche, si la défaillance a son origine ailleurs alors les techniques varient et les coûts explosent : le plus souvent il faut ouvrir le media en salle blanche pour déterminer la conduite à tenir. Le lecteur intéressé pourra se référer aux publications de Peter Gutmann.
Conclusion
La récupération de données répond à un besoin légitime, simplement parce qu'il est impossible d'éliminer complètement les erreurs humaines. Cependant au-delà des aspects techniques, l'utilisateur devrait réfléchir aux conséquences que ces techniques peuvent avoir. Sans tomber dans une grandiloquence paranoïaque (état policier, agence d'espionnage etc...), quand on voit qu'il suffit d'aller sur un site web pour bénéficier d'un service de récupération de données basiques, on peut s'interroger sur ceux qui vendent en ligne leurs vieux disques durs sans prendre un minimum de précautions.
Bibliographie
- (en) Secure Deletion of Data from Magnetic and Solid-State Memory, Peter Gutmann, Sixth USENIX Security Symposium, July 22-25, 1996, San Jose, California
- (en) Data Remanence in Semiconductor Devices, Peter Gutmann, 10th USENIX Security Symposium, August 13-17, 2001, Washington, D.C.
- (en) File System Forensic Analysis, Brian Carrier, Addison Wesley Professional, ISBN 0321268172
Notes et références
Voir aussi
Articles connexes
Liens externes
- Guide de la récupération de données
- Reportage vidéo sur la récupération de données par 01net
- Reportage Récupération de données par l'Ordinateur Individuel
- Portail de la sécurité informatique
Catégories : Mémoire informatique | Sécurité informatique | Informatique légale
Wikimedia Foundation. 2010.