Skip to content

Emplacement d'ActivitiesCache.db et acquisition

Où se trouve ActivitiesCache.db selon le type de compte, et comment le collecter avec son -wal : image disque, KAPE, Velociraptor ou système allumé.

Publié le 7 min de lecture

En bref. La base se trouve dans C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\<account-folder>\ActivitiesCache.db. Collectez tout le dossier ConnectedDevicesPlatform de chaque profil, ActivitiesCache.db-wal compris. Sur un système allumé, utilisez un collecteur en accès disque brut (cible KAPE WindowsTimeline, Velociraptor) ou un cliché instantané, et prenez la base et le WAL ensemble. Hachez avant d'analyser.

Récupérer le fichier est simple sur un disque éteint, et étonnamment facile à rater sur une machine allumée. Les deux erreurs classiques : copier la base sans son WAL, et copier les deux fichiers à des moments différents. Dans les deux cas, on obtient une chronologie qui paraît correcte et qui est discrètement incomplète.

Le chemin

ComposantValeur
Base%LOCALAPPDATA%\ConnectedDevicesPlatform\ (C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\)
Dossier de compteL.<username> pour un compte local (artifacts-kb) ; les praticiens signalent un identifiant de type hexadécimal pour les comptes Microsoft et un dossier préfixé AAD. pour les comptes Entra ID (Azure AD) (README d'ActivitiesCacheParser)
FichiersActivitiesCache.db, ActivitiesCache.db-wal, ActivitiesCache.db-shm
À proximitéCDPGlobalSettings.cdp et des fichiers .cdp par compte (réglages JSON de la plateforme)

Deux détails comptent en pratique.

Un utilisateur, plusieurs dossiers de compte. kacos2000 a observé que lorsqu'un utilisateur passe d'un compte local à un compte Microsoft, le dossier L.<username> est supprimé et un nouveau dossier est créé pour le compte Microsoft, avec reprise des entrées antérieures ; le retour à un compte local laisse la base du compte Microsoft en place (kacos2000). Ne vous arrêtez pas au premier dossier trouvé.

Le nom du dossier n'est pas l'utilisateur. Pour les comptes Microsoft et Entra ID, le nom du dossier ne contient pas le nom d'utilisateur. Attribuez la base à partir du chemin du profil (Users\<name>\) et conservez cette arborescence dans la collecte. L'entrée de glossaire ConnectedDevicesPlatform résume le nommage.

Quels fichiers prendre

FichierÀ prendre ?Pourquoi
ActivitiesCache.dbOuiLa base après checkpoint
ActivitiesCache.db-walOuiModifications validées non encore reportées, souvent l'activité la plus récente (pourquoi le WAL compte)
ActivitiesCache.db-shmFacultatifL'index WAL : une structure de recherche reconstructible, sans preuve propre
Fichiers de réglages *.cdpOui, ça ne coûte rienContexte sur le compte et les réglages de la plateforme

SQLite précise que le fichier WAL fait partie de l'état persistant de la base et que séparer les deux peut faire perdre des transactions validées (sqlite.org/wal.html). Traitez la paire comme une seule pièce à conviction.

Depuis une image disque

L'acquisition à froid est le cas simple : rien ne tient les fichiers ouverts, et aucun checkpoint ne peut survenir pendant votre travail.

  1. Montez l'image en lecture seule.
  2. Exportez Users\*\AppData\Local\ConnectedDevicesPlatform\ de façon récursive, en conservant les chemins.
  3. Hachez chaque fichier exporté.
  4. Vérifiez la présence d'un -wal dans chaque dossier de compte. Un WAL vide ou absent sur une image signifie en général que la dernière connexion s'est fermée proprement après un checkpoint (sqlite.org) ; notez-le, ce n'est pas une erreur.

Regardez aussi dans les clichés instantanés de volume si l'image en contient. Un instantané plus ancien peut abriter une base antérieure à l'effacement de l'historique ou à l'expiration des entrées. Le parseur d'images disque et le parseur de corbeille couvrent les preuves voisines que vous voudrez extraire de la même image.

Depuis un système allumé

Sur une machine en fonctionnement, la session de l'utilisateur garde la base ouverte. Une copie de fichier ordinaire échoue souvent sur une violation de partage ou, pire, réussit pour la base et pas pour le WAL.

KAPE. La cible WindowsTimeline de KapeFiles collecte ActivitiesCache.db* de façon récursive sous le dossier ConnectedDevicesPlatform de chaque utilisateur, ce qui ramène la base, le WAL et le SHM d'un coup (WindowsTimeline.tkape). KAPE lit les fichiers verrouillés par accès disque brut.

Velociraptor. L'artefact Windows.Forensics.Timeline pointe par défaut sur C:\Users\*\AppData\Local\ConnectedDevicesPlatform\*\ActivitiesCache.db ; sa documentation le marque comme déprécié au profit de Generic.Forensic.SQLiteHunter (documentation Velociraptor). Pour la collecte de fichiers, utilisez un motif qui se termine par ActivitiesCache.db* afin d'emporter le WAL.

Cliché instantané. Créer un cliché instantané et copier depuis celui-ci donne une paire cohérente, figée dans le temps. Cela modifie le système : consignez-le dans vos notes.

Quel que soit l'outil, la règle ne change pas : la base et le WAL doivent provenir du même instant. Un WAL pris à un autre moment peut contenir des trames qui ne correspondent pas aux pages de la base. Le Windows Timeline Parser vérifie que le résultat rejoué reste une Timeline plausible et ignore un WAL incohérent avec un avertissement, mais il ne peut pas récupérer ce qu'une mauvaise copie n'a jamais capturé.

Signes d'une mauvaise copie

SymptômeCause probable
Le fichier commence par des zéros au lieu de SQLite format 3L'outil de copie n'a pas pu lire le fichier verrouillé et a écrit un tampon vide
WAL présent, le parseur signale une incohérence de sel ou de somme de contrôle dès la première trameWAL pris à un autre moment, ou issu d'une autre base
La base s'analyse, mais l'activité la plus récente date de plusieurs heures ou jours sur une machine activeWAL manquant
Seulement un -wal et un -shm, pas de baseMotif de collecte trop étroit

L'outil signale chacun de ces cas explicitement : les fichiers qui commencent par des zéros, un WAL sans sa base et un -shm ignoré sont listés sous Fichiers non analysés, et un WAL manquant déclenche un avertissement.

Attribution et chaîne de possession

  • Conservez Users\<name>\AppData\Local\ConnectedDevicesPlatform\<account-folder>\ intact dans la collecte. L'outil attribue chaque base à partir de Users/<name>/ ou du dossier L.<name> ; votre rapport doit faire de même.
  • Hachez les fichiers collectés, puis travaillez uniquement sur des copies. Ouvrir les originaux avec une bibliothèque SQLite standard peut reporter le WAL dans la base et le supprimer à la fermeture de la connexion (sqlite.org), ce qui modifie la preuve.
  • Relevez le fuseau horaire du système et celui de l'utilisateur, puis gardez les horodatages en UTC dans vos notes de travail.

Collectes de triage : quoi prendre en plus

Si vous collectez déjà Timeline, la même passe doit ramener les artefacts qui la corroborent : SRUDB.dat pour SRUM, C:\Windows\Prefetch pour Prefetch, AutomaticDestinations pour les Jump Lists, Recent\*.lnk pour les fichiers LNK, les ruches utilisateur pour les preuves du registre, et les journaux d'événements pour EVTX. Timeline est plus fort quand il est une voix parmi d'autres ; voir Windows Timeline vs SRUM vs Prefetch vs Jump Lists.

FAQ

Où est stockée la base de Windows Timeline ?

Dans C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\<account-folder>\ActivitiesCache.db. Le dossier de compte s'appelle L.<username> pour un compte local et porte un autre identifiant pour un compte Microsoft ou professionnel ou scolaire.

Faut-il collecter le fichier -shm ?

Non. Le fichier -shm est un index en mémoire partagée que SQLite reconstruit. Prenez-le si votre outil le collecte, mais les preuves se trouvent dans ActivitiesCache.db et ActivitiesCache.db-wal.

Peut-on copier ActivitiesCache.db sur un système allumé ?

Pas avec une simple copie pendant que l'utilisateur est connecté, car le fichier est généralement ouvert. Utilisez un collecteur en accès disque brut comme KAPE ou Velociraptor, ou un cliché instantané de volume, et prenez la base et son WAL au même instant.

Étapes suivantes

Une fois les fichiers en main, analysez ActivitiesCache.db dans votre navigateur, ou repartez du guide complet de l'analyse forensique de Windows Timeline.

Articles liés

Pas à pas : ouvrir ActivitiesCache.db et son -wal dans un visualiseur gratuit, filtrer applications, fichiers, focus et presse-papiers, exporter en CSV ou JSON.
Windows 11 a retiré la vue Timeline, mais ActivitiesCache.db peut rester sur le disque. Ce qui a changé, ce que disent les sources, comment vérifier une image.
Référence des champs d'ActivitiesCache.db : ActivityType 5, 6, 10 et 16, JSON AppId, clés du payload comme activeDurationSeconds et toutes les colonnes de date.