Activité utilisateur
Windows Timeline (ActivitiesCache.db)
Fiche Windows Timeline : ActivitiesCache.db et WAL, tables Activity, valeurs ActivityType, durée au premier plan, presse-papiers, expiration à 30 jours.
- Emplacement
- C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\<account>\ActivitiesCache.db
- Prouve
- Applications utilisées, fichiers et URL ouverts par un utilisateur, et durée d'usage
- Horodatages
- StartTime, EndTime, LastModifiedTime et ExpirationTime en secondes epoch Unix, UTC
- Rétention
- Enregistrements expirés environ 30 jours après l'activité, presse-papiers environ 12 heures ; effaçable par l'utilisateur ; traces dans le WAL et les VSS
- Accès
- Base par utilisateur ouverte pendant la session : copie avec son -wal via VSS (esentutl /vss) ou NTFS brut (KAPE WindowsTimeline)
- Type
- Base de données
- Windows
- 1011
- Cible KAPE
- WindowsTimeline
- Velociraptor
- Windows.Triage.Targets:WindowsTimeline
Outils
Comparer tous les outilsPrésentation
Windows Timeline, apparue avec Windows 10 version 1803, est l'« historique d'activité » affiché par la vue Win+Tab : Windows enregistre les applications dans lesquelles l'utilisateur travaille, les documents et pages web ouverts, et la durée pendant laquelle chaque application est restée au premier plan. Les données résident dans une base SQLite propre à chaque utilisateur, ActivitiesCache.db, gérée par la Connected Devices Platform. Pour une investigation sous Windows 10, c'est l'une des sources d'activité utilisateur les plus riches : elle réunit preuve d'exécution, accès aux fichiers et durée d'utilisation.
Emplacement
| Version de Windows | Chemin | Remarques |
|---|---|---|
| 10 (1803 et suivantes) | C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\<account>\ActivitiesCache.db | Avec ActivitiesCache.db-wal et -shm |
| 11 | même chemin, s'il existe | Timeline a été retirée de Windows 11 ; la base peut subsister (notamment après une mise à niveau) mais n'enregistre plus l'activité riche d'applications et de fichiers de Windows 10 |
Le dossier <account> s'appelle L.<username> pour un compte local, ou porte un identifiant lié au compte Microsoft ou professionnel. Collectez toujours le fichier -wal : les enregistrements récents ne se trouvent souvent que là.
Ce que l'artefact prouve
- Utilisation d'applications : une application a été ouverte (type 5) et est restée au premier plan pendant une durée mesurée (type 6), pour les applications Win32 comme UWP.
- Fichiers et URL ouverts : de nombreux enregistrements désignent le document ou la page web ouverts par l'application, avec leur chemin ou URI.
- Durée : les heures de début et de fin des sessions au premier plan montrent combien de temps l'utilisateur a réellement travaillé dans une application.
- Presse-papiers : si l'historique du presse-papiers et la synchronisation entre appareils sont activés, le texte copié peut être stocké (types 10 et 16).
- La base est propre à chaque utilisateur et enregistre l'activité interactive ; elle ne couvre pas les services, les tâches planifiées ni ce qui s'exécute hors session utilisateur.
- Elle dépend du paramètre d'historique d'activité, et sous Windows 11 son absence ne prouve rien.
Champs clés
| Champ | Signification |
|---|---|
Table Activity | Une ligne par activité : AppId, ActivityType, Payload, horodatages, PlatformDeviceId, ClipboardPayload |
Table ActivityOperation | Opérations en file d'attente pour le flux d'activité (par exemple envois ou suppressions en attente) ; peut contenir des lignes absentes d'Activity |
Table Activity_PackageId | Noms de paquets et chemins d'exécutables de chaque application, par plateforme, avec date d'expiration |
AppId | Liste JSON identifiant l'application (chemin Win32, nom de famille de paquet) |
ActivityType | 5 = ouverture d'application/fichier/URL, 6 = application au premier plan, 10 = presse-papiers, 16 = copier/coller ; 2 = notification ; 3, 11, 12 et 15 concernent des opérations système (sauvegarde, identifiants, Wi-Fi, personnalisation) |
Payload | JSON avec des détails comme le texte affiché, la description et l'URI du fichier ou de la page |
ClipboardPayload | Texte copié encodé en Base64 (types 10/16) |
PlatformDeviceId | Identifiant de l'appareil à l'origine de l'activité |
Horodatages
| Horodatage | Positionné quand | Format | Pièges |
|---|---|---|---|
StartTime | Début de l'activité (ouverture ou passage au premier plan) | Secondes epoch Unix, UTC | Certains outils l'affichent en heure locale : vérifiez le réglage de fuseau horaire |
EndTime | Fin de la session au premier plan (type 6) | Secondes epoch Unix, UTC | EndTime - StartTime = durée au premier plan ; 0 ou vide pour les ouvertures |
LastModifiedTime | Dernière mise à jour de l'enregistrement | Secondes epoch Unix, UTC | Ce n'est pas l'heure de l'action ; préférez StartTime et EndTime |
ExpirationTime | Date de purge prévue de l'enregistrement | Secondes epoch Unix, UTC | Environ 30 jours après l'activité |
LastModifiedOnClient, CreatedInCloud | Suivi de la synchronisation client et cloud | Secondes epoch Unix, UTC | Décrivent l'état de synchronisation plutôt que l'activité de l'utilisateur |
Rétention et effacement
- Les enregistrements expirent environ 30 jours après l'activité (
ExpirationTime) ; ceux du presse-papiers durent environ 12 heures. - La collecte dépend de Paramètres > Confidentialité > Historique des activités (« Stocker mon historique d'activités sur cet appareil ») et de la stratégie de groupe (
EnableActivityFeed,PublishUserActivities). L'utilisateur peut aussi effacer l'historique depuis cette même page. - Les lignes supprimées ou expirées peuvent subsister dans le fichier WAL ou dans les pages libres SQLite jusqu'à leur écrasement : analysez la base avec et sans le WAL.
- Des copies plus anciennes de la base peuvent exister dans les clichés instantanés.
Collecte
- Cible KAPE :
WindowsTimeline(tous les fichiersActivitiesCache.db*sous le dossier ConnectedDevicesPlatform de chaque profil). - Velociraptor (
Windows.Triage.Targets) :WindowsTimeline. L'ancien artefactWindows.Forensics.Timelineinterroge la base en direct ; sa description l'indique comme obsolète au profit deGeneric.Forensic.SQLiteHunter. - Commandes natives : la base reste ouverte tant que l'utilisateur est connecté ; copiez-la avec son WAL via un cliché instantané :
esentutl.exe /y "C:\Users\alice\AppData\Local\ConnectedDevicesPlatform\L.alice\ActivitiesCache.db" /vss /d E:\case\alice\ActivitiesCache.db
esentutl.exe /y "C:\Users\alice\AppData\Local\ConnectedDevicesPlatform\L.alice\ActivitiesCache.db-wal" /vss /d E:\case\alice\ActivitiesCache.db-wal
Outils d'analyse
- WxTCmd (Eric Zimmerman, gratuit) :
WxTCmd.exe -f ActivitiesCache.db --csv E:\outproduit des CSV d'activités et d'identifiants de paquets, avec durées et contenus décodés. - SQLECmd (Eric Zimmerman, gratuit) : fournit une map pour
ActivitiesCache.db. - WindowsTimeline (kacos2000, gratuit) : requêtes SQLite et parseur, avec une documentation détaillée des valeurs ActivityType.
- Velociraptor :
Windows.Forensics.Timeline(obsolète) ou l'artefact SQLiteHunter. - Plaso : plugin SQLite
windows_timelinepour les super-chronologies.
Conseils d'investigation
- Servez-vous des sessions de type 6 pour montrer qu'un utilisateur a réellement travaillé dans un outil (client d'accès à distance, archiveur, application de synchronisation cloud) et combien de temps ; cela complète la durée au premier plan de SRUM et d'UserAssist.
- Extrayez les chemins et URL de
Payloadpour retrouver les documents ouverts juste avant une exfiltration ou une connexion suspecte. - Décodez
ClipboardPayloadlorsqu'il est présent : mots de passe, commandes ou IBAN copiés apparaissent en clair après décodage Base64 (voir aussi l'historique du presse-papiers). - Comparez les valeurs de
PlatformDeviceId: des activités synchronisées depuis un autre appareil du même compte peuvent figurer dans la base. - Corrélez les exécutions avec le Prefetch et BAM pour confirmer les heures et le chemin de l'exécutable.
- Sous Windows 11, vérifiez que la base contient des données récentes avant de vous y fier ; sinon, repliez-vous sur les Jump Lists et SRUM.
Artefacts liés
- 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.
- UserAssistFiche UserAssist : clés GUID de NTUSER.DAT, noms en ROT13, nombre d'exécutions, temps au premier plan et dernière exécution des programmes lancés.
- 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.
- Jump ListsFiche Jump Lists : AutomaticDestinations et CustomDestinations, AppID, entrées DestList avec dernier accès, nombre d'accès, épinglage, et JLECmd.
- Historique du presse-papiersFiche presse-papiers : ce que Windows 10/11 garde en mémoire, éléments épinglés sur disque, texte du presse-papiers cloud dans ActivitiesCache.db et registre.
- 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.
- 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
- Journal WAL SQLite (-wal)Le fichier annexe -wal où SQLite écrit les modifications récentes avant de les fusionner dans la base ; il contient souvent les preuves récentes.
- 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.