Torna agli aggiornamenti
New releaseJul 14, 2026

hindsight v2026.06

Strumento di analisi forense per browser Google Chrome, altri browser basati su Chromium e Mozilla Firefox

Condividi

Hindsight

Informatica forense della cronologia Internet per Google Chrome/Chromium e Mozilla Firefox

Hindsight è uno strumento gratuito per l'analisi degli artefatti web. È nato con la cronologia di navigazione del browser Google Chrome, si è ampliato per supportare altre applicazioni basate su Chromium e ora analizza anche i profili di Mozilla Firefox. Hindsight è in grado di analizzare diversi tipi di artefatti web, tra cui URL, cronologia dei download, record della cache, segnalibri, record di compilazione automatica, password salvate, preferenze, estensioni del browser, cookie HTTP e record di Local Storage (cookie HTML5). Una volta estratti i dati da ciascun file, questi vengono correlati con i dati degli altri file di cronologia e inseriti in una timeline.

Per i profili Firefox, Hindsight analizza places.sqlite (visite della cronologia, segnalibri e download), cookies.sqlite e formhistory.sqlite. Seleziona "Firefox" nella GUI oppure passa -b Firefox sulla riga di comando, indicando una directory di profilo come \[userdir]\AppData\Roaming\Mozilla\Firefox\Profiles\<profile>.

Dispone di una semplice interfaccia web: per avviarla, esegui "hindsight_gui.py" (o su Windows, l'eseguibile pacchettizzato "hindsight_gui.exe") e visita http://localhost:8080 in un browser:

L'unico campo obbligatorio da compilare è "Profile Path". È la posizione del profilo Chrome che vuoi analizzare (i percorsi predefiniti dei profili per i diversi sistemi operativi sono elencati in fondo a questa pagina). Clicca "Run" e verrai portato alla pagina dei risultati, dove potrai salvare i risultati in un foglio di calcolo (o in altri formati).

Installazione manuale

Per installare Hindsight (sia lo strumento da riga di comando sia l'interfaccia web), esegui:

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

Se desideri utilizzare la funzione "View SQLite DB in Browser" nell'interfaccia web di Hindsight, dovrai eseguire un altro comando di installazione:

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

Riga di comando

Esiste anche una versione da riga di comando di Hindsight: hindsight.py o hindsight.exe. La guida utente nella cartella della documentazione copre molti argomenti, ma le informazioni seguenti dovrebbero essere sufficienti per iniziare con la versione da riga di comando:

Esempio di utilizzo: > C:\hindsight.py -i "C:\Users\Ryan\AppData\Local\Google\Chrome\User Data\Default" -o test_case

Opzioni della riga di comando:

OpzioneDescrizione
-i o --inputPercorso di un profilo del browser, o di una directory padre in cui cercare ricorsivamente i profili
-o o --outputNome del file di output (senza estensione)
-f o --formatFormato di output (predefinito XLSX, altre opzioni sono SQLite e JSONL)
-c o --cachePercorso della directory della cache; necessario solo se la directory è esterna alla directory "input" specificata. I sistemi Mac sono configurati in questo modo per impostazione predefinita.
-b o --browser_typeForza un browser per ogni profilo: Chrome, Edge, Brave, Vivaldi, Firefox o Tor (senza distinzione tra maiuscole e minuscole; Chromium è un alias di Chrome). Ometti per rilevare automaticamente ogni profilo.
-l o --logPosizione in cui Hindsight deve scrivere il log (verrà accodato se esiste)
--log-levelLivello di dettaglio da scrivere nel log: debug, info (predefinito), warning o error. Usa debug quando segnali un bug
-h o --helpMostra queste opzioni e le posizioni predefinite dei dati di Chrome
-t o --timezoneFuso orario da visualizzare per i timestamp nell'output XLSX
--only o --artifactsAnalizza solo questi artefatti (separati da virgola; ripetibile)
--skip o --excludeAnalizza tutto tranne questi artefatti (separati da virgola; ripetibile)
--list-artifactsStampa i nomi degli artefatti accettati da --only e --skip, quindi esce

Quando l'input contiene profili di più browser, ometti --browser_type per lasciare che Hindsight rilevi ogni profilo separatamente. Usa l'override solo quando intendi trattare ogni profilo individuato come il browser specificato.

Selezione degli artefatti da analizzare

Per impostazione predefinita, Hindsight analizza ogni artefatto che trova. --only e --skip restringono la selezione, il che è utile per il triage rapido e per saltare la cache quando è grande e non pertinente alla domanda in esame.

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

I nomi degli artefatti sono neutri rispetto al browser: history seleziona i record URL History di Chrome e i record URL di places.sqlite di Firefox, quindi lo stesso comando funziona su entrambi. I nomi non distinguono tra maiuscole e minuscole, e spazi, underscore e trattini sono intercambiabili (local-storage, local_storage e "Local Storage" sono lo stesso nome).

I nomi dei gruppi possono essere usati ovunque sia possibile usare un nome di artefatto, e selezionano tutto ciò che è contenuto in essi: user-activity, website-storage, browser-extensions, configuration, più caches (ogni artefatto della cache) e all. --only e --skip possono essere combinati, con --skip che restringe ulteriormente --only.

Esegui hindsight.py --list-artifacts per l'elenco completo con descrizioni e alias.

Un artefatto escluso da un filtro viene segnalato come [ skipped ] durante l'esecuzione e annotato nel log, così un report che omette un artefatto resta distinguibile da un profilo che non lo ha mai avuto. Un nome non riconosciuto è un errore anziché essere ignorato, così un refuso non può produrre silenziosamente un report che copre gli artefatti sbagliati.

Nota che il rilevamento della versione legge comunque gli schemi del database del profilo, quindi il filtraggio non modifica la versione del browser rilevata.

Percorsi predefiniti dei profili

Le posizioni predefinite della cartella del profilo Chrome sono:

  • 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>

Richieste di funzionalità

Se hai un'idea per una nuova funzionalità (o hai notato qualcosa che non funziona), apri una issue.

Contribuire

Consulta CONTRIBUTING.md per scoprire come configurare, eseguire le due suite di test e ottenere il corpus di profili browser che i test end-to-end analizzano.

Categorie