
Extrair e descriptografar dados do navegador, suportando vários tipos de dados, executável em diversos sistemas operacionais (macOS, Windows, Linux).
HackBrowserData é uma ferramenta de linha de comando para descriptografar e exportar dados do navegador (senhas, histórico, cookies, favoritos, cartões de crédito, histórico de downloads, localStorage, sessionStorage e extensões) a partir do navegador. Ela suporta os navegadores baseados em Chromium mais populares e o Firefox no Windows, macOS e Linux, além do Safari no macOS.
Também pode descriptografar dados entre máquinas e sistemas operacionais: exporte as chaves mestras no host de origem, depois descriptografe uma cópia dos dados offline em qualquer outro host — mesmo para um navegador que o sistema operacional do host analista não pode executar (veja Descriptografia entre hosts).
Aviso: Esta ferramenta destina-se apenas à pesquisa de segurança. Os usuários são responsáveis por todas as responsabilidades legais e relacionadas decorrentes do uso desta ferramenta. O autor original não assume qualquer responsabilidade legal.
No macOS, alguns navegadores baseados em Chromium exigem uma senha de usuário atual para descriptografar.
A descriptografia de senhas pode falhar no macOS 26.4 ou posterior.
¹ Safari requer Acesso Total ao Disco; ative-o em Ajustes do Sistema → Privacidade e Segurança → Acesso Total ao Disco se a extração retornar resultados vazios.
² No Windows, para descriptografar cookies do Chromium 127+ (Chrome / Chrome Beta / Edge / Brave / CocCoc) é necessário o payload App-Bound Encryption compilado via
make build-windows— veja Compilando a partir do código-fonte abaixo.³ Estes navegadores vêm apenas para Windows, mas seus dados são descriptografáveis em qualquer SO: colete os arquivos com
archive, exporte as chaves comdumpkeys, depois descriptografe no macOS ou Linux comrestore— veja Descriptografia entre hosts.
A instalação do HackBrowserData é extremamente simples, basta baixar o release para seu sistema e executar o binário.
Em algumas situações, esta ferramenta de segurança será tratada como vírus pelo Windows Defender ou outros antivírus e não poderá ser executada. O código é totalmente open source, você pode modificá-lo e compilá-lo por conta própria.
Requer Go 1.20+.```bash
git clone https://github.com/moonD4rk/HackBrowserData
cd HackBrowserData
go build ./cmd/hack-browser-data/
#### Compilação multiplataforma```bash
# For Windows (standard build, no Chromium 127+ ABE cookie support)
GOOS=windows GOARCH=amd64 go build ./cmd/hack-browser-data/
# For Linux
GOOS=linux GOARCH=amd64 go build ./cmd/hack-browser-data/
Chrome / Chrome Beta / Edge / Brave / CocCoc 127+ protegem cookies com App-Bound Encryption. Descriptografar esses cookies requer um pequeno payload em C — Zig (0.13+) é o toolchain C recomendado (o Makefile chama zig cc). MinGW-w64 gcc também pode compilar as fontes manualmente se você pular o make payload.```bash
brew install zig # macOS scoop install zig # Windows (scoop)
make payload
make build-windows
O `hack-browser-data.exe` resultante inclui descriptografia completa de cookies ABE no Chromium 127+.
## Uso```
$ hack-browser-data -h
hack-browser-data decrypts and exports browser data from Chromium-based
browsers and Firefox on Windows, macOS, and Linux.
GitHub: https://github.com/moonD4rk/HackBrowserData
Usage:
hack-browser-data [flags]
hack-browser-data [command]
Available Commands:
archive Pack decryption-relevant profile files into a zip for cross-host restore
dump Extract and decrypt browser data (default command)
dumpkeys Export Chromium master keys as JSON for cross-host decryption
help Help about any command
list List detected browsers and profiles
restore Decrypt copied profile data using exported master keys
version Print version information
Flags:
-b, --browser string target browser: all|chrome|firefox|edge|... (default "all")
-c, --category string data categories (comma-separated): all|password,cookie,... (default "all")
-d, --dir string output directory (default "results")
-f, --format string output format: csv|json|cookie-editor (default "json")
-h, --help help for hack-browser-data
--keychain-pw string macOS keychain password
-p, --profile-path string custom profile dir path, get with chrome://version
-v, --verbose enable debug logging
--zip compress output to zip
Use "hack-browser-data [command] --help" for more information about a command.
dump - Extrair e descriptografar dados do navegador (padrão)Executar hack-browser-data sem um subcomando usa dump como padrão.
--format cookie-editorescreve apenas cookies, como uma matriz JSON correspondente ao formato de importação da extensão Cookie-Editor do navegador; categorias que não são de cookies são ignoradas.
Descriptografe dados do navegador em um host analista que foram coletados em um host de origem diferente — incluindo um navegador cujo motor o SO do analista nem sequer consegue instalar (por exemplo, descriptografar dados do Sogou ou QQ Browser no macOS). Nada vinculado à plataforma (DPAPI, macOS Keychain, Chrome App-Bound Encryption) precisa sair da origem: as chaves mestras são exportadas uma vez, e a descriptografia então é executada inteiramente offline a partir de uma cópia dos dados.
O fluxo de trabalho usa três comandos e dois artefatos transportáveis:
hack-browser-data dumpkeys -o keys.json hack-browser-data archive -o browser-data.zip
hack-browser-data restore --keys keys.json --data-zip browser-data.zip
> `keys.json` contém chaves mestras em texto simples — trate-o como um segredo. `dumpkeys -o` grava-o com permissões `0600`; prefira transmiti-lo por um canal seguro em vez de deixá-lo no disco.
#### `dumpkeys` - Exportar chaves mestras para descriptografia entre hosts
Deriva as chaves mestras de cada instalação do Chromium no host de origem e as escreve como JSON (Firefox/Safari não têm chave portátil e são ignorados). O padrão é stdout para que possa ser canalizado via SSH.
| Flag | Short | Default | Description |
|-----------------|-------|----------|-------------------------------------------------|
| `--browser` | `-b` | `all` | Navegador alvo (all\|chrome\|edge\|...) |
| `--output` | `-o` | *stdout* | Arquivo de saída (escrito `0600`); stdout se omitido |
| `--keychain-pw` | | | Senha do keychain do macOS |
#### `archive` - Empacotar arquivos relevantes para descriptografia para transporte
Coleta apenas os arquivos que uma restauração realmente precisa (cookies, dados de login, histórico, …) através do mesmo bypass de arquivos bloqueados usado para extração, para que arquivos SQLite ativos sejam lidos com segurança no Windows. O zip é organizado como `<browser-key>/<User Data layout>`, então um único arquivo pode conter vários navegadores e a restauração permanece inequívoca. Os nomes das entradas são sempre com barra normal, para que um arquivo produzido no Windows possa ser restaurado no macOS/Linux.
| Flag | Short | Default | Description |
|--------------|-------|--------------------|-----------------------------------------|
| `--browser` | `-b` | `all` | Navegador alvo (all\|chrome\|edge\|...) |
| `--category` | `-c` | `all` | Categorias de dados, separadas por vírgula |
| `--output` | `-o` | `browser-data.zip` | Caminho do arquivo de saída |
#### `restore` - Descriptografar dados copiados com chaves exportadas
Reconstrói cada engine Chromium diretamente de `keys.json` e descriptografa os dados fornecidos — nunca consulta a tabela local do navegador do analista, portanto **os navegadores que você pode restaurar são exatamente os cofres no seu `keys.json`**. Forneça os dados de uma das duas maneiras (exatamente uma é necessária):
- `--data-zip` — um zip produzido por `archive`; extraído para um diretório temporário e removido depois.
- `--data-dir` — um diretório. Seja o layout de `archive` (`<browser-key>/...`, vários navegadores de uma vez), ou a raiz `User Data` copiada manualmente de um navegador, que é inequívoca apenas para um único navegador — então combine com `-b`.
`-b` é um **filtro opcional** sobre os cofres do dump, não um seletor obrigatório.
| Flag | Short | Default | Description |
|--------------|-------|------------|------------------------------------------------------------|
| `--keys` | | *required* | Arquivo de chaves de `dumpkeys` (use `-` para stdin) |
| `--data-zip` | | | Zip de `archive` (mutuamente exclusivo com `--data-dir`) |
| `--data-dir` | | | Diretório de dados copiados (mutuamente exclusivo com `--data-zip`) |
| `--browser` | `-b` | | Restaurar apenas este navegador; deve corresponder a um cofre em `--keys` |
| `--category` | `-c` | `all` | Categorias de dados, separadas por vírgula |
| `--format` | `-f` | `json` | Formato de saída (csv\|json\|cookie-editor) |
| `--dir` | `-d` | `results` | Diretório de saída |
| `--zip` | | `false` | Comprimir saída para zip |
#### Exemplos entre hosts```bash
# Stream keys over SSH (no keys.json on disk), data copied separately
ssh origin "hack-browser-data dumpkeys" | \
hack-browser-data restore --keys - --data-zip browser-data.zip
# Restore one browser from a hand-copied User Data folder (no archive)
hack-browser-data restore --keys keys.json --data-dir ./chrome-userdata -b chrome
list - Listar navegadores e perfis detectados| Flag | Padrão | Descrição |
|---|---|---|
--detail | false | Mostrar contagens de entradas por categoria |
version - Imprimir informações da versão```bashhack-browser-data version
### Flags globais
| Flag | Short | Descrição |
|-------------|-------|----------------------|
| `--verbose` | `-v` | Ativar log de depuração |
### Exemplos```bash
# Extract all data from all browsers (default)
hack-browser-data
# Extract specific browser and categories
hack-browser-data dump -b chrome -c password,cookie
# Export in CSV format to a custom directory (JSON is the default)
hack-browser-data dump -b chrome -f csv -d output
# Export cookies in CookieEditor format
hack-browser-data dump -f cookie-editor
# Compress output to zip
hack-browser-data dump --zip
# List detected browsers and profiles
hack-browser-data list
# List with per-category entry counts
hack-browser-data list --detail
# Use custom profile path
hack-browser-data dump -b chrome -p "/path/to/User Data/Default"
Aceitamos e agradecemos qualquer contribuição feita pela comunidade (issues/pull requests do GitHub, feedback por e-mail, etc.).
Por favor, consulte o Guia de Contribuição antes de contribuir.
O HackBrowserData faz parte do 404Team StarLink-Galaxy. Se você tiver alguma dúvida sobre o HackBrowserData ou quiser encontrar um parceiro para se comunicar, consulte o grupo Starlink.

O HackBrowserData foi desenvolvido com a IDE GoLand sob a(s) licença(s) gratuita(s) do JetBrains Open Source concedida(s) pela JetBrains s.r.o., por isso gostaria de expressar meus agradecimentos aqui.
| Categoria | Baseados em Chromium | Firefox | Safari |
|---|
| Senha | ✅ | ✅ | ✅ |
| Cookie | ✅ | ✅ | ✅ |
| Favorito | ✅ | ✅ | ✅ |
| Histórico | ✅ | ✅ | ✅ |
| Download | ✅ | ✅ | ✅ |
| Cartão de Crédito | ✅ | - | - |
| Extensão | ✅ | ✅ | ✅ |
| LocalStorage | ✅ | ✅ | ✅ |
| SessionStorage | ✅ | - | - |
| Navegador | Windows | macOS | Linux |
|---|
| Chrome | ✅² | ✅ | ✅ |
| Chrome Beta | ✅² | ✅ | ✅ |
| Chromium | ✅ | ✅ | ✅ |
| Edge | ✅² | ✅ | ✅ |
| Brave | ✅² | ✅ | ✅ |
| Opera | ✅ | ✅ | ✅ |
| OperaGX | ✅ | ✅ | - |
| Vivaldi | ✅ | ✅ | ✅ |
| Yandex | ✅ | ✅ | - |
| CocCoc | ✅² | ✅ | - |
| Arc | ✅ | ✅ | - |
| DuckDuckGo³ | ✅ | - | - |
| QQ³ | ✅ | - | - |
| 360 ChromeX³ | ✅ | - | - |
| 360 Chrome³ | ✅ | - | - |
| DC Browser³ | ✅ | - | - |
| Sogou Explorer³ | ✅ | - | - |
| Firefox | ✅ | ✅ | ✅ |
| Safari¹ | - | ✅ | - |
| Flag | Short | Default | Description |
|---|
--browser | -b | all | Navegador alvo (all|chrome|firefox|edge|...) |
--category | -c | all | Categorias de dados, separadas por vírgula (all|password|cookie|bookmark|history|download|creditcard|extension|localstorage|sessionstorage) |
--format | -f | json | Formato de saída (csv|json|cookie-editor) |
--dir | -d | results | Diretório de saída |
--profile-path | -p | Caminho personalizado do diretório de perfil, obtido com chrome://version | |
--keychain-pw | Senha do keychain do macOS | ||
--zip | false | Comprimir saída para zip |
| Passo | Host | Comando | Produz |
|---|
| 1 | origem | dumpkeys | keys.json — chaves mestras portáteis |
| 2 | origem | archive | browser-data.zip — apenas os arquivos necessários para descriptografar |
| 3 | analista | restore | saída descriptografada (csv / json / cookie-editor) |
Roger |
Aquilao Official |
uinfziuna8n |
Cyrus |
stevenlele |
Carlo Mandelli |
slimwang |
zznQ |
YuXJ |
mirefly |
LC |
zhe6652 |
guoguangwu |
beichen |
Santiago Ramirez |
Ciprian Conache |
a-urth |
Amir. |