Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

LogFile NTFS Forensics

forensics

Définition

$LogFile est un fichier de journal de transactions NTFS stocké à la racine du volume (visible seulement comme $LogFile via les APIs NTFS brutes). Il est utilisé par NTFS pour garantir la cohérence du système de fichiers en cas de crash ou d'interruption d'alimentation, en enregistrant toutes les modifications de métadonnées avant leur application effective. En forensique, $LogFile peut révéler des opérations récentes sur le système de fichiers, y compris des modifications effectuées dans les dernières heures ou jours. $LogFile est un journal circulaire : il écrase les entrées les plus anciennes lorsqu'il est plein. Sa taille est dynamique (typiquement quelques dizaines de Mo) et contient des enregistrements de type Log Records représentant des opérations NTFS atomiques : création de fichier, suppression, renommage, modification d'attributs MFT. Les entrées incluent l'opération effectuée, les données avant et après la modification (pour le redo et le undo), et un Log Sequence Number (LSN) monotoniquement croissant. Forensiquement, $LogFile est complémentaire à $UsnJrnl (qui est plus lisible et plus complet mais peut être supprimé intentionnellement). $LogFile contient des données plus brutes mais potentiellement plus récentes. L'outil LogFileParser de Joakim Schicht analyse $LogFile et extrait une liste d'opérations NTFS avec leurs timestamps, utile pour reconstituer une timeline fine des modifications système. La corrélation entre $LogFile, $UsnJrnl, la MFT, et les journaux Windows Event permet une reconstruction très précise de l'activité sur un système de fichiers. Ces quatre sources forensiques se complètent : la MFT donne l'état actuel et passé des fichiers, $LogFile donne les transactions récentes, $UsnJrnl donne un historique plus long des modifications, et les Event Logs donnent le contexte applicatif.

Fonctionnement

$LogFile implémente un protocole Write-Ahead Logging (WAL) pour NTFS. Chaque modification de métadonnées est d'abord écrite dans $LogFile avant d'être appliquée aux structures MFT/directory. En cas de crash, NTFS rejoue les transactions non complétées depuis $LogFile pour restaurer la cohérence. Le fichier est circulaire et contient généralement quelques heures à quelques jours de transactions selon l'activité.

Application DFIR

$LogFile permet de détecter des modifications récentes même si les fichiers ont été supprimés depuis, de corroborer des timestamps MFT (les LSN permettent d'ordonner les opérations), et d'identifier des opérations de nettoyage (suppressions en masse dans une fenêtre temporelle). Particulièrement utile sur les systèmes à forte activité où le $UsnJrnl est rotationné rapidement.

Outils

LogFileParser (Joakim Schicht, parse $LogFile en CSV), NTFS Log Tracker (parse $LogFile + $UsnJrnl combinés), MFTECmd (Eric Zimmerman, inclut lecture $LogFile), Sleuth Kit (fsstat, logfile). Python : libregf et pytsk3 pour l'accès forensique bas niveau. Corrélation recommandée : MFTECmd + LogFileParser + EvtxECmd dans Timeline Explorer.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis