
Extraia automaticamente a linha do tempo forense de um dump de memória volátil
Extraia automaticamente linha do tempo forense de dumps de memória volátil.
O AutoTimeliner executa múltiplos plugins do Volatility3 em imagens de memória Windows, Linux e macOS e depois mescla suas saídas em uma única linha do tempo CSV, ordenada:
| Plugin | O que captura |
|---|---|
timeliner | Eventos de timestamp entre plugins (todas as famílias de SO quando suportado) |
| Plugin | O que captura |
|---|---|
timeliner | Timestamps de processos, registro, handles, etc. |
mftscan | Entradas de arquivo MFT encontradas na memória |
shellbags | Histórico de acesso a pastas de usuário a partir de hives do registro |
| Plugin | O que captura |
|---|---|
linux.pslist | Contexto de linha do tempo de início/término de processos |
linux.bash | Evidências de histórico de comandos do shell |
linux.lsof | Evidências de arquivos abertos a partir de processos |
| Plugin | O que captura |
|---|---|
mac.pslist | Contexto de linha do tempo de início/término de processos |
mac.bash | Evidências de histórico de comandos do shell |
mac.lsof | Evidências de arquivos abertos a partir de processos |
| Plugin | O que captura |
|---|---|
psscan | Processos ativos, encerrados e ocultos com timestamps |
cmdline | Argumentos de linha de comando para cada processo |
userassist | Evidências de execução de programas a partir do registro do Windows |
| Plugin | O que captura |
|---|---|
netscan | Conexões de rede com timestamps de criação |
| Plugin | O que captura |
|---|---|
malfind | Injeção de código e regiões de memória suspeitas |
svcscan | Serviços do Windows (útil para detecção de persistência) |
| Plugin | O que captura |
|---|---|
dlllist | DLLs carregadas por cada processo |
filescan |
O AutoTimeliner identifica automaticamente a família da imagem de memória e ativa o conjunto de plugins apropriado para Windows, Linux ou macOS. Para inicialização mais rápida, você pode passar
--os-hintpara pular a detecção automática.
git clone https://github.com/andreafortuna/autotimeliner.git
cd autotimeliner
poetry install
pip install .
autotimeliner -f IMAGEFILE [-t TIMEFRAME] [-o OUTPUT] [opções]
Extrair uma linha do tempo completa de uma única imagem:
autotimeliner -f TargetServer.raw
Filtrar para uma janela de tempo específica:
autotimeliner -f TargetServer.raw -t 2023-10-17..2023-10-21
Processar todos os arquivos .raw em um diretório, especificando caminho de saída:
autotimeliner -f './*.raw' -o /evidence/timeline.csv
Acelerar a inicialização quando você já sabe o SO do dump:
autotimeliner -f TargetServer.raw --os-hint windows
Usar valores de alias do macOS por conveniência:
autotimeliner -f MacbookCapture.mem --os-hint darwin
Executar apenas timeliner e shellbags (pular varredura MFT):
autotimeliner -f TargetServer.raw --skip-mftscan
Varredura forense completa (conjunto de plugins Windows + plugins estendidos opcionais):
autotimeliner -f TargetServer.raw --with-dlllist --with-filescan --with-handles --with-envars
Varredura rápida focada em malware:
autotimeliner -f TargetServer.raw --skip-timeliner --skip-mftscan --skip-shellbags
Coleta de linha do tempo focada em Linux (ativa automaticamente plugins linux):
autotimeliner -f UbuntuWorkstation.mem
Coleta de linha do tempo focada em macOS (ativa automaticamente plugins macOS):
autotimeliner -f MacbookCapture.mem
O CSV de saída possui as seguintes colunas:
O AutoTimeliner inclui diversas otimizações para reduzir o tempo de identificação:
--os-hint ignora completamente a sondagem automática de SO.linux, ubuntu, macos).path + size + mtime).Arquivo de cache:
~/.cache/autotimeliner/volatility3/.autotimeliner_profile_cache.json
Durante a detecção, os logs incluem progresso da sondagem e mensagens de resultado, como:
OS probe attempt: family=windows plugin=windows.info.Info
OS probe returned no rows: windows.info.Info
Memory image identification succeeded: os=linux profile=linux:... probe=linux.banners.Banners
Consulte docs/migration.md para uma comparação completa.
Principais mudanças:
-p / --customprofile está obsoleto — é ignorado silenciosamente.mftparser → mftscan — mesmos dados, novo nome do plugin.mactime agora é opcional — use --use-mactime para o fluxo de trabalho antigo de arquivo body.poetry install
poetry run pytest
MIT — veja LICENSE.
Andrea Fortuna — [email protected] — andreafortuna.org
| Arquivos abertos em memória no momento da aquisição |
handles | Handles abertos (arquivos, chaves de registro, mutexes) |
envars | Variáveis de ambiente para processos |
| Dependência | Versão | Notas |
|---|
| Python | ≥ 3.9 | |
| Volatility3 | ≥ 2.5 | instalado automaticamente via Poetry/pip |
| jsonschema | ≥ 4.0 | permite validação de esquema do Volatility3 e evita o aviso Dependency for validation unavailable: jsonschema |
| mactime | qualquer | opcional — necessário apenas para o modo legado --use-mactime |
| Flag | Descrição |
|---|
-f, --imagefile | Arquivo de dump de memória ou glob (ex.: '*.raw') |
-t, --timeframe | Filtrar para intervalo YYYY-MM-DD..YYYY-MM-DD |
-o, --output | Caminho do CSV de saída (padrão: <imagefile>-timeline.csv) |
--os-hint | Forçar família de SO da imagem (windows, linux, mac; aliases: win, macos, darwin) e pular auto-identificação |
--skip-timeliner | Pular o plugin timeliner |
--skip-mftscan | Pular o plugin mftscan |
--skip-shellbags | Pular o plugin shellbags |
--skip-psscan | Pular varredura de processos |
--skip-cmdline | Pular extração de linha de comando |
--skip-netscan | Pular varredura de conexões de rede |
--skip-userassist | Pular evidências de execução de programas |
--skip-svcscan | Pular varredura de serviços do Windows |
--skip-malfind | Pular detecção de malware/injeção |
--with-dlllist | Habilitar análise de DLL (lento) |
--with-filescan | Habilitar varredura de arquivos abertos (muitos registros) |
--with-handles | Habilitar varredura de handles (muitos registros) |
--with-envars | Habilitar extração de variáveis de ambiente |
--use-mactime | Modo legado: usar binário externo mactime |
-v, --verbose | Habilitar logging de depuração |
--version | Exibir versão e sair |
| Coluna | Descrição |
|---|
Timestamp (UTC) | Timestamp UTC ISO 8601 |
Source | Plugin que produziu o registro |
Description | Nome do arquivo, caminho, processo ou chave de registro |
Detail | Tipo de timestamp, usuário ou contexto extra |
Inode | Número de inode MFT (quando aplicável) |
UID / GID | Identificadores de usuário/grupo |
Size | Tamanho do arquivo em bytes |
Mode | String do modo do arquivo |