An open API service indexing awesome lists of open source software.

https://github.com/devzinh/ghosttrace

Windows forensic scanner. Finds what "Uninstall" leaves behind.
https://github.com/devzinh/ghosttrace

blue-team cli dfir forensics-tools malware-analysis mitre-attack security-tools software windows windows-forensics

Last synced: about 19 hours ago
JSON representation

Windows forensic scanner. Finds what "Uninstall" leaves behind.

Awesome Lists containing this project

README

          

# GhostTrace

![GhostTrace Hero](assets/readme/hero.svg)


Por que GhostTrace
Fluxo
Uso rapido
Cobertura
Seguranca


Platform
Runtime
Interface
Mode

---

Voce clicou em *Desinstalar*, o Windows confirmou e o programa sumiu da lista.
So que ele ainda deixou rastro: chave de registro, pasta em AppData, entrada de
prefetch, tarefa agendada, binding no WMI. As coisas de sempre.

GhostTrace varre essas areas de uma vez e te mostra o que sobrou numa tabela
unica. Sao 22 modulos forenses rodando numa passada, com remocao opcional e
read-only por padrao.

---

## Demo

![GhostTrace em acao](assets/readme/demo.gif)

---

## Download



Download latest release

| Arquivo | Descricao |
| --- | --- |
| `GhostTrace--x64.msi` | Instalador Windows x64 |

> Requer Windows 10/11 x64, .NET 10 e execucao como Administrador.
> O idioma e detectado pelo sistema, com fallback para ingles.

---

## Por que GhostTrace

A maioria dos scanners cai num de dois extremos: ou e caro demais, ou despeja
um log de milhares de linhas e te deixa para interpretar sozinho. A ideia aqui
foi ficar no meio do caminho.

- **Rapido** — varias tecnicas forenses numa unica varredura, sem etapas
manuais entre elas.
- **Legivel** — o resultado vem numa tabela so, organizado por categoria.
- **Conservador** — read-only por padrao. Nada e removido enquanto voce nao
confirmar explicitamente.
- **Auditavel** — toda limpeza gera um log do que foi removido.
- **Offline** — sem telemetria e sem nenhuma chamada de rede. Roda inteiro na
sua maquina.

---

## Fluxo da investigacao

![Fluxo de investigacao](assets/readme/workflow.svg)

O caminho tipico de uma investigacao por alvo:

```text
voce informa um alvo (ex.: "nvidia")
GhostTrace:
-> dispara os 22 modulos forenses
-> consolida os achados numa tabela unica
-> pergunta se voce quer limpar
se sim: pede confirmacao, remove e gera o log
se nao: devolve os dados e encerra
-> opcional: exporta um relatorio em TXT
```

---

## Instalacao e uso rapido

```text
GhostTrace.CLI # menu interativo (requer admin)
GhostTrace.CLI scan --name nvidia # busca por alvo, limpeza opcional
GhostTrace.CLI scan --name nvidia --quiet --output C:\Cases\Host1
GhostTrace.CLI scan # triagem completa, sem filtro
GhostTrace.CLI scan-fs-json
GhostTrace.CLI scan-reg-json
GhostTrace.CLI scan-evt-json
```

O UAC e necessario porque varios desses artefatos ficam em areas do sistema
que o Windows nao expoe ao usuario comum.

Para forcar um idioma especifico:

```text
GhostTrace.CLI --lang es
GhostTrace.CLI scan --name nvidia --lang en
```

---

## Cobertura forense

![Cobertura de modulos](assets/readme/modules.svg)

Sao 22 modulos, cada um cobrindo um tipo de artefato. Eles estao agrupados pela
fase da investigacao a que pertencem.

### Persistencia (MITRE ATT&CK TA0003)

Mecanismos que fazem algo voltar a rodar quando o Windows inicia.

| Modulo | O que investiga |
| --- | --- |
| `PersistenceScanModule` | Chaves Run/RunOnce + pastas Startup |
| `ServicesScanModule` | Servicos e drivers com ImagePath suspeito (T1543.003) |
| `AsepScanModule` | Winlogon, IFEO debugger, AppInit_DLLs, LSA packages, Active Setup |
| `ScheduledTasksScanModule` | Tarefas agendadas via COM API do Task Scheduler |
| `TaskCacheScanModule` | Anomalias em TaskCache\Tree, incluindo Ghost Tasks (T1053.005) |
| `WmiPersistenceScanModule` | __EventFilter, __EventConsumer e binding (T1546.003) |

### Evidencia de execucao (TA0002)

Rastros de que algo ja foi executado, mesmo que o programa nao esteja mais instalado.

| Modulo | O que investiga |
| --- | --- |
| `ShimcacheScanModule` | AppCompatCache (formato 10ts para Win8.1/10/11) |
| `PrefetchScanModule` | Arquivos .pf com decode XPRESS-Huffman (versoes 26/30/31) |
| `BamScanModule` | BAM/DAM com ultimo tempo de execucao por SID |
| `UserAssistScanModule` | Lancamentos GUI com contagem e ultimo run (ROT13) |
| `MuiCacheScanModule` | MUICache do shell e nomes amigaveis embutidos |

### Atividade do usuario e artefatos de sistema

O que aconteceu no uso cotidiano da maquina.

| Modulo | O que investiga |
| --- | --- |
| `PowerShellHistoryScanModule` | Historico PSReadLine e sinais de download cradle/payload encoded (T1059.001) |
| `RdpConnectionScanModule` | Historico de conexoes RDP de saida e pistas de usuario (T1021.001) |
| `RecentDocsScanModule` | Arquivos/pastas recentes por usuario (Explorer RecentDocs) |
| `UsbDeviceScanModule` | Historico de dispositivos removiveis via USBSTOR (T1052/T1091) |
| `NetworkArtifactsScanModule` | Redirecionamentos no hosts e redes conectadas com datas |

### Software instalado e residuos em disco

Programas que constam (ou nao) como instalados e o que ficou para tras.

| Modulo | O que investiga |
| --- | --- |
| `UninstallEntriesScanModule` | Programas instalados, versao, publisher, local e uninstall string |
| `StartupApprovedScanModule` | Estado habilitado/desabilitado de entradas de inicializacao |
| `FileSystemTraceScanModule` | Busca orientada por nome em Program Files, ProgramData e AppData |

### Coletores direcionados (per-target)

Voce aponta o alvo e estes modulos coletam os metadados correspondentes.

| Modulo | O que investiga |
| --- | --- |
| `FilesystemScanModule` | Metadados de arquivos sob um diretorio |
| `RegistryScanModule` | Valores sob uma chave de registro |
| `EventLogScanModule` | Entradas recentes de logs Application/System |

---

## Seguranca forense

Algumas garantias de design, para que a ferramenta nao destrua evidencia nem
remova nada por engano:

- **Scan read-only** — a varredura nao altera nada no sistema.
- **Limpeza so com confirmacao** — a remocao exige que voce escreva SIM. Nao ha
confirmacao implicita.
- **Evidencia preservada** — caches de execucao e historicos ficam de fora da
limpeza para nao destruir o rastro.
- **Sem rede** — nenhuma chamada externa, nenhuma telemetria.
- **Sinal nao e veredito** — um indicador suspeito e um ponto de partida para
analise, nao uma conclusao automatica. A decisao final e sua.

---

## Idiomas (i18n)

O idioma e detectado a partir do sistema. Se houver suporte, a interface ja abre
nele; caso contrario, cai para o ingles.

Disponiveis:

- English (en-US)
- Portugues Brasil (pt-BR)
- Espanol (es-ES)

---

## Playbooks e documentacao

- [Scheduled Tasks Correlation Playbook](docs/playbooks/scheduled-tasks-correlation.md) — correlacao de Ghost Tasks e manipulacao em registro.

---

## License

This project is licensed under the MIT License. See the `LICENSE` file for details.