Skip to content

Analyser ActivitiesCache.db dans votre navigateur

Pas à pas : ouvrir ActivitiesCache.db et son -wal dans un visualiseur gratuit, filtrer applications, fichiers, focus et presse-papiers, exporter en CSV ou JSON.

Publié le 6 min de lecture

En bref. Ouvrez le Windows Timeline Parser, déposez ActivitiesCache.db et ActivitiesCache.db-wal (ou tout le dossier du profil, ou un ZIP KAPE/Velociraptor), lisez les avertissements, puis filtrez par type : Ouverture (app / fichier) pour les fichiers, Utilisation (focus) pour le temps de focus, Presse-papiers pour le texte copié, Opérations en attente pour les suppressions. Ouvrez n'importe quelle ligne pour voir le JSON brut. Exportez en CSV ou JSON. Tout s'exécute localement en WebAssembly ; rien n'est envoyé.

Cet article est le compagnon pratique du guide complet de l'analyse forensique de Windows Timeline. Il suppose que vous avez déjà les fichiers ; sinon, commencez par où se trouve ActivitiesCache.db et comment l'acquérir.

Avant de commencer

Il vous fautPourquoi
Une copie d'ActivitiesCache.dbLa base après checkpoint
Le ActivitiesCache.db-wal correspondantL'activité validée la plus récente (pourquoi)
Le chemin Users\<name>\ conservé dans la collecteAttribuer chaque base à un compte
Un navigateur de bureau récentLe parseur tourne en WebAssembly dans un Web Worker

Le parseur est en lecture seule par construction : il lit des octets, il n'embarque pas de moteur SQLite et ne possède aucun chemin de code qui écrit dans vos fichiers. Vous travaillez quand même sur des copies, parce que c'est une bonne pratique quel que soit l'outil.

Étape 1 : collecter la base avec son WAL

Prenez tout le dossier ConnectedDevicesPlatform de chaque utilisateur. Une cible KAPE WindowsTimeline ou une collecte Velociraptor le fait déjà (cible KapeFiles). Hachez ce que vous avez collecté.

Étape 2 : ouvrir l'outil et charger les fichiers

Rendez-vous sur la page d'accueil de l'outil. Vous pouvez :

  • Déposer des fichiers : ActivitiesCache.db plus ActivitiesCache.db-wal.
  • Déposer un dossier ou utiliser Choisir un dossier : l'outil trouve chaque ActivitiesCache.db et l'associe à son WAL.
  • Déposer un ZIP : les archives de triage sont ouvertes dans le navigateur, y compris les ZIP imbriqués ; les fichiers sans rapport sont comptés et ignorés.
  • Essayer un exemple : une base synthétique issue d'une intrusion fictive, dont les dernières actions sont restées dans le WAL. Pratique pour prendre l'interface en main avant de toucher à des preuves.

Le compte est déduit de Users/<name>/ dans le chemin, ou du dossier L.<name> pour les comptes locaux.

Étape 3 : lire les avertissements et les compteurs

Ne sautez pas cette étape. Les avertissements vous disent si la chronologie est complète.

MessageSignificationQue faire
Pas de fichier -wal pour cette baseL'activité récente manque probablementRetournez à la collecte et trouvez le WAL
Le fichier -wal ne correspond pas à cette baseWAL d'un autre moment ou d'une autre base ; ignoréRecollectez les deux fichiers ensemble
N trame(s) d'une transaction non validée ignorée(s)Normal sur un système alluméRien ; notez-le
Commence par des zérosLe fichier était verrouillé ou en cours d'écriture lors de la copieRecollectez avec un outil en accès disque brut
Fichier WAL sans son ActivitiesCache.dbCollecte trop étroiteCollectez la base

Les compteurs donnent la forme des données : Comptes, Activités, Uniquement dans le WAL, Presse-papiers, Suppressions, Signalées. Un grand nombre de lignes « uniquement dans le WAL » est normal pour une collecte à chaud ; zéro sur un système allumé est une raison de vérifier que le WAL a bien été collecté.

Étape 4 : filtrer selon la question

QuestionFiltre
Quels fichiers l'utilisateur a-t-il ouverts ?Type Ouverture (app / fichier)
Dans quelle application a-t-il réellement travaillé, et combien de temps ?Type Utilisation (focus), tri par la colonne Focus
Qu'a-t-il copié ?Type Presse-papiers, puis Copier / coller pour les événements
A-t-il retiré des entrées de Timeline ?Type Opérations en attente, cherchez Opération : suppression
Quelque chose touche-t-il une clé USB, un partage ou un dossier inhabituel ?Signalées uniquement
Un fichier, un hôte ou une date précisLe filtre texte (application, fichier, texte, presse-papiers et date)
Plusieurs utilisateurs ou machinesLe sélecteur de base (Toutes les bases par défaut)

Les marqueurs sont des heuristiques, pas des verdicts : Presse-papiers, Uniquement dans le WAL, Modifiée dans le WAL, Suppression, Dossier modifiable par l'utilisateur (AppData, Downloads, Desktop, Public, ProgramData, Windows\Temp, Corbeille, PerfLogs), Autre lecteur (USB ?) pour une lettre de lecteur autre que C:, et Chemin réseau pour les chemins UNC. Leur rôle est de vous pointer les lignes qui méritent d'être lues.

Étape 5 : examiner une ligne

Ouvrez n'importe quelle ligne pour voir :

  • L'application résolue (GUID de dossiers connus affichés en %ProgramFiles%, %SystemRoot%\System32, ...) et son nom convivial.
  • Le fichier ou dossier décodé depuis contentUri.
  • Le texte du presse-papiers, décodé depuis le Base64.
  • Début, fin, durée de focus, dernière modification, expiration et, pour les opérations, la date de création de l'opération.
  • Le fuseau horaire de l'utilisateur issu du payload.
  • Le statut WAL : dans la base reportée, uniquement dans le WAL, ou modifiée dans le WAL.
  • Le JSON brut du Payload et de l'AppId, mis en forme, pour tout ce que le tableau n'affiche pas.

La signification des champs est expliquée dans types d'activité et champs du payload d'ActivitiesCache.db.

Étape 6 : choisir le fuseau horaire et exporter

La bascule UTC / Local change l'affichage. Choisissez-en une et indiquez-la dans vos notes. Exports :

  • CSV : une ligne par activité avec des colonnes de date en UTC, le type, l'application, le chemin du fichier, le texte du presse-papiers, le statut WAL, les marqueurs, le propriétaire et le fichier source. Les cellules qui commencent par un caractère de formule sont neutralisées pour que le fichier s'ouvre sans risque dans un tableur.
  • JSON : tous les champs décodés (y compris Group, Tag et IsLocalOnly), plus des métadonnées par source : chemin, propriétaire, nombre de trames WAL, tables et avertissements du parseur.

Les exports ne contiennent que les lignes qui correspondent aux filtres actifs. Videz les filtres si vous voulez tout.

Ce que l'outil ne fait pas (encore)

  • Il ne carve pas les enregistrements supprimés dans les pages libres ou les trames WAL périmées.
  • Il charge chaque base entièrement en mémoire : les très grosses collectes sont limitées par le navigateur.
  • Il a été construit sur le schéma documenté et sur des fichiers de test synthétiques ; validez les constats importants avec un second parseur comme WxTCmd. Voir comparatif des parseurs ActivitiesCache.db.

Articles liés

Articles liés

Comparatif honnête des parseurs Windows Timeline : WxTCmd, outils de kacos2000, Plaso, Velociraptor, requêtes SQL et ce parseur web, avec la gestion du WAL.
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.