380 likes | 479 Views
Principais ataques. Engenharia social Coleta de informação Varredura Negação de serviço Exploração de bugs Exploração de protocolos Sniffers Ataque do dicionário Código malicioso. Introdução. Passos de um atacante conhecimentos preliminares mapeamento de Hosts e Firewalls
E N D
Principais ataques • Engenharia social • Coleta de informação • Varredura • Negação de serviço • Exploração de bugs • Exploração de protocolos • Sniffers • Ataque do dicionário • Código malicioso
Introdução • Passos de um atacante • conhecimentos preliminares • mapeamento de Hosts e Firewalls • busca por vulnerabilidades • exploração • consolidação da invasão • explorações posteriores
Mapeamento • Mapeamento de Hosts e Firewalls • firewalking • descoberta de hosts • varredura de portas (port scanning) • detecção de SO (OS fingerprinting) • mapeamento de protocolos e serviços • detecção de firewalls inteligentes
Técnicas e Ferramentas • Classes • Não intrusivas • clientes regulares de serviço • acessar o que está publicamente disponível • ações indiretas e diretas sobre o alvo • dificilmente podem ser evitadas • Intrusivas • comportamento completamente anormal • agem diretamente sobre o alvo • facilmente detectadas • existem mecanismos eficazes contra elas
Técnicas e Ferramentas • Pesquisa no site do alvo • Ferramenta: web browser • Informações • serviços publicamente disponíveis • missão do alvo (atividade) • contatos primários • nome de desenvolvedores • plataformas de desenvolvimento • Onde procurar? • na página em si • no código fonte (comentários, campos, ...)
Técnicas e Ferramentas • Pesquisa WHOIS • Ferramentas: web browser, whois • Informações • faixas de endereço IP pertencentes ao alvo • endereço físico do alvo • CGC/CPF • servidores DNS (nomes e endereços) • nomes e telefones para contado (adm. e técnico) • Sites • http://www.arin.net • http://registro.br
Técnicas e Ferramentas • Pesquisa WHOIS • Exemplo domínio: UFRGS.BR entidade: Universidade Federal do Rio Grande do Sul documento: 092.969.856/0001-98 responsável: <nome do responsável> endereço: Rua Ramiro Barcelos, 2574, UFRGS-CPD endereço: 90035-003 - Porto Alegre - RS telefone: (051) 3165072 ... servidor DNS: NS1.UFRGS.BR 143.54.1.58 servidor DNS: NS2.UFRGS.BR 143.54.1.59 servidor DNS: DNS.POP-RS.RNP.BR ... ID: <normalmente as iniciais> nome: <nome do responsável> e-mail: ... endereço: Rua Ramiro Barcelos, 2574, endereço: 90035-003 - Porto Alegre - RS telefone: (051) 3165045
Técnicas e Ferramentas • Troca de E-mails • Ferramenta: mail reader • Informações • nome e versão do programa servidor smtp • nome e versão do programa do usuário interno • plataformas (servidor e usuário interno) • nomes e endereços de servidores • Onde procurar? • nos cabeçalhos da mensagem • Como fazer? • enviar e-mails para usuários internos • enviar e-mails para um usuário inexistente
Técnicas e Ferramentas • Troca de E-mails • Exemplo 1 Received: from mail.dominioX.com (localhost.localdomain [127.0.0.1]) 2 by dominoX.com (8.11.0/8.11.3) with ESMTP id g32Mn2J53943; 3 Mon, 4 Mar 2001 19:49:01 -0300 4 Received: from smtp.dominioY.com (server.dominioY.com [230.110.90.20]) 5 by dominoX.com (8.11.0/8.11.3) with ESMTP id g32Mn2J53943; 6 for <lista@dominoX.com>; Mon, 4 Mar 2001 19:48:39 -0300 7 Received: from dominioZ.com (dominioZ.com [230.110.90.25]) 8 by dominioZ.com (8.12.1/8.12.1/Debian -5) with ESMTP id ... 9 for <lista@dominioX.com>; Mon, 4 Mar 2001 20:49:23 -0300 ... 10 Message-ID: <Pine.LNX.4.43.0203042048370.29092- ...
Técnicas e Ferramentas • DNS Zone Transfer • Ferramentas: dig, host, nslookup • Informações • todos os nomes existentes no DNS • identificação de máquinas chave (ex. fw, gw) • máquinas mais propícias para um ataque • Comando • dig @dns.dom.com.br dom.com.br axfr • Site Geek Tools (http://www.geektools.com)
Técnicas e Ferramentas • DNS Zone Transfer • Exemplo 1 # dig @dns.dom.com.br dom.com.br axfr 2 ; <<>> DiG 9.1.3 <<>> @dns.dom.com.br dom.com.br axfr 3 ;; global options: printcmd 4 dom.com.br. 86400 IN NS dns.dom.com.br. 5 dom.com.br. 86400 IN NS dns2.dom.com.br. 6 dom.com.br. 86400 IN NS gw.dom.com.br. 7 dom.com.br. 86400 IN MX 10 mail.dom.com.br. 8 mail.dom.com.br. 86400 IN CNAME svr1.dom.com.br. 9 ftp.dom.com.br. 86400 IN CNAME svr1.dom.com.br. ... 10 svr1.dom.com.br. 86400 IN A 164.17.100.20 11 svr1.dom.com.br. 86400 IN HINFO "Pentium III 1GHz" "Linux Red Hat 6.2" ... 12 fw.dom.com.br. 86400 IN A 164.17.100.1 13 fw.dom.com.br. 86400 IN HINFO "Pentium II 400MHz" "Linux Red Hat 6.2" ...
Técnicas e Ferramentas • Verificação do Sistema Operacional e Servidor Web • www.netcraft.net • contém histórico de versões antigas • exemplo: www.ufrgs.br OS Server Last changed IP address Windows Server 2003 Microsoft-IIS/6.0 1-Nov-2004 143.54.1.9 Windows 2000 unknown 31-Oct-2004 143.54.1.9 Windows Server 2003 Microsoft-IIS/6.0 11-Mar-2004 143.54.1.9 Windows 2000 Microsoft-IIS/5.0 11-Apr-2003 143.54.1.9 Solaris Apache 27-Dec-2000 143.54.1.3 Solaris Apache/1.3.14 (Unix) 30-Nov-2000 143.54.1.3 Solaris Apache/1.3.4 (Unix) 4-Nov-2000 143.54.1.2
Varredura (Scanning) • Teste sistemático dos números IP de uma organização • Determinação dos serviços estão ativos (quais portas estão escutando) • Varredura com ping • Consultas ICMP • Varredura de portas • Programas de varredura: COPS,ISS, SATAN, SAINT, Nessus, nmap
Varredura (Scanning) • Teste dos números IP de uma organização • Programas típicos • Ping • TraceRoute • Finger • NSLookup • Whois • Fornecem informações sobre domínio e/ou máquinas
Varredura (Scanning) • Teste dos números IP de uma organização • Network Ping Sweep • Teste envia ICMP ECHO (tipo 8) • Alvo envia ICMP ECHO_REPLY (tipo 0) • Demorado para redes grandes • Pode ser bloqueado por firewalls • TCP ping • Usa porta permitida no firewall (ex.: 80, 25) • Envia TCP SYN
Técnicas e Ferramentas • ICMP TTL Exceeded • Ferramentas: traceroute, hping2, web browser • Informações • distância do alvo • máquinas intermediárias • gateways internos • existência de firewalls (regras e tipos) • perdas de pacotes • Comandos • traceroute www.dom.com.br • hping2 -S -p 80 -T www.dom.com.br
Técnicas e Ferramentas • ICMP TTL Exceeded • Exemplo #traceroute alvo.sub.dom.br 1 dial.domX.com.br (210.90.136.14) 116.963 ms 119.668 ms 130.050 ms 2 fw.domX.com.br (210.90.136.1) 119.751 ms 119.800 ms 119.907 ms 3 atm.domY.com.br (201.100.129.132) 119.875 ms 119.809 ms 119.917 ms 4gw.dom.br (201.100.129.4) 119.981 ms 129.798 ms 119.916 ms 5 gw.sub.dom.br (154.34.4.3) 129.896 ms 139.799 ms 129.925 ms 6154.34.12.2 (154.34.12.2) 129.912 ms 139.797 ms 129.968 ms 7 alvo.sub.dom.br (154.34.8.66) 129.781 ms 139.886 ms 139.868 ms
Varredura (Scanning) • Teste sistemático das portas ativas • Procura na faixa 1-1024 (servidores) • Procura na faixa 1025-65535 (clientes) • Técnicas • TCP connect • Cliente envia SYN (e ACK=0) • Servidor responde com SYN/ACK • Cliente responde com ACK (e SYN=0) • Operação normal do protocolo • Desvantagem: detecção fácil
Varredura (Scanning) • Técnicas • TCP SYN scan • Cliente envia SYN (e ACK=0) • Servidor responde com SYN/ACK (porta inativa responde com RST/ACK) • Cliente responde com RST/ACK (reset) • Vantagem: dificulta a detecção (conexão “meio-aberta” não é logada normalmente) • TCP FIN scan • Cliente envia FIN • Porta inativa responde com RST (RFC 793) • Porta ativa não responde • Funciona para Unix (não funciona para Windows)
Varredura (Scanning) • Técnicas • TCP Xmas tree • Cliente envia pacote com todas opções ligadas • Servidor responde com RST para porta inativa (RFC 793, caso FIN, URG e PUSH estejam ligados) • Porta ativa não responde • TCP NULL scan • Cliente envia pacote com todas opções desligadas • Servidor responde com RST para porta inativa (RFC 793) • Porta ativa não responde
Varredura (Scanning) • Técnicas • UDP scan • Cliente envia pacote UDP para porta alvo • Servidor responde com “ICMP port unreachable” para porta inativa • Porta ativa não responde • Desvantagem: técnica não eficaz (UDP é “connectionless”) e imprecisa • Scan • Resposta exata depende da exatidão da implementação da pilha TCP/IP • Eficácia depende do sistema operacional
Técnicas e Ferramentas • Varredura de IPs e Portas • Ferramentas: nmap, hping2 • Informações • lista de máquinas ligadas • lista de portas abertas em uma determinada máquina • existência de firewalls • lista de portas filtradas • identificação de sistemas operacionais • Comando • nmap -sS -O www.site.com.br
Técnicas e Ferramentas • Varredura de IPs e Portas • Exemplo # nmap –sS –O www.dom.com.br Starting nmap V. 2.54BETA33 ( www.insecure.org/nmap/ ) Interesting ports on www.dom.com.br (154.34.13.4): (The 1545 ports scanned but not shown below are in state: closed) Port State Service 22/tcp filtered ssh 80/tcp open http 111/tcp open sunrpc 139/tcp open netbios-ssn 443/tcp open https 515/tcp open printer 548/tcp open afpovertcp 689/tcp open unknown 1024/tcp open kdm Remote operating system guess: Linux 2.1.19 - 2.2.19 ...
Técnicas e Ferramentas • Idle Scan • não envia pacotes diretamente à vítima • maior invisibilidade • máquina intermediária (zumbi)
Detecção do Sistema Operacional • Captura de Banners • Análise de Arquivo Binário • Detecção Ativa de Pilha • partes mal definidas das especificações (RFCs) • geração de tráfego sob medida • espera de respostas que variem entre SOs • condensação de resposta (fingerprint) • comparação com banco
Detecção do Sistema Operacional • Técnicas • FIN probe • Enviar FIN para uma porta aberta • Procedimento correto é não responder • Windows responde com FIN/ACK • Bogus Flag probe • Ligar bit não definido no cabeçalho em um pacote SYN • Linux responde com este bit ligado • Initial Sequence Number • “Don’t Fragment” bit • Valor do ACK (sequence number, sequence number+1)
Detecção do Sistema Operacional • Técnicas • Mensagens ICMP (em casos de erro) • Tratamento da fragmentação (quando fragmentos se sobrepõe) • Alterações no cabeçalho (bits ligados/desligados) • Manipulação das opções do TCP (RFCs 793 e 1323) • Programa típico: nmap (unix) • nmap-os-fingerprints • Detecta inclusive com todas portas inativas !
Detecção do Sistema Operacional • Detecção Ativa de Pilha • Nmap • 2 portas TCP e 1 porta UDP fechada • gera tráfego ilegal • métricas relativas a pacotes TCP, IP e UDP • defesa: firewall stateful c/ bloqueio a portas UDP fechadas
Detecção do Sistema Operacional • Detecção Ativa de Pilha • Cron-OS • RTO Stack Fingerprinting • análise do comportamento temporal de retransmissão da pilha TCP • 1 porta TCP aberta • defesa: • alteração de aspectos temporais da pilha TCP • uso de um Syn Relay para normalização temporal
Detecção do Sistema Operacional • Detecção Ativa de Pilha • Synscan • analisa aspectos complexos da pilha TCP • 1 porta TCP aberta • testes: • serviços: nível de aplicação • sessões: nível de rede/transporte • 16 plugins de análise • Congestion Control • Fragment Overlap Policy • defesa: alteração da pilha TCP
Detecção do Sistema Operacional • Detecção Passiva de Pilha • p0f • base similar a da ativa • sem geração de tráfego • escuta o tráfego, de 3 vias: • Pacote SYN • Pacote SYN/ACK • Pacote RST • precisa de tráfego TCP gerado pela vítima • métricas: • wsize, opções TCP, anormalidades, tamanho datagramas • defesa: alteração da pilha TCP
Mapeamento de serviços • Estado de portas e SISOP insuficiente • Necessário protocolo/serviço da porta • Captura de Banners • Técnica geral • envio de pacotes especiais (aplicação) • procura por padrão em respostas • comparação com banco de respostas
Mapeamento de serviços • Amap • Primeira a surgir • Usa “triggers” • Pouca documentação • Nmap • version scanning • “processo de interrogação” • envio de probes em ordem crescente de tráfego • identificações parciais reduzem processo
Detecção de firewalls inteligentes • Se fazem passar por host alvo • Resposta a CRC inválido • firewalls se atêm a camada de rede • não calculam checksum TCP/UDP • envio de checksum TCP/UDP inválido • resposta sinaliza firewall • defesa: calcular o checksum do pacote e descartá-lo ou aceitá-lo
Detecção de firewalls inteligentes • Comparação de TTL • comparação de TTL de pacote SYN/ACK com o de pacote RST • diferença indica firewall inteligente • defesa: • uso de mesmo TTL por firewall • firewall não altera TTL (modo bridge) hping2 -S -p 80 www.site.com.br HPING www.site.com.br (eth0 143.54.11.130): S set, 40 headers + 0 data bytes len=46 ip=143.54.11.130 flags=SA DF seq=0 ttl=254 id=6905 win=9112 rtt=1.6 ms len=46 ip=143.54.11.130 flags=SA DF seq=1 ttl=254 id=6906 win=9112 rtt=1.7 ms len=46 ip=143.54.11.130 flags=SA DF seq=2 ttl=254 id=6907 win=9112 rtt=1.6 ms hping2 -A -p 80 www.site.com.br HPING www.site.com.br (eth0 143.54.11.130): A set, 40 headers + 0 data bytes len=46 ip=143.54.11.130 flags=R seq=0 ttl=30 id=1 win=0 rtt=1.5 ms len=46 ip=143.54.11.130 flags=R seq=1 ttl=30 id=1 win=0 rtt=1.6 ms len=46 ip=143.54.11.130 flags=R seq=2 ttl=30 id=1 win=0 rtt=1.5 ms
Detecção de firewalls inteligentes • Comparação Temporal • comparação de tempo de transmissão de porta aberta com o de porta fechada • diferença indica firewall inteligente • defesa: • firewall que normaliza tempo (Syn Relay)
Técnicas e Ferramentas • Varredura de vulnerabilidades • Ferramentas: nessus, stealth • Informações • vulnerabilidades existentes no sistema • sistemas com determinada vulnerabilidade • Como fazer? • http://www.nessus.org
Técnicas e Ferramentas • Busca na Internet • Ferramentas • web browser • Linux, BSD • compiladores • conhecimento em C • paciência • Onde procurar? • http://packetstormsecurity.org • http://www.phrack.com • http://online.securityfocus.org • http://www.hackers.com