← Tous les documents

Récupérer des fichiers supprimés de la Corbeille (même après vidange)

4 min de lecture

Deux scénarios de récupération. Le trivial : "le fichier est encore dans la Corbeille", restauré depuis le shell. L'intéressant : tout ce qui vient après, les corbeilles vidées, les suppressions par Maj+Suppr, les wipers anti-forensiques. Les mêmes métadonnées $I qui permettent au shell de restaurer un fichier sont aussi votre meilleure carte pour ce qu'il faut chercher sur disque quand la voie facile est fermée.

Quand le fichier est encore dans la Corbeille

  1. Ouvrez la Corbeille depuis le bureau.
  2. Faites un clic droit sur le fichier, choisissez Restaurer.
  3. Windows lit le chemin d'origine depuis le $I, renomme le $R vers son nom d'origine et le déplace vers ce chemin. Si le dossier d'origine n'existe plus, Windows le recrée.

Pour une restauration en lot depuis la ligne de commande :

PowerShell.exe -Command "(New-Object -ComObject Shell.Application).NameSpace(0xA).Items() | %{ $_.InvokeVerb('Restore') }"

…exécute Restaurer sur tous les éléments de la Corbeille. Utile quand un utilisateur a supprimé en masse par erreur et que vous devez annuler à grande échelle.

Quand la Corbeille a été vidée

Vider la Corbeille retire $I et $R de l'index du système de fichiers, mais les clusters NTFS sous-jacents sont seulement marqués comme libres. Tant que rien d'autre ne les alloue, le contenu est toujours là.

La règle la plus importante est la même que prêchée depuis des décennies par la récupération de disque : cessez d'écrire sur le disque. Coupez l'alimentation si possible, sinon imagez le volume. Chaque écriture du cache navigateur, chaque fichier temporaire, chaque Windows Update est un candidat à l'écrasement des clusters voulus.

Après préservation du disque :

  1. Analyse MFT. Les entrées $STANDARD_INFORMATION de la Master File Table pour les chemins d'origine survivent souvent longtemps après que les données de cluster ont disparu. Elles fournissent la preuve d'existence, les tailles et les horodatages, même quand le contenu n'est pas récupérable.
  2. Journal USN. Le journal USN enregistre RENAME_OLD_NAME, RENAME_NEW_NAME et FILE_DELETE pour le chemin d'origine, en entrée et sortie de $Recycle.Bin.
  3. Clichés instantanés. vssadmin list shadows (ou Get-VssShadowCopy en PowerShell). Un instantané pris avant la vidange est la récupération la plus propre possible.
  4. Carving de fichiers. Balayage des clusters non alloués pour des signatures connues (PDF %PDF, en-têtes PK Office Open XML, etc.). Photorec est l'outil gratuit de référence.
  5. Référentiels de sauvegarde. Historique des fichiers Windows, sauvegarde de poste Veeam, Corbeille OneDrive (distincte de la Corbeille shell), Corbeille Google Drive. Chacun a sa propre politique de rétention.

L'utilité du $I survivant

Quand le contenu $R est irrécupérable mais que le $I est intact (ou récupéré depuis un cliché), vous disposez toujours de :

ChampPourquoi cela compte
Chemin complet d'origineRattacher le fichier à un dossier, attribuer par SID
Taille originaleVérifier qu'un fragment carvé est complet
FILETIME de suppressionAncrer la suppression sur une chronologie (UTC, à la seconde)

Ce trio suffit souvent à prouver la suppression intentionnelle d'un fichier précis. Le contenu est un bonus.

Schémas anti-forensiques à surveiller

Un utilisateur qui lit des blogs forensiques se tournera vers l'un de trois mouvements :

  1. Maj+Suppr. Contourne entièrement la Corbeille. Aucune ligne $I n'existe. L'absence d'un $I pour un fichier connu pour avoir été supprimé est en soi une conclusion.
  2. Vider et écraser. Vide la Corbeille, puis génère une activité disque intense pour écraser les clusters libérés (gros téléchargements, lecture vidéo). La récupération par cluster devient beaucoup plus difficile.
  3. Wipers de contenu. sdelete -p 3 -z, BCWipe, Eraser. Le contenu $R est mis à zéro puis supprimé. Le $I peut survivre assez longtemps pour être intéressant.

Recoupez tout effacement apparent avec les hits Prefetch sur l'outil d'effacement et les preuves SHA-1 AmCache de la présence de l'outil.

Pour aller plus loin

Questions fréquentes

Comment restaurer un fichier depuis la Corbeille ?
Ouvrez la Corbeille, cliquez avec le bouton droit sur le fichier, et choisissez Restaurer. Windows le replace dans son dossier d'origine en utilisant le chemin stocké dans le fichier de métadonnées $I correspondant.
Peut-on récupérer des fichiers après avoir vidé la Corbeille ?
Parfois. Vider la Corbeille supprime les entrées $I/$R de l'index, mais les clusters NTFS sous-jacents survivent souvent jusqu'à écrasement. Le carving ou l'analyse $MFT peut les récupérer ; cessez immédiatement d'écrire sur le disque.
Que dit le fichier $I sur un fichier récupérable ?
Il enregistre le chemin complet d'origine, la taille originale en octets, et l'heure exacte de suppression. Même quand le contenu $R a disparu, les métadonnées $I prouvent qu'un fichier a existé, où il se trouvait et quand il a été supprimé.
Pourquoi cesser d'utiliser le disque après avoir supprimé quelque chose d'important ?
Le contenu supprimé reste sur disque tant que ces clusters ne sont pas réutilisés. Chaque nouvelle écriture (navigation, fichiers temporaires) risque de l'écraser ; éteignez ou imagez le disque dès que possible.