Introdução ao Reconhecimento Ativo
O reconehcimento ativo envolve a interação direta com sistemas-alvo para obter informações, deixando rastros em logs, como endereços IP, horários e durações de conexões. Essa abordagem pode ser discretizada para se assemelhar a tráfego legítimo, por exemplo, misturando-se a requisições de usuários comuns em servidores web. Ferramentas comuns incluem navegadores, ping, traceroute, telnet e netcat, todas disponíveis em diversas plataformas.
Coleta de Informações com Navegadores Web
Navegadores web são ferramentas acessíveis para reconhecimento, utilizando portas TCP padrão como 80 (HTTP) e 443 (HTTPS). Portas customizadas, como 8834, podem ser acessadas via HTTPS. As ferramentas de desenvolvedor (acessíveis com Ctrl+Shift+I no Windows ou Option + Command + I no Mac) permitem inspecionar cookies, scripts e estruturas de sites.
Extensões úteis incluem:
- FoxyProxy: Gerencia proxies para ferramentas como Burp Suite.
- User-Agent Switcher and Manager: Permite simular diferentes sistemas ou navegadores.
- Wappalyzer: Analisa tecnologias usadas em sites.
Utilizando o Comando Ping para Verificação de Conectividade
O comando ping envia pacotes ICMP Echo para verificar se um sistema remoto está online e respondendo. Ele ajuda a confirmar a acessibilidade antes de varreduras mais detalhadas.
Exemplo com envio de 5 pacotes para o IP 192.168.1.200:
atacante@maquina$ ping -c 5 192.168.1.200
PING 192.168.1.200 (192.168.1.200) 56(84) bytes of data.
64 bytes from 192.168.1.200: icmp_seq=1 ttl=128 time=1.23 ms
64 bytes from 192.168.1.200: icmp_seq=2 ttl=128 time=1.45 ms
64 bytes from 192.168.1.200: icmp_seq=3 ttl=128 time=1.67 ms
64 bytes from 192.168.1.200: icmp_seq=4 ttl=128 time=1.89 ms
64 bytes from 192.168.1.200: icmp_seq=5 ttl=128 time=2.01 ms
--- 192.168.1.200 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 1.230/1.650/2.010/0.290 ms
Se o alvo não responder, pode indicar que está offline, desconectado, ou com firewall bloqueando ICMP. A falha de resposta também pode sugerir problemas de rede local.
Mapeamento de Rotas com Traceroute
O traceroute revela o caminho dos pacotes até o destino, identificando roteadores intermediários (saltos) via TTL. Cada pacote com TTL incrementado revela o próximo roteador quando descartado.
Exemplo de comando para traceroute no domínio exemplo.com:
atacante@maquina$ traceroute exemplo.com
traceroute to exemplo.com (93.184.216.34), 30 hops max, 60 byte packets
1 gateway.local (192.168.1.1) 1.234 ms 1.567 ms 1.890 ms
2 10.0.0.1 (10.0.0.1) 5.678 ms 6.789 ms 7.890 ms
3 * * *
4 93.184.216.34 (93.184.216.34) 20.123 ms 21.456 ms 22.789 ms
As rotas podem variar devido a protocolos dinâmicos; asteriscos indicam roteadores sem resposta. Informações úteis incluem endereços IP públicos de rotaedores e a contagem de saltos.
Exploração de Serviços com Telnet
O telnet permite conexões TCP a serviços, como servidores web na porta 80, para interações básicas via protocolos como HTTP. Ele envia dados em texto claro, sendo inseguro para autenticação.
Exemplo de conexão a um servidor web na porta 80 para obter headers HTTP:
atacante@maquina$ telnet 192.168.1.200 80
Trying 192.168.1.200...
Connected to 192.168.1.200.
Escape character is '^]'.
GET / HTTP/1.1
Host: teste
HTTP/1.1 200 OK
Server: Apache/2.4.41
Date: Wed, 01 Jan 2023 00:00:00 GMT
Content-Type: text/html
Content-Length: 1234
Connection: keep-alive
Essa técnica revela informações do servidor, como tipo e versão, útil para identificar vulnerabilidades.
Uso do Netcat para Conexões e Escuta
O netcat (nc) funciona como cliente ou servidor para TCP/UDP, permitindo coleta de banners ou transferência de dados. Ele pode substituir o telnet para reconhecimento.
Exemplo de conexão a um servidor web na porta 80 para obter informações:
atacante@maquina$ nc 192.168.1.200 80
GET / HTTP/1.1
Host: netcat
HTTP/1.1 200 OK
Server: Nginx/1.18.0
Date: Wed, 01 Jan 2023 00:00:00 GMT
Content-Type: text/html
Content-Length: 5678
Para escutar em uma porta, use comandos como nc -lp 4444 no servidor e nc 192.168.1.200 4444 no cliente, criando um canal de comunicação. Portas abaixo de 1024 requerem privilégios elevados.