Footprinting e OSINT: A Primeira Fase do Ataque Ético

Todo ataque — seja ético ou malicioso — começa da mesma forma: com informação. Antes de explorar uma vulnerabilidade, antes de escalar privilégios, antes de qualquer linha de código malicioso, o atacante precisa entender quem é o alvo, o que ele possui e como se parece por fora. Essa fase inicial chama-se Footprinting, e é o tema central deste artigo da série CEH v13 Zero to Hero.

Um pentester que pula o footprinting é como um cirurgião que opera sem exames prévios. Pode até acertar, mas as chances de perder tempo, errar o alvo ou ignorar o vetor mais crítico são enormes. Vamos aprender como os profissionais fazem reconhecimento — e como você pode usar essas mesmas técnicas para proteger suas organizações.

1. O que é Footprinting?

Footprinting é a primeira fase do methodology de pentest (e do CEH). Consiste em coletar o máximo de informação possível sobre o alvo antes de qualquer interação direta. O objetivo é mapear a superfície de ataque: endereços IP, domínios, servidores, tecnologias, pessoas, e-mails, infraestrutura de rede, e qualquer outro dado que ajude a planejar as fases seguintes.

Reconhecimento Passivo vs. Ativo

  • Passivo: Não há interação direta com os sistemas do alvo. Pesquisas em motores de busca, registros públicos WHOIS, redes sociais, DNS queries usando servidores de terceiros. O alvo não consegue detectar que está sendo reconhecido.
  • Ativo: Envolvem comunicação direta com os sistemas do alvo — scans de porta, zone transfers, banners grabbing. O alvo pode detectar a atividade (logs, IDS/IPS).
🔧 Dica do Hacker: Sempre comece com reconhecimento passivo. Dados públicos não geram alerta nenhum. Só migre para ativo quando esgotar as fontes passivas — e mesmo assim, com cautela.

Por que é a fase mais importante? Porque as informações coletadas aqui definem todo o ataque seguinte. Um email corporativo encontrado no footprinting pode ser a entrada para spear phishing. Um servidor desatualizado descoberto via Shodan pode ser o caminho mais fácil para comprometimento. O footprinting é o mapa da mina — sem ele, você está pisando no escuro.

2. OSINT (Open Source Intelligence)

OSINT é a coleta e análise de informações a partir de fontes públicas e abertamente disponíveis. Não envolve hacking, engenharia social ou qualquer técnica que viole leis — é pesquisa pura, usando dados que estão (consciente ou inconscientemente) expostos na internet.

Fontes Principais de OSINT

  • Redes sociais: LinkedIn (estrutura organizacional), Twitter/X (opiniões, ferramentas), GitHub (código, credenciais acidentais)
  • Registros públicos: WHOIS, registros de domínios, certificados SSL (crt.sh)
  • DNS público: Zone transfers, subdomínios expostos
  • Motores de busca: Google, Bing, Shodan, Censys
  • Repositórios de código: GitHub, GitLab, Bitbucket — vazamentos de credenciais, configurações, chaves API
  • Documentos públicos: PDFs, planilhas, apresentações corporativas (muitas vezes com metadados reveladores)
  • Dark web: Marketplaces, fóruns, vazamentos de dados

Ferramentas de OSINT

Ferramenta Tipo Uso Principal
theHarvester CLI Coleta de emails, domínios, subdomínios
Maltego GUI Visualização de relações entre entidades
Recon-ng Framework CLI Módulos de reconhecimento modular
Sherlock CLI Busca usernames em +300 sites
Shodan Web/CLI/API Descoberta de dispositivos conectados
SpiderFoot Web/CLI OSINT automatizado com 200+ módulos

3. Google Dorking Avançado

Google Dorking (ou Google Hacking) é a arte de usar operadores avançados de busca para encontrar informações que normalmente estariam enterradas em milhares de resultados. Para um pentester, é uma das ferramentas mais poderosas — e mais subestimadas — de OSINT.

Operadores Essenciais

Operador Descrição Exemplo
site: Restringe resultados a um domínio site:exemplo.com admin
inurl: Busca texto na URL inurl:admin login
intitle: Busca texto no título da página intitle:"index of" /backup
intext: Busca texto no corpo da página intext:"password" filetype:log
filetype: Busca por extensão de arquivo filetype:pdf relatório financeiro
cache: Versão em cache do Google cache:exemplo.com
related: Sites relacionados related:exemplo.com
link: Páginas que linkam para o alvo link:exemplo.com
info: Informações que o Google tem sobre a URL info:exemplo.com
numrange: Busca por intervalo numérico numrange:1-100
before:/after: Filtro por data exemplo before:2024-01-01

Dorks Práticos para Pentest

💡 Exemplo Prático — Dorks por categoria:

Páginas de login/admin:

inurl:admin inurl:login site:alvo.com
intitle:"index of /admin" site:alvo.com
inurl:"/wp-admin" site:alvo.com

Arquivos sensíveis:

site:alvo.com filetype:pdf
site:alvo.com filetype:xlsx "confidential"
site:alvo.com filetype:doc "password"
site:alvo.com filetype:env
site:alvo.com filetype:config
site:alvo.com filetype:sql
site:alvo.com filetype:bak

Diretórios expostos:

intitle:"index of" site:alvo.com
intitle:"directory listing" site:alvo.com

Bancos de dados expostos:

inurl:"phpmyadmin" site:alvo.com
inurl:"adminer.php" site:alvo.com
intitle:"phpMyAdmin" site:alvo.com

GHDB — Google Hacking Database

A Google Hacking Database (GHDB), mantida pela Offensive Security, é um repositório com milhares de dorks categorizados e testados. Encontra-se em https://www.exploit-db.com/google-hacking-database. As categorias incluem: Files containing usernames, Files containing passwords, Sensitive directories, Vulnerable servers, entre outras. É uma mina de ouro para reconhecimento.

⚠️ Atenção: Google Dorking é legal quando usado em engajamentos autorizados. Usar dorks para acessar dados sensíveis de terceiros sem autorização pode configurar crime de acesso indevido. Sempre trabalhe dentro do escopo do seu contrato.

4. WHOIS e DNS Enumeration

WHOIS: O Registro Público de Domínios

Toda vez que alguém registra um domínio, informações básicas ficam disponíveis publicamente via WHOIS. Esse protocolo revela dados como:

  • Registrante: Nome, organização, e-mail, telefone, endereço
  • Registrar: Empresa onde o domínio foi registrado
  • Datas: Criação, expiração, última atualização
  • Nameservers: Servidores DNS do domínio
  • Status: Se o domínio está bloqueado, em transferência, etc.

Comando WHOIS via CLI:

whois exemplo.com

# Focando em registrante:
whois exemplo.com | grep -i "registrant\|email\|name server"

# WHOIS reverso — encontrar todos os domínios de um registrante:
whois -h whois.arin.net NET-IP-DO-SERVIDOR

Ferramentas WHOIS:

  • whois — CLI nativa do Linux
  • DomainTools (whois.domaintools.com) — WHOIS reverso, histórico, IP resolve
  • Reverse WHOIS — descobre todos os domínios registrados pelo mesmo email/nome
🔧 Dica do Hacker: Com o GDPR, muitos registrantes europeus ativam privacy protection no WHOIS. Mesmo assim, os dados de datas, nameservers e registrar permanecem acessíveis — e isso já é bastante útil.

DNS Enumeration

DNS é o sistema de nomes da internet — o “catálogo telefônico” que traduz domínios em IPs. Enumerar registros DNS de um alvo revela sua infraestrutura:

Registro Função
A Mapeia nome para IPv4
AAAA Mapeia nome para IPv6
MX Servidores de email
NS Servidores DNS autoritativos
TXT Registros de texto (SPF, DKIM, DMARC, verify)
SOA Start of Authority — info do domínio
CNAME Alias para outro domínio
PTR Reverse DNS — IP para nome
# Consultas DNS com dig
dig exemplo.com A
dig exemplo.com MX
dig exemplo.com NS
dig exemplo.com TXT
dig exemplo.com ANY

# Consultas completas
dig exemplo.com +short A          # IP limpo
dig exemplo.com MX +short         # Servidores de email

# Reverse DNS
dig -x 203.0.113.50

# Zone transfer (se permitido — muito raro hoje)
dig axfr exemplo.com @ns1.exemplo.com

# Enumeração de subdomínios com brute force
dig +noall +answer exemplo.com @ns1.exemplo.com

Ferramentas de DNS Enumeration:

# DNSRecon — ferramenta completa
dnsrecon -d exemplo.com
dnsrecon -d exemplo.com -t brte -D /usr/share/wordlists/dns.txt
dnsrecon -d exemplo.com -t axfr

# Fierce — combina DNS + subdomínio brute force
fierce --domain exemplo.com

# dnsenum — enumeração multi-etapa
dnsenum exemplo.com
dnsenum --dnsserver 8.8.8.8 --enum -f /usr/share/wordlists/dns.txt exemplo.com
⚠️ Atenção: Zone transfers (AXFR) eram comuns nos anos 90. Hoje quase nenhum servidor DNS autoritativo permite. Tentar AXFR em servidores que não permitem pode gerar logs — é uma técnica ativa. Use-a com consciência.

5. Email Harvesting

Emails corporativos são ouro para o atacante. Com uma lista de emails válidos, é possível montar campanhas de spear phishing ultra-direcionadas, tentar brute force em portais web, e mapear a estrutura organizacional (joao.silva, maria.santos — padrão primeiro.ultimo).

theHarvester

A ferramenta mais usada para coleta de emails e subdomínios. Trabalha com múltiplas fontes (Google, Bing, LinkedIn, Twitter, etc.).

# Instalação (Kali já vem com ela)
sudo apt install theharvester

# Busca básica por email e subdomínios
theHarvester -d exemplo.com -b google

# Usando múltiplas fontes
theHarvester -d exemplo.com -b google,bing,linkedin,twitter

# Busca em todas as fontes disponíveis
theHarvester -d exemplo.com -b all

# Limitando resultados e usando proxy
theHarvester -d exemplo.com -b google -l 500 -x "socks5://127.0.0.1:9050"

# DNS brute force
theHarvester -d exemplo.com -b google -c -n

Saída típica:

[*] Target: exemplo.com
[*] Searching Google...found 25 results.
[*] Emails found: 12
    - joao.silva@exemplo.com
    - maria.santos@exemplo.com
    - admin@exemplo.com
    - suporte@exemplo.com
[*] Hosts found: 8
    - mail.exemplo.com
    - vpn.exemplo.com
    - portal.exemplo.com

Outras Fontes de Email

  • Hunter.io (hunter.io) — Busca emails por domínio com validação. Mostra padrão de nomenclatura da empresa. Gratuito até 25 buscas/mês.
  • Snov.io — Similar ao Hunter, com extensão de navegador e API.
  • LinkedIn — Busca por empresa + “trabalha em” revela padrão de emails.
  • GitHub — Busca por @exemplo.com no GitHub encontra commits, issues, configs com emails reais.
💡 Exemplo Prático: Encontrou o padrão primeiro.ultimo@empresa.com? Se a empresa tem 500 funcionários no LinkedIn e 12 emails confirmados via theHarvester, você pode inferir centenas de emails válitos combinando nomes do LinkedIn com o padrão. Ferramentas como username-anarchy automatizam essa geração.

6. Shodan: O Google da Internet das Coisas

Enquanto o Google indexa páginas web, o Shodan (shodan.io) indexa dispositivos conectados à internet: câmeras, roteadores, servidores, dispositivos industriais (SCADA), databases, sistemas IoT. É essencialmente um scanner de banner que catalogou bilhões de dispositivos.

Como Funciona

O Shodan faz conexões com endereços IP na internet e captura os banners — as respostas que os serviços enviam quando alguém se conecta. Esses banners contêm informações como software, versão, portas abertas e até localização geográfica.

Filtros Úteis

Filtro Descrição Exemplo
port: Porta específica port:3389 country:BR
country: País country:PT
city: Cidade city:"Lisboa"
org: Organização/ASN org:"Target Corp"
product: Software/produto product:"Apache httpd"
vuln: Código CVE vuln:CVE-2021-44228
has_screenshot: Tem screenshot has_screenshot:true

Exemplos de Buscas

# Webcams expostas
port:554 has_screenshot:true country:BR

# Servidores RDP no Brasil
port:3389 country:BR

# Sistemas SCADA/ICS expostos
port:502 country:US

# Servidores MongoDB sem autenticação
port:27017 product:"MongoDB"

# Roteadores com senha padrão
product:"TP-Link" port:80

# Servidores com Apache vulnerável
product:"Apache httpd" vuln:CVE-2021-41773

# Dispositivos IoT em Portugal
country:PT has_screenshot:true

Shodan CLI

# Instalação
pip install shodan

# Inicializar com API key
shodan init SUA_API_KEY

# Buscar
shodan search "port:22 country:PT"

# Informações sobre IP específico
shodan host 203.0.113.50

# Contar resultados
shodan count "port:443 country:BR"

# Monitorar sua própria rede
shodan myip

Shodan Exploits

O Shodan também indexa exploits conhecidos. O Shodan Exploits (exploits.shodan.io) cruza dados de dispositivos com vulnerabilidades conhecidas, permitindo encontrar, por exemplo, todos os dispositivos Apache afetados por um CVE específico. É uma ferramenta poderosa para priorização de remediação.

7. Maltego: Visualização de Inteligência

O Maltego é uma ferramenta de visualização que transforma dados OSINT em grafos interativos. Em vez de ler listas de emails e IPs em texto, você vê a relação entre todos eles visualmente — quem é quem, o que se conecta a quê, onde estão os pontos de convergência.

Conceitos Fundamentais

  • Entities (Entidades): Nós no grafo — Person, Domain, Email, Phone, IP, Company, DNS Name, Location, etc.
  • Transforms: Operações que buscam dados sobre uma entidade e criam novas entidades conectadas. Exemplo: aplicar um transform “To DNS Name” em um domínio descobre subdomínios; aplicar “To Email” em uma pessoa descobre seus endereços de email.
  • Graph (Grafo): A visualização final com todas as entidades conectadas por seus relacionamentos.

Workflow Básico

  1. Crie um new graph
  2. Adicione uma entidade Domain com o alvo
  3. Aplique transforms: To DNS NameTo IP AddressTo EmailTo Person
  4. Analise o grafo resultante — concentreções de conexões geralmente indicam ativos críticos
# Exemplo de uso via Maltego CE (Community Edition)
# 1. Adicionar entidade Domain → "exemplo.com"
# 2. Transform: "To DNS Name in Domain" (descobre subdomínios)
# 3. Transform: "To Email Address" (em cada subdomínio)
# 4. Transform: "To Person" (em cada email)
# 5. Transform: "To Social Media Profile" (em cada pessoa)

Maltego Community vs CE

A versão Community é gratuita (100 runs/mês, transforms limitados). A versão CE (Commercial Edition) oferece transforms ilimitados, integrações com APIs pagas (Shodan, VirusTotal, etc.) e exportação de relatórios. Para reconhecimento básico, a Community Edition resolve.

8. Social Media Recon

Redes sociais são uma fonte riquíssima de informação. Pessoas compartilham voluntariamente detalhes que um atacante não conseguiria de outra forma: tecnologias que usam, eventos da empresa, horários de trabalho, estrutura hierárquica, e até fotos do escritório (que podem revelar equipamentos, layout de rede, displays com informações sensíveis).

O que Procurar

  • Tecnologias: Postagens sobre “migrando para AWS” ou “novo firewall Fortinet” são dicas diretas de stack
  • Estrutura: Organograma implícito via LinkedIn — quem reporta pra quem, departamentos
  • Horários e eventos: Viagens, conferências, home office — oportunidade de ataque físico/social
  • Informações pessoais: Pets, hobbies, anniversaries — material para engenharia social e password guessing
  • Metadados de fotos: Geolocalização, dispositivos usados, timestamps

Ferramentas

# Sherlock — encontra contas de uma pessoa em +300 sites
sherlock joaosilva

# Namechk — verifica disponibilidade de username
# Web: namechk.com

# Recon-ng (módulo social)
recon-ng
marketplace install all
modules load recon/profiles/profiles
options set SOURCE joao.silva
run

# Busca manual no LinkedIn
# google: site:linkedin.com/in "exemplo.com" "trabalha em"
🔧 Dica do Hacker: No LinkedIn, busque pela empresa alvo e filtre por “Pessoas” → “Funcionários atuais”. Os resultados incluem cargos, departamentos e — frequentemente — emails no formato padrão da empresa. Combine com o theHarvester para validar.

9. Recon-ng Framework

O Recon-ng é um framework modular de reconhecimento inspirado no Metasploit. Funciona como um console interativo onde você carrega módulos específicos para cada tipo de coleta de dados.

Estrutura de Módulos

  • recon/domains-hosts/ — Descoberta de hosts/subdomínios
  • recon/domains-contacts/ — Contatos associados a domínios
  • recon/hosts-hosts/ — Relações entre hosts
  • recon/contacts-contacts/ — Relações entre contatos
  • recon/profiles-profiles/ — Perfis em redes sociais

Workflow Completo

# Iniciar
recon-ng

# Definir workspace (organiza os dados)
workspaces create alvo_recon
workspaces select alvo_recon

# Adicionar o domínio alvo ao banco
marketplace install all
modules load recon/domains-hosts/hackertarget
options set SOURCE exemplo.com
run

# Buscar emails
modules load recon/domains-contacts/hackertarget
options set SOURCE exemplo.com
run

# Enumeração DNS
modules load recon/domains-hosts/bing_site_web
options set SOURCE exemplo.com
run

# Exportar resultados
modules load reporting/csv
options set SOURCE /root/.openclaw/workspace/results.csv
run

# Ver todos os dados coletados
show hosts
show contacts
show domains

O Recon-ng salva tudo em um banco SQLite interno. Você pode consultar e cruzar dados entre módulos, o que o torna muito mais poderoso que ferramentas isoladas.

10. Hands-on: Recon Completo de um Alvo

Vamos juntar tudo em um walkthrough prático. Imagine que você foi contratado para fazer footprinting da empresa alvoexemplo.com (domínio fictício). Aqui está o fluxo completo:

Passo 1 — WHOIS

$ whois alvoexemplo.com

Domain Name: ALVOEXEMPLO.COM
Registrar: GoDaddy.com, LLC
Creation Date: 2019-03-15T10:00:00Z
Expiry Date: 2026-03-15T10:00:00Z
Name Server: ns1.alvoexemplo.com
Name Server: ns2.alvoexemplo.com
Registrant Organization: Alvo Exemplo LTDA
Registrant State/Province: São Paulo
Registrant Country: BR

Descobertas: Domínio registrado em 2019, expira em 2026, nameservers próprios (sugerem infraestrutura interna), empresa baseada em São Paulo.

Passo 2 — DNS Enumeration

$ dig alvoexemplo.com ANY +noall +answer
alvoexemplo.com.    300  IN  A       203.0.113.50
alvoexemplo.com.    300  IN  MX      10 mail.alvoexemplo.com.
alvoexemplo.com.    300  IN  NS      ns1.alvoexemplo.com.
alvoexemplo.com.    300  IN  NS      ns2.alvoexemplo.com.
alvoexemplo.com.    300  IN  TXT     "v=spf1 include:_spf.google.com ~all"

$ dig alvoexemplo.com TXT +short
"v=spf1 include:_spf.google.com ~all"
"google-site-verification=abc123..."

$ dnsrecon -d alvoexemplo.com -t std
[*] Performing STD Enumeration...
[*] 203.0.113.50            - alvoexemplo.com
[*] 203.0.113.51            - mail.alvoexemplo.com
[*] 203.0.113.52            - vpn.alvoexemplo.com
[*] 203.0.113.53            - staging.alvoexemplo.com
[*] 203.0.113.54            - dev.alvoexemplo.com

Descobertas: Usam Google Workspace (SPF aponta para Google), servidores de email, VPN, ambiente de staging e dev expostos.

Passo 3 — theHarvester

$ theHarvester -d alvoexemplo.com -b google,bing,linkedin -l 200

[*] Emails found: 8
    - joao.silva@alvoexemplo.com
    - maria.santos@alvoexemplo.com
    - carlos.oliveira@alvoexemplo.com
    - ti@alvoexemplo.com
    - rh@alvoexemplo.com
    - admin@alvoexemplo.com
    - suporte@alvoexemplo.com
    - fernanda.lima@alvoexemplo.com

[*] Hosts found: 5
    - portal.alvoexemplo.com
    - extranet.alvoexemplo.com
    - api.alvoexemplo.com
    - cloud.alvoexemplo.com
    - backup.alvoexemplo.com

Descobertas: Padrão de email é primeiro.ultimo. Encontrados subdomínios adicionais: portal, extranet, API, cloud e backup.

Passo 4 — Shodan

$ shodan host 203.0.113.50

203.0.113.50
Organization: Alvo Exemplo LTDA
Port: 443/tcp
  Product: Apache httpd 2.4.51
  Title: Alvo Exemplo - Portal Corporativo
Port: 80/tcp
  Product: Apache httpd 2.4.51
Port: 22/tcp
  Product: OpenSSH 8.2

Descobertas: Apache 2.4.51 (possivelmente vulnerável), SSH aberto, servidor web com título identificável.

Passo 5 — Google Dorking

site:alvoexemplo.com filetype:pdf
site:alvoexemplo.com filetype:xlsx
site:alvoexemplo.com intitle:"index of"
inurl:admin site:alvoexemplo.com
"alvoexemplo.com" filetype:env

Relatório de Footprinting

Categoria Item Detalhes
Domínio alvoexemplo.com Reg. 2019, expira 2026
IP Principal 203.0.113.50 Apache 2.4.51, SSH, HTTP/HTTPS
Email Google Workspace SPF confirma infra Google
Subdomínios 10 encontrados VPN, staging, dev, API, backup…
Emails 8 confirmados Padrão: primeiro.ultimo@
Tecnologias Apache, OpenSSH, Google Apache 2.4.51 — verificar CVEs
Risco Staging/Dev expostos Ambientes de dev acessíveis publicamente

11. Contra-medidas: Protegendo-se contra Footprinting

A melhor defesa contra footprinting é minimizar a exposição de informações. Aqui estão as contra-medidas mais eficazes:

  • WHOIS Privacy: Ative WHOIS privacy protection no registrador. Em cenários com GDPR, é obrigatório para pessoas físicas na UE. Empresas também deveriam usar.
  • Desabilitar Zone Transfers: Configure o DNS para aceitar AXFR apenas de servidores secundários autorizados. Teste com dig axfr para confirmar.
  • Robots.txt e Meta Tags: Use robots.txt para bloquear indexação de diretórios sensíveis. Adicione <meta name="robots" content="noindex,nofollow"> em páginas internas.
  • Security Headers: Implemente headers como X-Frame-Options, Content-Security-Policy, X-Content-Type-Options. Isso reduz a exposição a Google Dorking e clickjacking.
  • Remover Metadados: Ferramentas como exiftool e mat2 removem metadados de documentos e imagens antes da publicação.
  • Monitorar OSINT: Configure alertas no Google Alerts, Shodan Monitor, e Have I Been Pwned para saber quando informações da sua organização aparecem publicamente.
  • Minimizar Footprint Digital: Política clara para funcionários sobre o que pode ser compartilhado em redes sociais. Treinamento de segurança awareness.
  • Restringir Informação de Erro: Customize páginas de erro 404/500 para não revelar tecnologia. Remova server headers com ServerTokens Prod no Apache ou server_tokens off no Nginx.
  • Auditoria Periódica: Faça footprinting da própria organização regularmente. O que você encontra é o que um atacante encontra.
🔧 Dica do Hacker: A melhor contra-medida não é esconder tudo — é assumir que tudo será descoberto e projetar a segurança em camadas (defense in depth). Se o atacante encontra seu IP, que seja um WAF. Se encontra seus emails, que a autenticação seja MFA. Se encontra seus subdomínios, que todos tenham certificados válidos e headers seguros.

12. Próximo Artigo

No próximo artigo da série, vamos entrar em Nmap Masterclass — a ferramenta definitiva de scanning de redes e portas. Vamos do básico (nmap target) ao avançado (NSE scripts, evasion techniques, OS fingerprinting), cobrindo tudo o que você precisa para mapear a superfície de ataque descoberta durante o footprinting.

Depois de coletar todas essas informações passivas, o Nmap é o primeiro passo da fase ativa — e é onde as coisas começam a ficar realmente interessantes. Acompanhe.


Série CEH v13 Zero to Hero — Artigo 06 de 30. Veja os artigos anteriores em ciberseguranca.org/seguranca.