Aller au contenu

Anti-forensique et suppression

Corbeille

Fiche Corbeille : fichiers $I et $R de $Recycle.Bin, $I version 1 et 2, INFO2 sous XP, date de suppression, chemin d'origine, vidage et Maj+Suppr.

Emplacement
C:\$Recycle.Bin\<SID>\$I*
Prouve
Quel utilisateur a supprimé quel fichier, depuis quel chemin, quand, et sa taille
Horodatages
Heure de suppression dans $I ou INFO2 en FILETIME, UTC ; la création du $I y correspond ; $R garde les dates $SI du fichier d'origine, UTC
Rétention
Conservé jusqu'à restauration, suppression, vidage ou purge au-delà de MaxCapacity ; NukeOnDelete le contourne ; traces dans $MFT, USN et VSS
Accès
Administrateur : dossier caché et protégé sur chaque volume ; non verrouillé, copie élevée avec robocopy /B ou KAPE RecycleBin
Type
Fichier / système de fichiers
Windows
XPVista / 78 / 8.11011
Cible KAPE
RecycleBinRecycleBin_InfoFilesRecycleBin_DataFiles
Velociraptor
Windows.Triage.Targets:RecycleBinRecycleBin_InfoFilesRecycleBin_DataFiles

Présentation

Lorsqu'un utilisateur supprime un fichier depuis l'Explorateur (ou tout programme qui passe par l'API de suppression du shell), Windows ne l'efface pas : il le déplace dans un dossier caché propre au volume et à l'utilisateur, et note d'où il venait et quand il a été supprimé. Depuis Windows Vista, chaque élément supprimé produit une paire de fichiers : un fichier $R qui contient les données d'origine et un fichier $I qui contient les métadonnées. Windows XP utilisait un index unique, INFO2. La Corbeille est le premier endroit où répondre à la question « qui a supprimé quoi, et quand », et son vidage délibéré est un indicateur classique d'anti-forensique.

Emplacement

Version de WindowsCheminContenu
XP / 2000 (NTFS)C:\RECYCLER\<SID>\INFO2 et Dc<n>.<ext>Un index INFO2 par utilisateur ; fichiers renommés D + lettre de lecteur + numéro d'index + extension d'origine
XP (volumes FAT)C:\RECYCLED\INFO2Partagé, non propre à un utilisateur
Vista / 7 / 8 / 10 / 11C:\$Recycle.Bin\<SID>\$I<aléatoire>.<ext>Fichier de métadonnées, un par élément supprimé
Vista / 7 / 8 / 10 / 11C:\$Recycle.Bin\<SID>\$R<aléatoire>.<ext>Contenu d'origine ; un dossier si c'est un dossier qui a été supprimé

$I et $R partagent les six mêmes caractères aléatoires et l'extension d'origine. Chaque volume fixe possède son propre $Recycle.Bin à la racine ; le sous-dossier <SID> rattache les éléments à un utilisateur (identifiant de sécurité). Les clés USB amovibles n'ont en général pas de Corbeille : les suppressions y sont immédiates.

Ce que l'artefact prouve

  • Suppression par un utilisateur précis : le dossier SID attribue l'action à un compte.
  • Quand : la date de suppression stockée dans le fichier $I ou l'enregistrement INFO2.
  • Quoi et d'où : le chemin complet d'origine et la taille du fichier, même après la purge du contenu $R.
  • Contenu : tant que le fichier $R existe, les données d'origine sont intégralement récupérables.
  • Elle n'enregistre pas les fichiers supprimés avec Maj+Suppr, del/Remove-Item en ligne de commande ou la plupart des suppressions programmatiques, qui contournent la Corbeille.
  • Une Corbeille vide ne prouve pas en soi de l'anti-forensique : les utilisateurs la vident couramment.

Champs clés

ChampSignification
Version $I1 de Vista à 8.1 (champ de chemin de taille fixe), 2 sous Windows 10/11 (longueur du chemin + chemin de taille variable)
Taille d'origineTaille en octets du fichier ou dossier supprimé
Date de suppressionFILETIME du déplacement vers la Corbeille
Chemin d'origineChemin complet UTF-16 de l'élément avant suppression
Fichier $RContenu supprimé, avec ses données et la plupart de ses métadonnées
Enregistrement INFO2 (XP)Numéro d'index, numéro de lecteur, date de suppression, taille, chemin d'origine (ANSI et Unicode)

Horodatages

HorodatagePositionné quandFormatPièges
Date de suppression ($I / INFO2)Déplacement de l'élément vers la CorbeilleFILETIME, UTCL'horodatage clé ; dépend de l'horloge système au moment de la suppression
Création du fichier $I ($SI)Écriture du $I à la suppressionNTFS, UTCDoit correspondre à la date interne ; un écart mérite examen
Dates du fichier $R ($SI)Conservées depuis le fichier d'origine, la suppression étant un renommage au sein du volumeNTFS, UTCDécrivent le fichier d'origine, pas la suppression ; les dates $FN reflètent le déplacement
Modification du dossier $Recycle.Bin\<SID>Dernier élément ajouté ou retiréNTFS, UTCLe vidage ou une restauration la met à jour

Rétention et effacement

  • Les éléments restent jusqu'à ce que l'utilisateur les restaure, les supprime de la Corbeille ou la vide, ou jusqu'à ce que la Corbeille dépasse sa taille maximale et que les plus anciens soient purgés.
  • Les réglages par volume se trouvent sous HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume\<GUID> : MaxCapacity (taille) et NukeOnDelete (à 1, les fichiers sont supprimés immédiatement sans passer par la Corbeille).
  • Le vidage supprime à la fois les $I et les $R. Des traces subsistent : entrées et noms $I/$R dans la $MFT et les index $I30, enregistrements de suppression dans le journal USN, et contenu dans l'espace non alloué jusqu'à écrasement.
  • Les clichés instantanés conservent souvent un état antérieur de $Recycle.Bin.

Collecte

  • Cible KAPE : RecycleBin (composée de RecycleBin_InfoFiles pour les $I*/INFO2 et de RecycleBin_DataFiles pour les $R*/D*). Ne collectez que les fichiers d'information si le volume de données pose problème.
  • Velociraptor (Windows.Triage.Targets) : RecycleBin, RecycleBin_InfoFiles ou RecycleBin_DataFiles. Windows.Forensics.RecycleBin analyse les $I en direct (Vista et suivants, pas INFO2).
  • Commandes natives : le dossier est caché et protégé ; listez-le et copiez-le depuis une invite élevée, puis associez les SID aux utilisateurs :
Get-ChildItem 'C:\$Recycle.Bin' -Force -Recurse | Select-Object FullName, Length, CreationTimeUtc, LastWriteTimeUtc
robocopy 'C:\$Recycle.Bin' E:\case\RecycleBin_C /E /B /COPY:DAT /DCOPY:T
Get-CimInstance Win32_UserProfile | Select-Object SID, LocalPath

Répétez l'opération pour chaque volume (D:\$Recycle.Bin, etc.).

Outils d'analyse

  • RBCmd (Eric Zimmerman, gratuit) : RBCmd.exe -d E:\case\RecycleBin_C --csv E:\out analyse les $I de version 1 et 2 ainsi que les fichiers INFO2 de XP.
  • Rifiuti2 (open source) : analyse les fichiers INFO2 et $I, avec une sortie tabulée ou XML.
  • Velociraptor : Windows.Forensics.RecycleBin.
  • Plaso : parseurs recycle_bin ($I) et recycle_bin_info2 (INFO2) pour les super-chronologies.

Conseils d'investigation

  • Triez par date de suppression et repérez les rafales : une suppression massive juste avant la restitution d'un poste, un départ ou une réponse à incident est un fort indicateur d'anti-forensique.
  • Les outils d'attaque et archives supprimés (.zip, .7z, .rar) se trouvent souvent dans la Corbeille avec leur chemin d'origine dans Downloads, Temp ou un dossier de préparation.
  • Si la Corbeille est vide, cherchez des noms $I/$R orphelins dans la $MFT et les enregistrements FILE_DELETE correspondants dans le journal USN pour dater le vidage.
  • Comparez le chemin d'origine avec les fichiers LNK et les Jump Lists pour montrer que le fichier a été ouvert avant d'être supprimé.
  • Pour des images supprimées dont le $R a disparu, consultez le thumbcache.
  • Vérifiez NukeOnDelete avant de conclure que rien n'a jamais transité par la Corbeille.

Artefacts liés

Termes du glossaire

Guides

Tous les artefacts sur une page : aide-mémoire