
Ferramenta de reconhecimento OSINT para descoberta de rede, enumeração de subdomínios, enriquecimento de IPs e detecção de segredos via logs de certificados, Shodan e busca em código do GitHub—tudo sem chaves de API.
<p align="center">
<img alt="Metabigor" src="https://assets.kitploit.com/production/public/readmes/2602/a91acb0c74fbed7b623c138dcc568e51b46b54c20992493fa0be6f3dea3d9c1d.png" height="140" />
<br />
<strong>Metabigor - poder de OSINT sem a complicação de chaves de API</strong>
<p align="center">
<a href="https://docs.osmedeus.org/donation/"><img src="https://img.shields.io/badge/Sponsors-0078D4?style=for-the-badge&logo=GitHub-Sponsors&logoColor=39ff14&labelColor=black&color=black"></a>
<a href="https://twitter.com/OsmedeusEngine"><img src="https://img.shields.io/badge/@OsmedeusEngine-0078D4?style=for-the-badge&logo=Twitter&logoColor=39ff14&labelColor=black&color=black"></a>
<a href="https://github.com/j3ssie/osmedeus/releases"><img src="https://img.shields.io/github/release/j3ssie/metabigor?style=for-the-badge&labelColor=black&color=2fc414&logo=Github"></a>
</p>
</p>
***
## O que é o Metabigor?
O Metabigor mapeia a infraestrutura de um alvo sem exigir que você se registre para obter uma única chave de API.
Faixas de rede, certificados, domínios relacionados, portas expostas, fornecedores de CDN e vazamentos de código - tudo
proveniente de fontes gratuitas, tudo encadeável entre si.
## Recursos
- **Descoberta de Rede** - encontre faixas de IP (CIDRs) a partir de um ASN, organização, domínio ou IP
- **Transparência de Certificados** - descubra subdomínios via crt.sh
- **Enriquecimento de IP** - portas, hostnames e CVEs via Shodan InternetDB (gratuito, sem chave)
- **Pesquisa de Código no GitHub** - encontre segredos, credenciais e subdomínios em repositórios públicos via grep.app
- **Agrupamento de IPs** - agrupe IPs por ASN para mapear infraestrutura
- **Domínios Relacionados** - pivote via logs de certificados, WHOIS reverso e IDs de analytics
- **Detecção de CDN/WAF** - separe endereços protegidos de origens candidatas
- **Coleta de URLs** - todas as URLs que os arquivos web já viram, incluindo endpoints extraídos de WARCs
## Instalação
```bash
npm install -g @j3ssie/metabigor # macOS, Linux, Windows
brew install j3ssie/tap/metabigor # macOS, Linux
```
Ambos trazem o mesmo binário pré-compilado para a sua plataforma - nenhuma toolchain Go é necessária.
Ou compile a partir do código-fonte:
```bash
git clone https://github.com/j3ssie/metabigor.git
cd metabigor
make build # binary at ./bin/metabigor
```
Ou baixe um binário na [página de releases](https://github.com/j3ssie/metabigor/releases).
## O tour de 30 segundos
```bash
metabigor net AS13335 # network ranges behind an ASN
metabigor cert hackerone.com # subdomains from certificate logs
metabigor ip 1.1.1.1 # open ports and CVEs for an IP
metabigor related tesla.com # other domains the target owns
metabigor cdn --exclude -I ips.txt # candidate origin servers
```
## Como cada comando funciona
As mesmas convenções se aplicam em todos os lugares, então, quando você aprende um comando, você sabe usar todos.
### Quatro maneiras de passar alvos
```bash
metabigor cert example.com # as an argument
metabigor cert example.com tesla.com # several arguments
metabigor cert -i example.com # with -i
metabigor cert -I domains.txt # from a file, one per line (# comments are ignored)
cat domains.txt | metabigor cert # on stdin
```
Eles se combinam, e a lista mesclada é deduplicada:
```bash
metabigor cluster 1.1.1.1 -i 8.8.8.8 -I more-ips.txt
```
Argumentos são o caminho mais curto e funcionam em todos os comandos. Recorra a `-i` quando o alvo, de outra forma,
pareceria uma flag, ou quando um script montar o comando para você:
```bash
metabigor github -i "--endpoint-url"
metabigor net --input "$TARGET" -f json
```
O stdin só é lido quando nenhum alvo foi fornecido de outra forma, então `metabigor net AS13335` nunca fica bloqueado
esperando entrada dentro de um script ou job de CI.
### Uma única flag para o formato de saída
`-f/--format` funciona em todos os comandos:
| Formato | O que você obtém | Para que usar |
|---|---|---|
| `text` *(padrão)* | Colunas legíveis | Leitura em um terminal |
| `flat` | Apenas o valor primário | Enviar via pipe para outras ferramentas |
| `json` | Um objeto JSON por linha | `jq`, automação |
| `csv` | Linhas sob um único cabeçalho | Planilhas, relatórios |
```bash
metabigor ip 1.1.1.0/28 # 1.1.1.1 | 80,443 | one.one.one.one
metabigor ip 1.1.1.0/28 -f flat # 1.1.1.1:80
metabigor ip 1.1.1.0/28 -f json # {"ip":"1.1.1.1","ports":[80,443],...}
metabigor ip 1.1.1.0/28 -f csv -o ports.csv
```
Os resultados sempre vão para o stdout e os logs sempre vão para o stderr, então os pipes ficam limpos em qualquer nível de log.
`-o` também grava os resultados em um arquivo, sobrescrevendo-o, a menos que você passe `--append`. O arquivo só é
reescrito quando há um resultado para gravar, então uma execução que falha ou não encontra nada deixa os resultados
anteriores intactos.
### Comandos se encadeiam
```bash
metabigor net AS13335 -f flat | metabigor ip -f flat
metabigor related tesla.com -f flat | metabigor cert
cat domains.txt | dnsx -silent -resp-only | metabigor cdn --exclude
```
## Comandos
### `net` - Descoberta de Rede
Encontra os CIDRs por trás de um ASN, IP, domínio ou organização. Usa o banco de dados offline incluído.
```bash
metabigor net AS13335 # every CIDR announced by an ASN
metabigor net 1.1.1.1 --detail # which ASN owns this IP
metabigor net --org Cloudflare # search by company name
metabigor net --live tesla.com # query live sources instead of the local DB
metabigor net -I asn-list.txt -f csv -o ranges.csv
```
O tipo de alvo é detectado automaticamente. Substitua-o com `--asn`, `--ip`, `--domain` ou `--org`
(mutuamente exclusivos). `--detail` adiciona colunas de ASN, organização e país.
### `cert` - Transparência de Certificados
```bash
metabigor cert hackerone.com # one domain per line
metabigor cert "HackerOne Inc" # search by organization
metabigor cert example.com --clean # strip the *. from wildcards
metabigor cert example.com --wildcard # only wildcard entries
metabigor cert example.com --detail # cert IDs, issuers, validity dates
metabigor cert tesla.com | dnsx -silent
```
### `ip` - Enriquecimento de IP (Shodan InternetDB)
```bash
metabigor ip 1.1.1.1 # ports, hostnames, CVEs
metabigor ip 1.1.1.0/28 # CIDRs expand to hosts
metabigor ip 1.1.1.0/28 -f flat # IP:PORT pairs
metabigor ip -I ips.txt -c 30 -f csv -o ports.csv
```
IPs sobre os quais o InternetDB não tem nenhuma informação são pulados; passe `--all` para mantê-los.
### `github` - Pesquisa de Código (grep.app)
```bash
metabigor github hackerone.com # repo and path per match
metabigor github tesla.com --subs # only subdomains found in matches
metabigor github "api_key=" --detail # show the matching code
metabigor github AKIA --pages 3 --detail
```
Requer Chrome ou Chromium - o grep.app responde a clientes HTTP simples com um desafio de bot.
As buscas são executadas uma de cada vez, independentemente de `-c`, para respeitar o limite de taxa do grep.app.
### `cluster` - Agrupamento de IPs
Agrupa IPs pelo ASN que os possui, do maior cluster para o menor. Aceita IPs ou CIDRs. Funciona offline.
```bash
cat ips.txt | metabigor cluster
metabigor cluster -I ips.txt -f csv -o clusters.csv
cat domains.txt | dnsx -silent -resp-only | metabigor cluster
```
### `related` - Descoberta de Domínios Relacionados
```bash
metabigor related hackerone.com # all sources
metabigor related tesla.com --sources crt
metabigor related tesla.com --sources crt,whois
```
Fontes: `crt` (crt.sh), `whois` (WHOIS reverso do viewdns.info), `analytics` (IDs compartilhados de Google
Analytics / Tag Manager) ou `all`. Os resultados são deduplicados entre as fontes e marcados com a fonte que os
encontrou primeiro.
### `url` - Coleta de URLs de Arquivos Web
```bash
metabigor url hackerone.com # every keyless source, subdomains included
metabigor url blog.hackerone.com --no-subs # one hostname only
metabigor url hackerone.com/reports # scope to a path prefix
metabigor url tesla.com --sources wayback,urlscan
metabigor url tesla.com --keywords '\.js(\?|$)' # JavaScript only
metabigor url tesla.com --blacklist default --no-params
metabigor url tesla.com -f flat | httpx
```
Fontes: `wayback`, `commoncrawl`, `otx`, `urlscan`, `ghostarchive`, além de `virustotal` e
`intelx` quando suas chaves estão definidas. As cinco fontes sem chave são executadas por padrão; as duas com
credenciais entram automaticamente quando `VT_API_KEY` / `INTELX_API_KEY` estão presentes no ambiente, e
`URLSCAN_API_KEY` aumenta o tamanho de página do urlscan. Nomear uma fonte com credencial sem a chave dela é um
erro, em vez de um pulo silencioso.
**Subdomínios são incluídos por padrão** - a consulta é `*.target`, e não `target`. Esta é a maior
alavanca individual sobre o quanto uma execução retorna; `--no-subs` reduz isso.
**O GhostArchive é minerado, não apenas listado.** Toda página arquivada também tem um WARC bruto, e um WARC
registra toda sub-requisição que o navegador fez ao capturar a página - chamadas XHR, endpoints JSON, URLs de
script construídas dinamicamente. Nada disso aparece em um índice CDX, que só indexa capturas da própria URL da
página. Em testes, 8 requisições contra `tesla.com` retornaram 147 URLs, incluindo endpoints JSON de API ao
vivo. Limite o custo com `--limit-requests`.
Os filtros estão desativados por padrão, então nada é descartado sem ser pedido. `--match-status` / `--filter-status`,
`--match-mime` / `--filter-mime`, `--from` / `--to` e `--keywords` são enviados às APIs do Wayback e do Common Crawl
no lado do servidor e verificados novamente localmente; `--blacklist` e `--no-params` são locais.
`--limit-requests` limita as requisições por fonte e `--limit-collections` define até onde pesquisar nas ~126
coleções de índice do Common Crawl (`0` para todas elas, de volta a 2008).
### `cdn` - Detecção de CDN/WAF
```bash
metabigor cdn 1.1.1.1 # vendor and type
cat ips.txt | metabigor cdn --exclude # candidate origins
cat ips.txt | metabigor cdn --only # only protected addresses
```
### `update` - Atualizar Bancos de Dados Locais
```bash
metabigor update
```
Atualiza os bancos de dados de IP-para-ASN e IP-para-país em `~/.metabigor`. Uma cópia acompanha o
binário e é descompactada no primeiro uso, então isso só é necessário para obter dados de roteamento mais recentes.
### `skills` - Habilidades para Agentes de Codificação
O Metabigor acompanha uma skill do [agentskills.io](https://agentskills.io) que ensina um agente de codificação
de IA (Claude Code, Codex ou qualquer agente compatível) a operar a CLI. A skill está embutida no
binário, então ela sempre corresponde à versão que você instalou.
```bash
metabigor skills # list the bundled skills
metabigor skills get metabigor --full # print the skill and its references
metabigor skills install # install into .claude/skills (this project)
metabigor skills install --scope global # install into ~/.claude/skills
metabigor skills install --agent agents # install into .agents/skills for Codex
metabigor skills install --dir ./skills # install into a directory you choose
```
`get` imprime o Markdown bruto no stdout (use pipe, ou `-o` para salvá-lo). `install` copia o
pacote inteiro - `SKILL.md` mais suas `references/` - e pula uma cópia existente, a menos que você passe
`--force`. Depois de instalada, o agente aciona a skill automaticamente sempre que você mencionar metabigor.
## Flags globais
```
-i, --input string Target to look up (also accepts arguments or stdin)
-I, --input-file string File of targets, one per line (use - for stdin)
-o, --output string Also write results to this file
-f, --format string Output format: text, json, csv, flat (default "text")
--append Append to the output file instead of overwriting it
-c, --concurrency int Number of parallel workers (default 10)
-t, --timeout int Request timeout in seconds (default 40)
--retry int Retries per failed request (default 3)
--proxy string Upstream proxy, e.g. http://127.0.0.1:8080
-v, --verbose Show step-by-step progress
-q, --quiet Show results and errors only
--debug Show HTTP traffic and internal traces (implies --verbose)
--no-color Disable colored log output
```
O Metabigor sai com código diferente de zero em caso de falha, então ele se compõe com `&&`, `set -e` e CI.
## Atualizando a partir da v2
A v3 renomeia flags e comandos por consistência. Não há aliases - atualize seus scripts.
| v2 | v3 | Motivo |
|---|---|---|
| `metabigor ipc` | `metabigor cluster` | `ipc` era impossível de adivinhar |
| `-I, --inputFile` | `-I, --input-file` | camelCase não é uma convenção de CLI |
| `-q, --silent` | `-q, --quiet` | `-q` deve corresponder à sua forma longa |
| `--json` | `-f json` | uma única flag controla o formato de saída |
| `ip --csv` / `ip --flat` | `-f csv` / `-f flat` | o mesmo |
| `cert --simple` | *(agora o padrão)* | `--detail` opta pelo bloco detalhado |
| `net --dynamic` | `net --live` | linguagem simples |
| `cdn --strip-cdn` | `cdn --exclude` | faz par com o novo `--only` |
| `related -s ua` / `-s gtm` | `--sources analytics` | ambos faziam a mesma coisa |
| `related -s` | `-s, --sources` | agora aceita realmente uma lista |
| `github` *(subdomínios por padrão)* | `github --subs` | o formato de saída não depende mais dos resultados |
Mudanças de comportamento que vale a pena conhecer:
- **A saída de progresso é silenciosa por padrão.** Linhas `[verbose]` agora exigem `-v`.
- **`-o` sobrescreve** em vez de anexar silenciosamente. Use `--append` para o comportamento antigo.
- **`ip` imprime texto legível**, e não JSON bruto. Use `-f json` para JSON.
- **`cert` imprime uma lista simples de domínios.** Use `--detail` para a visão agrupada de certificados.
- **`net` em um CIDR informa a rede proprietária** em vez de expandir para todos os hosts.
- **Erros saem com código 1.** Antes, toda falha ainda saía com código 0.
- **`metabigor update` atualiza ambos os bancos de dados.** Antes, ele pulava o banco de dados de países.
## Integre o Metabigor ao seu fluxo de trabalho de recon sem complicações?
<p align="center">
<img alt="OsmedeusEngine" src="https://assets.kitploit.com/production/public/readmes/2602/eafa8ee9ab8d11baf808ad0024f1153b25dd09c470be9ccc68ccf44c2ab63b2a.png" />
<p align="center">
Este projeto fez parte do Osmedeus Engine. Veja como ele foi integrado em <a href="https://twitter.com/OsmedeusEngine">@OsmedeusEngine</a>
</p>
</p>
# Créditos
Logo de [flaticon](https://image.flaticon.com/icons/svg/1789/1789851.svg) por [freepik](https://www.flaticon.com/authors/freepik)
## 📊 Fontes de Dados
- **Banco de Dados Local** - mapeamentos de IP-para-ASN e IP-para-país (mais de 2M de registros)
- **crt.sh** - logs de Transparência de Certificados
- **Shodan InternetDB** - API gratuita de enriquecimento de IP
- **grep.app** - pesquisa de código no GitHub
- **bgp.he.net** - dados de roteamento BGP ao vivo
- **viewdns.info** - consultas de WHOIS reverso
- **builtwith.com** - correlação de rastreamento de analytics
- **projectdiscovery/cdncheck** - biblioteca de detecção de CDN/WAF
- **web.archive.org** - índice CDX da Wayback Machine
- **index.commoncrawl.org** - índices CDX do Common Crawl
- **otx.alienvault.com** - listas de URLs do AlienVault OTX
- **urlscan.io** - pesquisa de histórico de varreduras
- **ghostarchive.org** - páginas arquivadas e seus arquivos WARC
- **virustotal.com** - relações de domínio (chave de API opcional)
- **intelx.io** - phonebook do Intelligence X (chave de API opcional)
# Aviso Legal
Esta ferramenta é apenas para fins educacionais. Você é responsável pelas suas próprias ações. Se você estragar algo ou quebrar
alguma lei ao usar este software, a culpa é sua, e somente sua.
# Licença
`Metabigor` é feito com ♥ por [@j3ssie](https://twitter.com/j3ssie) e é distribuído sob a licença MIT.
# Doação
[](https://paypal.me/j3ssiejjj)
[](https://www.buymeacoffee.com/j3ssie)