← Retour à l’analyseur

Investigation forensique avec SRUM

Ce que SRUM permet de prouver

SRUM est l’un des jeux de données d’activité les plus riches que Windows conserve sur lui-même. Dans une enquête, il peut répondre à :

  • Une application tournait-elle à telle date ? Chaque ligne de Utilisation des ressources a un TimeStamp et un AppId. Si chrome.exe a une ligne pour 2026-04-12 14:00 avec FaceTime > 0, l’app était visible pour un utilisateur.
  • Combien de données une application a-t-elle exfiltrées ? Les lignes Utilisation des données réseau portent BytesSent par application par profil réseau. Un pic d’un processus qui ne parle normalement pas beaucoup est un indicateur fort.
  • Sur quel réseau était le portable au moment de la brèche ? Les lignes Connectivité réseau donnent des timestamps FILETIME précis de connexion/déconnexion par profil Wi-Fi.
  • L’appareil était-il sur batterie ou branché ? Les lignes d’événements Énergie montrent chaque transition AC/DC avec timestamp.

Exemple : exfiltration de données

Vous soupçonnez un employé sur le départ d’avoir étagé des données sur une clé USB et de les avoir uploadées. Vous avez une image de son poste prise trois jours après son dernier jour. Approche menée par SRUM :

  1. Acquérir C:\Windows\System32\sru\* et la ruche SOFTWARE depuis l’image. (Où se trouve SRUDB.dat sur Windows ?)
  2. Analyser la base. Déposez-la dans l’analyseur SRUM ou exécutez SrumECmd. (Comment analyser SRUDB.dat sans rien installer)
  3. Filtrer Utilisation des données réseau sur le UserId du suspect (résolu via SruDbIdMapTable vers son SID).
  4. Trier par BytesSent desc sur la fenêtre suspecte (14 derniers jours d’emploi). Cherchez les processus non-navigateurs avec des centaines de Mo sortants — OneDrive.exe, Dropbox.exe, utilitaires custom, ou pwsh.exe.
  5. Croiser avec Connectivité réseau sur la même plage — l’appareil était-il sur le Wi-Fi corporate, un hotspot mobile, ou un SSID inconnu ?
  6. Pivoter vers Utilisation des ressources pour ces processus pour confirmer l’usage premier-plan vs autoupload arrière-plan.

La combinaison — processus + octets + réseau — est bien plus solide qu’une source isolée.

Exemple : persistance de malware

Une alerte SOC déclenche sur un binaire à faible prévalence exécuté hier matin.

  1. Récupérer la ligne IdMap pour le chemin du binaire. Si elle existe, le malware a tourné à un moment.
  2. Sortir toutes les lignes Utilisation des ressources pour cet AppId, triées par TimeStamp. La plus ancienne date la première exécution ; les suivantes montrent l’intervalle de récurrence — fort signal de persistance par tâche planifiée ou clé Run.
  3. Si les cycles CPU arrière-plan continuent sans temps premier-plan, le processus tourne silencieusement.
  4. Croiser avec Utilisation des données réseau pour le même AppId pour voir s’il a appelé dehors.

Précautions

  • SRUM arrondit fortement. Une session navigateur de 5 minutes peut apparaître comme un seul bucket de 60 minutes. Ne revendiquez pas une résolution à la minute depuis les tables court-terme.
  • FaceTime > 0 signifie que l’UI était visible — pas qu’un humain regardait. Sessions RDP, kiosques, écrans de login non surveillés comptent tous.
  • Les tables long-terme agrègent hebdomadairement. Ne comparez pas leurs comptes d’octets un-pour-un avec les lignes court-terme.
  • Un attaquant SYSTEM peut arrêter le service SRUM et effacer le fichier. Vérifiez toujours l’entrée NTFS MFT du fichier pour des timestamps de modification inattendus.

Pour aller plus loin

Questions fréquentes

Les preuves SRUM sont-elles recevables en justice ?
Oui — des tribunaux aux États-Unis, au Royaume-Uni et dans l’UE ont accepté des témoignages dérivés de SRUM. Comme pour toute preuve numérique, la chaîne de garde et la méthodologie de parsing doivent être documentées.
SRUM peut-il prouver qu’un utilisateur était au clavier ?
Indirectement. La colonne FaceTime de Utilisation des ressources capture le temps pendant lequel l’UI était visible, ce qui corrèle habituellement avec un usage actif. Ce n’est pas équivalent à une entrée humaine confirmée.
Quelle est la précision des timestamps SRUM ?
Les TimeStamps de ligne sont bucketés à l’intervalle d’échantillonnage (typiquement 60 minutes). Les événements d’énergie et de connexion réseau sont précis à la seconde.
Un attaquant peut-il altérer SRUDB.dat ?
Oui, avec les privilèges SYSTEM il peut arrêter le service SRUM et écraser le fichier. Cherchez des comptages de lignes incohérents, des trous dans les séquences TimeStamp, ou des timestamps de modification récents sur le fichier lui-même.
SRUM enregistre-t-il la navigation privée ?
Il enregistre les octets utilisés par le processus navigateur, mais pas les URLs visitées. Vous verrez que Chrome a envoyé 200 Mo pendant une heure donnée, mais pas vers où.