Retour aux mises à jour
New releaseJul 14, 2026

hindsight v2026.06

Outil de criminalistique numérique pour navigateur Google Chrome, autres navigateurs basés sur Chromium, et Mozilla Firefox

Partager

Hindsight

Analyse forensic de l'historique Internet pour Google Chrome/Chromium et Mozilla Firefox

Hindsight est un outil gratuit d'analyse des artefacts web. Il a commencé par l'historique de navigation du navigateur Google Chrome, s'est étendu à la prise en charge d'autres applications basées sur Chromium, et analyse désormais également les profils Mozilla Firefox. Hindsight peut analyser un certain nombre de types d'artefacts web différents, notamment les URL, l'historique des téléchargements, les enregistrements de cache, les signets, les enregistrements de remplissage automatique, les mots de passe enregistrés, les préférences, les extensions de navigateur, les cookies HTTP et les enregistrements de stockage local (cookies HTML5). Une fois les données extraites de chaque fichier, elles sont corrélées avec les données d'autres fichiers d'historique et placées dans une chronologie.

Pour les profils Firefox, Hindsight analyse places.sqlite (visites d'historique, signets et téléchargements), cookies.sqlite et formhistory.sqlite. Sélectionnez « Firefox » dans l'interface graphique ou passez -b Firefox en ligne de commande, en pointant vers un répertoire de profil tel que \[userdir]\AppData\Roaming\Mozilla\Firefox\Profiles\<profile>.

Il dispose d'une interface web simple - pour la démarrer, exécutez « hindsight_gui.py » (ou sous Windows, le « hindsight_gui.exe » packagé) et visitez http://localhost:8080 dans un navigateur :

Le seul champ que vous êtes tenu de remplir est « Profile Path ». Il s'agit de l'emplacement du profil Chrome que vous souhaitez analyser (les chemins de profil par défaut pour les différents OS sont listés en bas de cette page). Cliquez sur « Run » et vous serez redirigé vers la page de résultats où vous pourrez enregistrer les résultats dans un tableur (ou d'autres formats).

Installation manuelle

Pour installer Hindsight (à la fois l'outil en ligne de commande et l'interface web), faites :

pip install pyhindsight
pip install git+https://github.com/cclgroupltd/ccl_chromium_reader.git

Si vous souhaitez utiliser la fonctionnalité « View SQLite DB in Browser » dans l'interface web de Hindsight, vous devrez exécuter une autre commande d'installation :

curl -sSL https://raw.githubusercontent.com/RyanDFIR/hindsight/main/install-js.sh | sh

Ligne de commande

Il existe également une version en ligne de commande de Hindsight - hindsight.py ou hindsight.exe. Le guide d'utilisation dans le dossier documentation couvre de nombreux sujets, mais les informations ci-dessous devraient vous permettre de démarrer avec la version en ligne de commande :

Exemple d'utilisation : > C:\hindsight.py -i "C:\Users\Ryan\AppData\Local\Google\Chrome\User Data\Default" -o test_case

Options de la ligne de commande :

OptionDescription
-i or --inputChemin vers un profil de navigateur, ou un répertoire parent dans lequel rechercher récursivement les profils
-o or --outputNom du fichier de sortie (sans extension)
-f or --formatFormat de sortie (par défaut XLSX, autres options : SQLite et JSONL)
-c or --cacheChemin vers le répertoire de cache ; nécessaire uniquement si le répertoire est en dehors du répertoire « input » donné. Les systèmes Mac sont configurés ainsi par défaut.
-b or --browser_typeForce un navigateur pour chaque profil : Chrome, Edge, Brave, Vivaldi, Firefox ou Tor (insensible à la casse ; Chromium est un alias pour Chrome). Omettre pour détecter automatiquement chaque profil.
-l or --logEmplacement dans lequel Hindsight doit journaliser (ajouté à la suite si le fichier existe)
--log-levelNiveau de détail à écrire dans le journal : debug, info (par défaut), warning ou error. Utilisez debug lors du signalement d'un bug
-h or --helpAffiche ces options et les emplacements par défaut des données Chrome
-t or --timezoneFuseau horaire d'affichage pour les horodatages dans la sortie XLSX
--only or --artifactsN'analyser que ces artefacts (séparés par des virgules ; répétable)
--skip or --excludeAnalyser tout sauf ces artefacts (séparés par des virgules ; répétable)
--list-artifactsAffiche les noms d'artefacts acceptés par --only et --skip, puis quitte

Lorsque l'entrée contient des profils de plusieurs navigateurs, omettez --browser_type pour laisser Hindsight détecter chaque profil séparément. N'utilisez la substitution que lorsque vous avez l'intention de traiter chaque profil découvert comme le navigateur spécifié.

Sélection des artefacts à analyser

Par défaut, Hindsight analyse chaque artefact qu'il trouve. --only et --skip restreignent ce périmètre, ce qui est utile pour un triage rapide et pour ignorer le cache lorsqu'il est volumineux et non pertinent pour la question posée.

hindsight.py -i <profile> --only history,downloads
hindsight.py -i <profile> --skip cache
hindsight.py -i <profile> --only user-activity --skip sessions

Les noms d'artefacts sont neutres vis-à-vis du navigateur : history sélectionne les enregistrements d'URL History de Chrome et les enregistrements d'URL places.sqlite de Firefox, de sorte que la même commande fonctionne sur l'un ou l'autre. Les noms sont insensibles à la casse, et les espaces, traits de soulignement et traits d'union sont interchangeables (local-storage, local_storage et "Local Storage" sont le même nom).

Les noms de groupes peuvent être utilisés partout où un nom d'artefact peut l'être, et sélectionnent tout ce qui se trouve en dessous : user-activity, website-storage, browser-extensions, configuration, plus caches (chaque artefact de cache) et all. --only et --skip peuvent être combinés, --skip restreignant davantage --only.

Exécutez hindsight.py --list-artifacts pour obtenir la liste complète avec les descriptions et les alias.

Un artefact exclu par un filtre est signalé comme [ skipped ] pendant l'exécution et noté dans le journal, de sorte qu'un rapport qui omet un artefact reste distinguable d'un profil qui ne l'a jamais eu. Un nom non reconnu est une erreur plutôt que d'être ignoré, de sorte qu'une faute de frappe ne peut pas produire silencieusement un rapport couvrant les mauvais artefacts.

Notez que la détection de version lit toujours les schémas de base de données du profil, donc le filtrage ne change pas la version de navigateur détectée.

Chemins de profil par défaut

Les emplacements par défaut du dossier de profil par défaut de Chrome sont :

  • WinXP: [userdir]\Local Settings\Application Data\Google\Chrome\User Data\Default
  • Vista/7/8/10: [userdir]\AppData\Local\Google\Chrome\User Data\Default
  • Linux: [userdir]/.config/google-chrome/Default
  • OS X: [userdir]/Library/Application Support/Google/Chrome/Default
  • iOS: \Applications\com.google.chrome.ios\Library\Application Support\Google\Chrome\Default
  • Android: /userdata/data/com.android.chrome/app_chrome/Default
  • CrOS: \home\user\<GUID>

Demandes de fonctionnalités

Veuillez ouvrir un ticket si vous avez une idée de nouvelle fonctionnalité (ou si vous avez repéré quelque chose de cassé).

Contribution

Voir CONTRIBUTING.md pour savoir comment configurer, exécuter les deux suites de tests, et obtenir le corpus de profils de navigateur que les tests de bout en bout analysent.

Catégories