Aller au contenu

Listes MRU (Most Recently Used)

La philosophie derrière les listes MRU est simple : les systèmes d’exploitation doivent se souvenir des actions passées de l’utilisateur pour prédire et faciliter ses actions futures. Lorsqu’un utilisateur effectue une action spécifique — comme ouvrir un fichier, taper une commande ou mapper un lecteur réseau — Windows enregistre cette interaction dans une clé de registre dédiée.

Ces clés fonctionnent souvent comme une pile ou une liste chaînée (généralement gérée par une valeur nommée MRUList ou MRUListEx), où l’action la plus récente est poussée au sommet.

La grande majorité des clés MRU critiques sont stockées dans la ruche de registre spécifique à l’utilisateur.

  • Ruche : NTUSER.DAT (Profil utilisateur)
  • Implication : tout artefact trouvé ici est strictement lié à l’identifiant de sécurité (SID) de l’utilisateur qui a exécuté l’action, ce qui rend l’attribution incontestable.

Les analystes priorisent quatre clés MRU spécifiques lors d’une investigation, car elles révèlent l’interaction directe de l’attaquant avec l’interface graphique ou le système de fichiers.

  • Chemin : Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
  • Valeur forensique : cette clé stocke chaque commande tapée dans la boîte de dialogue “Exécuter” de Windows (Win + R). Les acteurs de la menace utilisant des techniques Living Off The Land (LOLBAS) utilisent fréquemment cette boîte pour générer cmd.exe, powershell.exe ou regedit.exe. Trouver une commande PowerShell encodée ou une charge utile de reverse shell dans cette clé est une preuve définitive d’une exécution interactive et intentionnelle.

B. OpenSavePidlMRU (Interaction avec les fichiers)

Section intitulée « B. OpenSavePidlMRU (Interaction avec les fichiers) »
  • Chemin : Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU
  • Valeur forensique : organisée par extension de fichier (ex: .doc, .pdf, .zip), cette clé journalise les fichiers qui ont été ouverts ou enregistrés via les boîtes de dialogue standards de Windows. Elle est cruciale pour prouver la préparation de données (staging), l’ouverture de pièces jointes malveillantes ou la sauvegarde d’archives de données exfiltrées.
  • Chemin : Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
  • Valeur forensique : similaire à OpenSaveMRU, cette clé suit les fichiers et dossiers récemment accédés, peuplant le menu “Documents récents”. Elle offre une vue d’ensemble macroscopique de la chronologie de manipulation des données par l’utilisateur.

D. TypedPaths (Reconnaissance et mouvement latéral)

Section intitulée « D. TypedPaths (Reconnaissance et mouvement latéral) »
  • Chemin : Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths
  • Valeur forensique : contient les chaînes de caractères exactes tapées directement dans la barre d’adresse de l’Explorateur Windows. Si un attaquant tape un chemin UNC comme \\SRV-FINANCE\C$ pour accéder à un partage administratif lors d’une reconnaissance de mouvement latéral, la chaîne sera immortalisée ici.

Les listes MRU sont rarement analysées isolément. Elles servent de point de pivot pour prouver l’intention humaine avant de basculer vers les artefacts d’exécution systémiques.

  1. Prouver l’intention : contrairement à l’Amcache qui journalise les métadonnées binaires de manière passive, une commande trouvée dans RunMRU prouve qu’un humain (ou une session de bureau à distance interactive) a consciemment tapé et exécuté une chaîne de caractères.
  2. Reconstruire la chronologie : les listes MRU sont classées chronologiquement via leurs valeurs MRUListEx. De plus, l’heure de dernière écriture (Last Write Time) de la clé de registre parente indique le moment exact où l’action la plus récente s’est produite, établissant un “Temps d’Activité” précis.
  3. Corrélation croisée d’artefacts :
    • Pivot d’exécution : si une commande suspecte est trouvée dans RunMRU, pivotez vers lesfichiers Prefetch (.pf) et l’Événement 4688 à cet horodatage exact pour déterminer si la commande a réussi à générer des processus enfants.
    • Pivot d’accès aux fichiers : si un fichier sensible est listé dans OpenSaveMRU, recherchez les fichiers LNK ou Jumplists correspondants pour extraire des métadonnées supplémentaires (comme le numéro de série du volume ou l’adresse MAC du lecteur source).
    • Pivot de navigation : corrélez TypedPaths avec les Shellbags pour cartographier l’historique complet de navigation dans les répertoires de l’attaquant.

L’analyse manuelle des ruches de registre brutes est sujette à des erreurs d’interprétation des structures d’ordonnancement binaires MRUListEx. Les équipes DFIR s’appuient sur des utilitaires de parsing automatisés.

Registry Explorer

Développé par Eric Zimmerman, cet outil graphique est essentiel pour naviguer dans les ruches de registre exportées. Il inclut des “Bookmarks” intégrés qui localisent, analysent et trient chronologiquement toutes les clés MRU courantes de manière automatique.

RegRipper

L’outil en ligne de commande standard de l’industrie. En utilisant des plugins spécifiques (tels que runmru, opensavemru et recentdocs), les analystes peuvent extraire rapidement les données MRU lors d’opérations de triage de masse.