Exécution
SRUM (System Resource Usage Monitor)
Fiche SRUM : tables et GUID de SRUDB.dat, octets réseau et temps CPU par application, enregistrements horaires UTC, rétention de 30 à 60 jours, réparation ESE.
- Emplacement
- C:\Windows\System32\sru\SRUDB.dat
- Prouve
- Une application a tourné pour un utilisateur à une heure donnée, et ses octets envoyés et reçus
- Horodatages
- TimeStamp en date OLE, UTC, fin d'une fenêtre d'environ une heure ; ConnectStartTime en FILETIME, UTC
- Rétention
- Enregistrements conservés environ 30 à 60 jours selon la table, puis purgés ; écriture horaire et à l'arrêt ; copies plus anciennes dans les VSS
- Accès
- Administrateur ; SRUDB.dat verrouillé à chaud et souvent dirty : copie via VSS (esentutl /vss) ou NTFS brut, puis réparation ; collecter aussi SOFTWARE
- Type
- Base de données
- Windows
- 8 / 8.11011
- Cible KAPE
- SRUM
- Velociraptor
- Windows.Triage.Targets:SRUM
Outils
Comparer tous les outilsPrésentation
Le System Resource Usage Monitor (SRUM), introduit avec Windows 8, enregistre la consommation de ressources par application et par utilisateur afin que Windows puisse afficher des statistiques de batterie et de données. Les données sont stockées dans SRUDB.dat, une base ESE. C'est l'un des rares artefacts natifs qui relie un programme et un utilisateur à un volume réseau, d'où son rôle central dans les questions d'exfiltration.
Emplacement
| Version de Windows | Emplacement | Remarques |
|---|---|---|
| 8 / 8.1 / 10 / 11 | C:\Windows\System32\sru\SRUDB.dat | Base ESE accompagnée de SRU*.log, SRUtmp.log, SRU.chk |
| 8 / 8.1 / 10 / 11 | SOFTWARE\Microsoft\Windows NT\CurrentVersion\SRUM\Extensions | Enregistre les GUID des fournisseurs |
| — | Ruche SOFTWARE | Nécessaire aux parseurs pour résoudre les profils d'interface (NetworkList) |
La base est verrouillée pendant que Windows tourne, et se trouve souvent dans un état « sale » (dirty) lorsqu'on la copie à chaud.
Ce que l'artefact prouve
- Exécution et activité : une application (chemin, nom de service ou identifiant d'application empaquetée) a consommé du CPU ou des E/S pendant une heure donnée, sous un SID donné.
- Volume réseau : octets envoyés et reçus par application, par utilisateur et par interface/profil réseau. Un gros volume sortant de
rclone.exe, d'un navigateur ou d'un archiveur est le signal classique d'exfiltration. - Connectivité : à quel profil réseau (SSID Wi-Fi ou réseau filaire) la machine était connectée, et combien de temps.
- Il ne montre pas les destinations (adresses IP ou URL) ; combinez-le avec les journaux de proxy, de pare-feu ou DNS.
Champs clés
| Table (GUID du fournisseur) | Colonnes utiles |
|---|---|
SruDbIdMapTable | Associe les AppId/UserId numériques aux chemins, noms d'applications et SID |
Application Resource Usage {D10CA2FE-6FCF-4F6D-848E-B2E99266FA89} | ForegroundCycleTime, BackgroundCycleTime, FaceTime, octets lus et écrits au premier plan / en arrière-plan |
Network Usage {973F5D5C-1D90-4944-BE8E-24B94231A174} | BytesSent, BytesRecvd, InterfaceLuid, L2ProfileId |
Network Connectivity {DD6636C4-8929-4683-974E-22C046A43763} | ConnectedTime, ConnectStartTime, L2ProfileId |
Push Notifications {D10CA2FE-6FCF-4F6D-848E-B2E99266FA86} | Nombre de notifications par application |
Energy Usage {FEE4E14F-02A9-4550-B5CE-5FA2DA202E37} | Charge et capacité de la batterie (portables) |
App Timeline {5C8CF1C7-7257-4F13-B223-970EF5939312} (Windows 10+) | Données chronologiques par application utilisées par les vues d'usage de Windows |
Chaque table de données contient AutoIncId, TimeStamp, AppId et UserId.
Horodatages
| Horodatage | Positionné quand | Format | Pièges |
|---|---|---|---|
TimeStamp | Écriture de l'enregistrement par le fournisseur, environ une fois par heure | Date OLE, UTC (affichée en UTC par les parseurs) | Fin d'une fenêtre d'agrégation, pas l'instant de l'activité ; les compteurs sont des totaux sur la période |
ConnectStartTime | Début d'une connexion à un profil réseau | FILETIME, UTC | Une connexion longue s'étale sur de nombreux enregistrements |
Modification $SI de SRUDB.dat | Dernière écriture sur disque | NTFS, UTC | La dernière heure peut encore se trouver en mémoire / dans les tampons du registre |
Rétention et effacement
- Les enregistrements sont conservés environ 30 à 60 jours selon la table, puis purgés ; les tables longue durée (énergie par exemple) peuvent remonter plus loin.
- Les données sont écrites environ toutes les heures, ainsi qu'à l'arrêt : la dernière heure avant l'acquisition peut manquer dans une copie à chaud.
- Supprimer
SRUDB.datimpose d'arrêter le service de stratégie de diagnostic (DPS) ; une base fraîchement recréée avec peu d'enregistrements est un signal d'alerte. - Des copies plus anciennes existent souvent dans les clichés instantanés.
Collecte
- Cible KAPE :
SRUM(le dossiersruet la ruche SOFTWARE) - Velociraptor (
Windows.Triage.Targets) :SRUM;Windows.Forensics.SRUMl'analyse en direct. - Commandes natives (administrateur) : copie depuis un cliché instantané avec
esentutl, puis réparation si la base est sale.
esentutl.exe /y C:\Windows\System32\sru\SRUDB.dat /vss /d E:\case\sru\SRUDB.dat
esentutl.exe /mh E:\case\sru\SRUDB.dat
esentutl.exe /r sru /i
/mh affiche l'état (Clean Shutdown ou Dirty Shutdown) ; lancez la récupération (/r sru) depuis le dossier contenant la base et ses journaux, et conservez un original intact.
Outils d'analyse
- SrumECmd (Eric Zimmerman) :
SrumECmd.exe -f SRUDB.dat -r SOFTWARE --csv E:\out; la ruche passée par-rrésout les noms de profils réseau. - srum-dump (Mark Baggett, open source) : produit un classeur annoté à partir d'un modèle.
- Velociraptor :
Windows.Forensics.SRUM. - AppResourcesUsageView / NetworkUsageView (NirSoft) : vues rapides sur un système en direct.
Conseils d'investigation
- Triez Network Usage par
BytesSentet par heure : une application avec un pic soudain (souventrclone.exe,curl.exe,winscp.exe, un navigateur ou unsvchost.exehébergeant BITS) marque la fenêtre d'exfiltration. - Faites correspondre
L2ProfileIdau SSID via la ruche SOFTWARE (profils réseau) pour montrer que la machine était sur un réseau d'hôtel ou un point d'accès personnel à ce moment. - Utilisez Application Resource Usage pour confirmer qu'un outil supprimé a tourné, même si le Prefetch a été vidé.
- SRUM attribue l'activité à un SID : un outil tournant sous
SYSTEMou un compte de service mérite l'attention. - Les horodatages sont des tranches horaires en UTC : alignez-les avec les journaux du navigateur et du pare-feu à l'heure près, pas à la seconde.
Artefacts liés
- Profils réseau (NetworkList)Fiche NetworkList : profils réseau, SSID, adresses MAC de passerelle, première et dernière connexion (heure locale), profils WLAN et événements WLAN.
- Fichiers Prefetch (.pf)Fiche Prefetch Windows : emplacement des .pf par version, nombre d'exécutions, huit dernières dates, fichiers référencés, rétention et analyse.
- BAM / DAM (Background Activity Moderator)Fiche BAM et DAM : clés de la ruche SYSTEM selon la version de Windows 10, SID par utilisateur, dernière exécution en FILETIME, rétention de sept jours.
- Artefacts des navigateurs (Chrome, Edge, Firefox)Fiche navigateurs : fichiers de profil Chromium et Firefox, tables History et places.sqlite, horodatages WebKit et PRTime, téléchargements, cookies, cache.
- Ruches du registreFiche ruches du registre : SYSTEM, SOFTWARE, SAM, SECURITY, NTUSER.DAT, UsrClass.dat, journaux de transactions, RegBack, LastWrite et collecte.
- Windows Recall (instantanés des PC Copilot+)Fiche Windows Recall : magasin CoreAIPlatform, ukg.db et ImageStore, texte OCR et titres de fenêtres, chiffrement VBS, activation volontaire et limites.
Termes du glossaire
- Base ESE (Extensible Storage Engine)Le format de base de données transactionnelle de Microsoft derrière SRUM, WebCache, l'index Windows Search et la file BITS, souvent « dirty ».
- Identifiant de sécurité (SID)La valeur unique qui identifie utilisateurs, groupes et ordinateurs sous Windows, comme S-1-5-21-…-1001, présente dans le Registre et les journaux.
- Preuve d'exécutionLes artefacts qui montrent qu'un programme s'est réellement exécuté sous Windows, et pas seulement qu'il était présent sur le disque.
- UTC et heure locale dans les artefacts WindowsPourquoi certains artefacts Windows enregistrent l'UTC et d'autres l'heure locale, et comment la clé TimeZoneInformation aide à normaliser une chronologie.
Guides
- Preuves d'exécution : Prefetch, Amcache, BAM et autresProuver qu'un programme a tourné sous Windows, pas seulement existé : Prefetch, ShimCache, Amcache, BAM, UserAssist, SRUM, PCA, WER et 4688 comparés.
- Forensique SRUM : usage des applications et octets réseauExploiter SRUM (SRUDB.dat) pour prouver quelles applications ont tourné, pour quel utilisateur et combien d'octets elles ont envoyés : tables, SrumECmd.