- PhotoRec
-
PhotoRec Démonstration de PhotoRec fonctionnant sous LinuxDéveloppeur Christophe Grenier Première version 1998 Dernière version 6.13 (15 novembre 2011) [+/−] Écrit en C Environnement Multiplate-forme Langue Anglais Type Récupération de données Licence GNU GPL Site web www.cgsecurity.org modifier PhotoRec est un logiciel libre de récupération de données conçu pour récupérer les fichiers perdus des mémoires des appareils photos numériques (CompactFlash, Memory Stick, Secure Digital, SmartMedia, Microdrive, MMC), disque durs, clé USB et CD-ROMs.
Il récupère les formats de photos les plus courants, notamment JPEG, mais aussi des formats audios (MP3, Ogg...), des formats de documents comme OpenDocument, Microsoft Office, PDF et HTML et des archives (ZIP, RAR...)[1].
PhotoRec n'essaie pas de réparer le support endommagé de l'utilisateur, mais il tente d'en extraire les données et va écrire les fichiers récupérés vers un répertoire du choix de l'utilisateur. PhotoRec peut être utilisé pour de la récupération de données mais également pour la recherche de preuves numériques[2],[3],[4].
PhotoRec est distribué avec TestDisk[5].
PhotoRec est disponible pour plusieurs systèmes d'exploitation :
- DOS (en mode réel ou bien dans une fenêtre DOS de Windows 9x) ;
- Microsoft Windows (NT4, 2000, XP, 2003, Vista, 2008, 7) ;
- Linux ;
- FreeBSD, NetBSD, OpenBSD ;
- SunOS et
- Mac OS X.
Sommaire
Principe de fonctionnement de PhotoRec
Les systèmes de fichiers FAT, NTFS, ext2/ext3/ext4 enregistrent les fichiers dans des blocs de données (ou sous Windows en anglais cluster). La taille d'un bloc de données est un nombre constant de secteurs défini lors du formatage du système de fichier. En général, la plupart des systèmes d'exploitation essaient de stocker les données de manière contiguë de façon à minimiser la fragmentation. Le temps de recherche (en anglais seek time) des disques mécaniques est significatif lors des opérations de lecture depuis ou d'écriture vers un disque dur, c'est pourquoi il est important de maintenir la fragmentation à un niveau minimum.
Quand un fichier est supprimé, les méta-informations (nom de fichier, date/heure, taille, emplacement du premier bloc de données...) sur ce fichier sont perdus. Par exemple, sur un système de fichier ext3 ou ext4, le nom des fichiers effacés reste présent, mais l'emplacement du premier bloc de données est perdu. Cela signifie que les données sont toujours présentes sur le système de fichier, mais seulement jusqu'au moment où tout ou partie de ces données seront écrasés par les données d'un nouveau fichier.
Pour récupérer ces fichiers perdus, PhotoRec commence par déterminer la taille des blocs de données. Si le système de fichier n'est pas corrompu, cette information peut être lue depuis le superblock (ext2/ext3/ext4) ou du secteur de boot (FAT, NTFS). Sinon, PhotoRec lit le support, secteur par secteur, à la recherche des dix premiers fichiers à partir des emplacements desquels il calcule la taille des blocs. Une fois la taille des blocs connue, PhotoRec lit le support bloc par bloc (ou cluster par cluster). Les données de chaque bloc sont comparées par rapport à une base de signature. Cette base de signature native au produit n'a cessé de grossir avec chaque nouvelle version depuis la sortie du logiciel. Cette technique de récupération de données est appelé en anglais file carving.
Par exemple, PhotoRec identifie un fichier JPEG lorsqu'un bloc de données commence par :
- SOI (Start Of Image) + APP0: 0xff, 0xd8,0xff, 0xe0
- SOI (Start Of Image) + APP1: 0xff, 0xd8,0xff, 0xe1
- ou SOI (Start Of Image) + Comment: 0xff, 0xd8, 0xff, 0xfe
Si PhotoRec est déjà en train de récupérer un fichier, il arrête sa récupération, vérifie si possible sa cohérence et commence à sauvegarder ce nouveau fichier qu'il a déterminé à partir de la signature qu'il a trouvé.
Si les données ne sont pas fragmentées, le fichier récupéré doit être identique à l'original ou avoir une taille potentiellement plus grande que le fichier original. Dans certains cas, PhotoRec peut apprendre la taille du fichier original à partir de l'entête du fichier, alors le fichier est tronqué à la bonne taille. Si jamais le fichier récupéré était plus petit que la taille déterminée à partir de l'entête, ce fichier est ignoré car invalide. Certains fichiers comme les MP3 sont constitués de flux de données, dans ce cas, PhotoRec analyse les données récupérées et arrête la récupération avec l'arrêt du flux.
Quand un fichier est récupéré avec succès, PhotoRec vérifie à nouveau les blocs de données précédents pour voir si la signature d'un fichier n'avait pas été trouvée mais que le fichier n'avait pas pu être récupéré avec succès (par exemple, le fichier était trop petit), et il essaie de nouveau. De cette façon, certains fichiers fragmentés sont récupérés avec succès[6].
Popularité
TestDisk et PhotoRec ont été téléchargés plus de 150 000 fois en juillet 2008 depuis le site web principal. En fait, ces utilitaires sont mêmes plus populaires car ils se retrouvent dans divers Live CDs Linux :
- Recovery Is Possible, un dérivé Slackware
- Knoppix STD
- GParted Live CD
- Iloog
- Parted Magic
- PLD Live CD et PLD RescueCD, basé sur la distribution Linux PLD
- Slax-LFI, une distribution dérivé de Slax
- SystemRescueCd
- Trinity Rescue Kit
- Ubuntu Rescue Remix, un dérivé de Ubuntu
Ils sont aussi disponibles pour de nombreuses Distribution Linux :
- ALT Linux[7]
- ArchLinux Extra Repository[8]
- Debian contrib[9]
- Fedora Extras[10]
- Red Hat Epel[11]
- FreeBSD ports[12]
- Gentoo[13] et Gentoo Portage[14]
- Mandriva contrib
- PLD Linux Distribution
- Source Mage GNU/Linux[15]
- Ubuntu[16]
Liens externes
- Page française de PhotoRec
- (en) Adrian Crenshaw, Data Carving with PhotoRec to retrieve deleted files from formatted drives for forensics and disaster recovery. Cette vidéo introduit le concept de recherche directe de données/fichiers pour récupérer des fichiers effacés à l'aide de PhotoRec, même si le disque a été reformaté.
- (en) Seth Fogie - InformIT, Stealing Your Family Vacation: Memories of a Media Card Les risques liées à la revente ou au recyclage de cartes mémoires et autres supports informatiques usagés, il reste souvent des données que PhotoRec peut récupérer.
- (en) Kaspersky Lab, Recovering files encrypted by Virus.Win32.Gpcode.ak using PhotoRec Après avoir chiffré les fichiers, le virus efface l'original but PhotoRec peut les récupérer.
Références
- (en) Formats de fichiers récupérés par PhotoRec
- (en) Jack Wiles, Kevin Cardwell, Anthony Reyes (2007). The best damn cybercrime and digital forensics book period, p. 220. Syngress Publishing Inc. ISBN 978-1-59749-228-7.
- (en) Cameron H. Malin, Eoghan Casey, James M. Aquilina (2008). Malware Forensics: Investigating and Analyzing Malicious Code, p. xxviii. Syngress Publishing Inc. ISBN 978-1-59749-268-3.
- (en) Nathan Clarke (2010), Computer Forensics: A Pocket Guide, p. 67. IT Governance Publishing. ISBN 978-1849280396.
- (en) Scott Mueller, Brian Knittel (2008). Upgrading and Repairing Microsoft Windows, Second Edition, page 685. Pearson Education Inc. ISBN 978-0789736956.
- (en) Comment fonctionne PhotoRec (Description venant du site web de l'auteur)
- TestDisk dans ALT Linux
- ArchLinux Extra Repository
- TestDisk pour Debian
- TestDisk dans Fedora
- TestDisk dans Red Hat Epel
- TestDisk dans les ports FreeBSD
- TestDisk dans Gentoo
- TestDisk dans Gentoo Portage
- TestDisk dans Source Mage
- TestDisk dans Ubuntu
Catégories :- Mémoire informatique
- Logiciel de sécurité informatique
- Informatique légale
- Logiciel libre de sécurité informatique
Wikimedia Foundation. 2010.