Baixe o app para aproveitar ainda mais
Prévia do material em texto
Segurança e Vulnerabilidades de Redes Edmar Roberto Santana de Rezende edmar.rezende@ic.unicamp.br Mestrado – Ciência da Computação Laboratório de Administração e Segurança de Sistemas Instituto de Computação Universidade Estadual de Campinas Apresentação ! Cenário atual ! Ameaças e vulnerabilidades – Ataques para obtenção de informações – Ataques ativos contra o TCP/IP – Ataques de negação de serviço – Ataques coordenados – Ataques no nível de aplicação ! Mecanismos de segurança – Firewalls – IDS (Intrusion Detection System) – Criptografia ! Referências Cenário atual Fatos marcantes ! “Internet Worm” – 2 de novembro de 1988 – Autor: Robert Morris Jr. – Parou cerca de 50% da Internet na época ! Kevin Mitnick – Considerado por muitos “o maior hacker da história”. – Entrou no sistema de Dan Farmer e roubou uma versão ainda não lançada de seu software “SATAN”. – 25 de Dezembro de 1994 ! invadiu o sistema pessoal de Tsutomo Shimomura (expert em segurança do Centro Nacional de Supercomputação em San Diego). – Preso em fevereiro de 1995 ! libertado em janeiro de 2000. – 25 acusações federais: fraude no sistema telefônico, roubo de software proprietário (ex: Sun, Motorola, Novell e Nokia), etc. Cenário atual ! Fevereiro de 2000 – Ataques coordenados a grandes sites: ! Yahoo! , E-Trade, Datek , ZDNet, Amazon.com, Buy.com, CNN.com e eBay.com. ! No Brasil: o UOL e o Cadê? ! Fevereiro e Setembro de 2000 – números de cartões de crédito roubados por hackers: ! RealNames ! 20 mil ! Western Union ! 15 mil ! Grupos brasileiros (Prime Suspectz e Insanity Zine): – Assinaram invasões aos sites: ! Banco Central, Congresso Nacional, Dell, UOL, Microsoft Brasil e às páginas brasileiras das empresas McAfee e Network Association. Retrospectiva 2000 Cenário atual Vírus e Worms ! “I love you” (maio de 2000) – Prejuízos: ~ US$11 bilhões ! “SirCam” (julho de 2001) – Cerca de 50 mil computadores infectados em 2001 – Prejuízos: ~US$1,15 bilhões ! “Nimda” (setembro de 2001) – Cerca de 103 mil computadores infectados. – Prejuízos: ~US$635 milhões ! “Code Red” (metade de 2001) – Cerca de 225 mil computadores infectados. – Prejuízos: ~US$2,62 bilhões Total em 2001 = ~US$13,2 bilhões Cenário atual Incidentes Ano Incidentes 1990 252 1991 406 1992 773 1993 1.334 1994 2.340 1995 2.412 1996 2.573 1997 2.134 1998 3.734 1999 9.859 Total 25.817 Ano Incidentes 2000 21.756 2001 52.658 *2002 43.136 Total 117.550 Ano Incidentes 1988 6 1989 132 Total 138 Fonte: CERT/CC (Computer Emergency Response Team / Coordination Center) http://www.cert.org Cenário atual 1º Semestre* """"Total: 143.505 1988-2002 Fonte: CERT/CC (Computer Emergency Response Team / Coordination Center) http://www.cert.org Incidentes Cenário atual Cenário atual Incidentes – Brasil Fonte: NBSO (NIC BR Security Office) http://www.nbso.nic.br Cenário atual Incidentes – Brasil Fonte: NBSO (NIC BR Security Office) http://www.nbso.nic.br " Ataques para obtenção de informações " Ataques ativos contra o TCP/IP " Ataques de negação de serviço " Ataques coordenados " Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Técnicas: – Dumpster diving ou Trashing – Engenharia Social – Eavesdropping ou Packet Sniffing – Scanning – War dialing – Firewalking Ameaças e Vulnerabilidades Ataques para obtenção de informações ! Dumpster diving ou Trashing – Revirar o lixo a procura de informações. – Pode revelar informações pessoais e confidenciais. ! Engenharia Social – Tem como objetivo enganar e ludibriar pessoas. – Ataca o elo mais fraco da segurança ! “o usuário”. – Normalmente o atacante se faz passar por um funcionário da empresa. Ameaças e Vulnerabilidades Ataques para obtenção de informações ! Eavesdropping ou Packet Sniffing – A interface de rede é colocada em “modo promíscuo”. – Captura pacotes no mesmo segmento de rede. – Senhas trafegam em claro (Telnet, FTP, POP, etc) Ameaças e Vulnerabilidades Ataques para obtenção de informações 14:54:00.356981 10.1.1.45.ftp > 10.1.1.90.1458: P 69:111(42) ack 21 win 5840 (DF) 0x0000 4500 0052 9957 4000 4006 8ac6 0a01 012d E..R.W@.@......- 0x0010 0a01 015a 0015 05b2 2457 8112 1da0 6849 ...Z....$W....hI 0x0020 5018 16d0 8e1c 0000 3333 3120 5061 7373 P.......331.Pass 0x0030 776f 7264 2072 6571 7569 7265 6420 666f word.required.fo 0x0040 7220 6164 6d69 6e69 7374 7261 646f 722e r.administrador. 0x0050 0d0a 14:54:12.986981 10.1.1.90.1458 > 10.1.1.45.ftp: P 21:36(15) ack 111 win 17410 (DF) 0x0000 4500 0037 a96e 4000 8006 3aca 0a01 015a E..7.n@...:....Z 0x0010 0a01 012d 05b2 0015 1da0 6849 2457 813c ...-......hI$W.< 0x0020 5018 4402 06c2 0000 5041 5353 2070 736b P.D.....PASS.psk 0x0030 4036 3779 640d 0a @67yd.. ! Scanning – Port Scanning ! Obtém informações a respeito dos serviços acessíveis (portas abertas) em um sistema. – Scanning de vulnerabilidades ! Obtém informações sobre vulnerabilidades específicas (conhecidas) para cada serviço em um sistema. ! War dialing – Realiza uma busca por modens. – Modem ! entrada alternativa para a rede Ameaças e Vulnerabilidades Ataques para obtenção de informações ! Firewalking – Obtém informações sobre uma rede remota protegida por um firewall. – Funcionamento similar ao traceroute. Ameaças e Vulnerabilidades Ataques para obtenção de informações 1 143.106.16.148 (143.106.16.148) 1.970 ms 2 saserver.grad.dcc.unicamp.br (143.106.16.150) 0.582 ms 3 143.106.7.1 (143.106.7.1) 3.139 ms 4 capivari.dcc.unicamp.br (143.106.7.15) 1.288 ms 5 ansp-gw.unicamp.br (143.106.2.45) 1.730 ms 6 unicamp-fe02-core.cas.ansp.br (143.106.99.25) 3.485 ms 7 advansp-border.core.unicamp.br (143.106.99.73) 3.104 ms 8 spo-cps.ansp.br (143.108.254.129) 5.765 ms 9 rnp.ix.spo.ansp.br (200.136.34.2) 6.527 ms 10 mg-atm108.bb3.rnp.br (200.143.254.153) 21.774 ms 11 tutu.pop-mg.rnp.br (200.131.1.2) 17.328 ms 12 ufv4.pop-mg.rnp.br (200.19.158.18) 56.750 ms 13 * * * 14 atenas.cpd.ufv.br (200.17.79.41) 45.060 ms ! Técnicas: – Spoofing ! ARP Spoofing ! IP Spoofing ! DNS Spoofing – Man-in-the-middle ! Session Hijacking – Replay attack – Fragmentação de pacotes Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades ! Spoofing – Enganar a vítima fazendo-se passar por outro host. ! Tipos: – ARP Spoofing ! Gerar respostas ARP falsas ! ARP (Address Resolution Protocol) Mapeia: Endereços IP ! Endereços MAC – IP Spoofing ! Gerar pacotes com endereço IP falso – DNS Spoofing ! Gerar respostas de DNS falsas ! DNS (Domain Name Service) Mapeia: Nomes ! Endereços IP Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades ! ARP Spoofing 1º Passo: Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades 10.1.1.2 10.1.1.3 10.1.1.4 10.1.1.5 10.1.1.1 Atacante 10.1.1.7 00:50:56:C0:00:08 00:E0:4C:39:01:F3 00:C0:3B:47:02:D4 Roteador arp reply 10.1.1.1 is-at 00:E0:4C:39:01:F3 ! ARP Spoofing 2º Passo: Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades 10.1.1.2 10.1.1.3 10.1.1.4 10.1.1.5 10.1.1.1 Atacante 10.1.1.7 00:50:56:C0:00:08 00:E0:4C:39:01:F3 00:C0:3B:47:02:D4 Roteador arp reply 10.1.1.5 is-at 00:E0:4C:39:01:F3 ! ARP Spoofing Resultado: Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades 10.1.1.2 10.1.1.3 10.1.1.4 10.1.1.5 10.1.1.1 Atacante 10.1.1.7 00:50:56:C0:00:08 00:E0:4C:39:01:F3 00:C0:3B:47:02:D4 Roteador IP forwarding ligado 143.106.7.8 Internet Atacante 200.131.10.20 Vítima Host confiável 64.221.8.50 rsh vítima comando src: 64.221.8.50 dst: 143.106.7.8Impede que o host verdadeiro responda ! IP Spoofing – UDP e ICMP: trivial – TCP: maior grau de dificuldade 1) É necessário impedir que o host confiável responda. Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades ! IP Spoofing 2) É necessário prever o número de sequência inicial. Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades atacante servidor cliente ! DNS Spoofing – Contaminar o cache do servidor com resposta falsa. – Dificuldade: Adivinhar o transaction ID. Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades Atacante ! Man-in-the-middle – O atacante intercepta os dados e responde pelo cliente, podendo alterar os dados. Session hijacking – O atacante derruba o cliente e mantém a conexão em andamento. Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades Cliente Servidor Atacante IP Dados Dados alterados IP Dados Cliente Servidor Atacante IP Dados Impede que o host responda Conexão em andamento X Mantém a conexão em andamento ! Replay attack – Dados interceptados podem ser retransmitidos pelo atacante. – É possível utilizar dados cifrados. Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades Cliente Servidor Atacante IP Dados Interceptação dos dados Cliente Servidor Atacante IP Dados Reenvio dos dados ! Fragmentação de pacotes – Se tamanho do pacote > MTU do meio, então ocorre fragmentação. – É possível sobrescrever cabeçalhos durante a remontagem dos pacotes ! driblar as regras de filtragem do firewall. Ataques ativos contra o TCP/IP Ameaças e Vulnerabilidades IP UDP Início dos dados IP Restante dos dados IP UDP Dados IP UDP Dados Fragmentação Remontagem IP UDP Início dos dados IP IP UDP Dados IP TCP Dados alterados Fragmentação Remontagem TCP Dados alterados ! Técnicas: – Flooding ! TCP SYN flooding ! UDP flooding ! ICMP flooding – Smurf e Fraggle – Teardrop – Land Attack – Ping of Death Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades ! Flooding – Inundar o servidor com requisições falsas. ! Tipos: – TCP SYN flooding – UDP flooding – ICMP flooding Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades Internet Atacante 200.131.10.20 Vítima 64.221.8.50 SYN SEQ=0 src=1.2.3.4:5 dst=64.221.8.50:80 SYN SEQ=0 src=1.2.3.4:6 dst=64.221.8.50:80 SYN SEQ=0 src=1.2.3.4:7 dst=64.221.8.50:80 1. src=1.2.3.4:5 SEQ=1 2. src=1.2.3.4:6 SEQ=1 3. src=1.2.3.4:7 SEQ=1 ... ... SYN SEQ=5324761 ACK=1 src=64.221.8.50:80 dst=1.2.3.4:5 ! Smurf e Fraggle – Consistem em ataques de flood distribuído. – Utilizam broadcasting em redes inteiras para amplificar seus efeitos. – Utilizam o endereço IP da vítima como endereço de origem dos pacotes (IP Spoofing). – Protocolo utilizado: Smurf ! ICMP (ping) Fraggle ! UDP (echo) Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades ! Smurf e Fraggle Etapa 1: Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades 143.106.7.8 Internet 143.106.10.2 143.106.10.3 143.106.10.4 143.106.10.254 143.106.10.1 Atacante 200.131.10.20 Roteador ... Vítima 200.221.8.50 143.106.10.0/24 icmp echo request src: 200.221.8.50 dst: 143.106.10.255 ! Smurf e Fraggle Etapa 2: Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades 143.106.7.8 Internet 143.106.10.2 143.106.10.3 143.106.10.4 143.106.10.254 143.106.10.1 Atacante 200.131.10.20 Roteador ... Vítima 200.221.8.50 143.106.10.0/24 ! Smurf e Fraggle Resultado: Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades 143.106.7.8 Internet 143.106.10.2 143.106.10.3 143.106.10.4 143.106.10.254 143.106.10.1 Atacante 200.131.10.20 Roteador ... Vítima 200.221.8.50 143.106.10.0/24 ! Teardrop – Se aproveita de uma falha na implementação das rotinas de remontagem de pacotes. – Consiste em enviar um pacote com um tamanho inválido ! o sistema obtém um nº negativo ao calcular o offset. – Resulta em crash do sistema. ! Land Attack – Consiste em conectar uma porta de um sistema a ela mesma. – Causa o travamento do sistema em diversas plataformas. Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades ! Ping of Death – Consiste em enviar um pacote de “ICMP echo request” (ping) com mais de 65.507 bytes de dados. – Tamanho máximo de um datagrama IP = 65.535 (216-1) bytes (RFC 791) – Datagrama – cabeçalho IP – cabeçalho ICMP = 65.535 – 20 – 8 = 65.507 bytes de dados. – Implementações do ping não permitem a emissão de datagramas inválidos, exceto Windows 95 e NT. – Resulta em reboot, panic ou travamentos. Ataques de negação de serviço (DoS) Ameaças e Vulnerabilidades ! Ferramentas: – Fapi (1998) – Blitznet – Trin00 (jun/99)* – TFN (ago/99)* – Stacheldraht(set/99)* – Shaft – TFN2K(dez/99)* – Trank – Trin00 win version Ataques coordenados (DDoS) Ameaças e Vulnerabilidades ! Etapas: 1. Intrusão em massa 2. Instalação do software DDoS 3. Disparo do ataque ! Técnicas utilizadas: – IP Spoofing – SYN Flooding – Pacotes decoy – Execução de comandos remotos – Fragmentação de pacotes – Criptografia na comunicação entre o atacante e os masters Ataques coordenados (DDoS) Ameaças e Vulnerabilidades ! Personagens Ataques coordenados (DDoS) Ameaças e Vulnerabilidades Atacante Masters Agentes Vítima ! Técnicas: – Crackers de senha – Buffer overflow – Missing format string – Exploits ! Sistemas Operacionais ! Protocolos ! Aplicações – Vírus, worms e trojans – Rootkits e backdoors Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Crackers de senha – Programas capazes de revelar senhas cifradas. – Método: ! Utilizam o mesmo algoritmo usado para cifrar as senhas. ! Realizam análise comparativa. – Técnicas: ! Ataque de dicionário; ! Ataque de força bruta; ! Ambos. – Desempenho: ! Podem ser executados de forma distribuída. Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Buffer overflow – Idéia básica: Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Buffer overflow – Visa prover uma quantidade de dados maior do que a memória do programa/servidor pode suportar. – Provoca um desvio no curso de execução do programa vulnerável. Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Missing format string – Programas usualmente não validam os dados de entrada. – Se $mail_to for igual a “joao@uol.com.br; cat /etc/passwd”, o comando executado será: /usr/lib/sendmail joao@uol.com.br; cat /etc/passwd que além de enviar o e-mail pretendido, exibe uma cópia do arquivo de senhas do unix. Ataques no nível de aplicação Ameaças e Vulnerabilidades $mail_to = &get_name_from_input; #pegue o e-mail do formulário open (MAIL, “| /usr/lib/sendmail $mail_to”); print MAIL “To: $mail_to\nFrom: me\n\nHi there!\n”; close MAIL; ! Exploits – Programas que exploram falhas conhecidas de segurança. – Exploram falhas de: ! Sistemas Operacionais ! Protocolos ! Aplicações – Normalmente possuem “man pages” e podem ser facilmente obtidos na Internet. – Permite a qualquer “leigo” se tornar um “hacker” (Script Kiddies). Ataques no nível de aplicação Ameaças e Vulnerabilidades Vulnerabilidades descobertas Ataques no nível de aplicação Ameaças e Vulnerabilidades Fonte: Security Focus - http:// www.securityfocus.com.br Vulnerabilidades conhecidas Ataques no nível de aplicação Ameaças e Vulnerabilidades Fonte: Security Focus - http:// www.securityfocus.com.br Vulnerabilidades conhecidas Ataques no nível de aplicaçãoAmeaças e Vulnerabilidades Fonte: Security Focus - http:// www.securityfocus.com.br ! Vírus, worms e trojans Vírus – Programa que se anexa aos arquivos na máquina alvo e realiza alguma ação indesejada. Worms – Se diferem dos vírus por se espalharem automaticamente, sem necessidade de interação com o usuário. Trojans (Cavalos de Tróia) – Qualquer programa legítimo que tenha sido alterado com a inserção de código não autorizado e que realiza uma função oculta e indesejável. Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Worms atuais SirCam – Técnicas avançadas de contágio, via e-mail e compartilhamento. – Possui um servidor de e-mail próprio. – Subject aleatório, pego de arquivos do computador da vítima. CodeRed – Buffer overflow do Internet Information Service (IIS). – Checa a data da vítima e gera uma lista aleatória de endereços IP para contágio. – 1 a 19 de cada mês: fase de infestação. – 20 a 28 de cada mês: atacar o site da Casa Branca. Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Worms atuais Nimda – Diferentes meios de disseminação: ! Bug do IIS ! E-mail, via Automatic Execution of Embedded MIME Types ! JavaScript ! Compartilhamento Klez – Desabilita o anti-vírus. – Não é preciso abrir o e-mail para o contágio. – Faz o spoofing de sua origem. – Servidor de e-mail próprio. Ataques no nível de aplicação Ameaças e Vulnerabilidades ! Rootkits e backdoors Rootkits – Conjunto de ferramentas que o atacante instala no host vítima para ocultar sua presença e facilitar futuros acessos. Backdoors – Programas que permitem acesso ao atacante por meio de portas desconhecidamente abertas no host vítima. Ataques no nível de aplicação Ameaças e Vulnerabilidades Mecanismos de Segurança a125 Firewalls a125 IDS (Intrusion Detection System) a125 Criptografia ! Definição: – Sistema ou conjunto de sistemas que restringe o acesso entre duas redes. ! Componentes: – Packet-filter ( Static / Dynamic / Stateful) – Proxy (Application-level / Circuit-level) – NAT (Network Address Translation) – VPN (Virtual Private Network) Mecanismos de Segurança Firewalls ! Packet-filter – Realiza o roteamento seletivo de acordo com as informações do cabeçalho do pacote, como: ! Endereço IP ! Protocolo ! Serviço ! Estado ! Flags Firewalls Mecanismos de Segurança ! Proxy – Atua como um intermediário entre o cliente e o servidor. ! Application-level: analisa o payload do pacote ! Circuit-level: simplesmente repassa os dados Firewalls Mecanismos de Segurança ! NAT (Network Address Translation) Firewalls Mecanismos de Segurança 10.1.1.2 10.1.1.3 10.1.1.4 10.1.1.5 10.1.1.6 10.1.1.1 143.106.7.8 Internet – Realiza a conversão de endereços IP (RFC 1631) – Criado para solucionar o problema de escassez de endereços IPv4. – Rede interna ! endereços privados (RFC 1918): #10.0.0.0 - 10.255.255.255 #172.16.0.0 - 172.31.255.255 #192.168.0.0 - 192.168.255.255 NAT ! VPN (Virtual Private Network) – Rede privada construída sobre a infra-estrutura de uma rede pública, normalmente a Internet. Firewalls Mecanismos de Segurança Desvantagens: ! Implicações de segurança Vantagens: ! Redução de custos ! Conectividade global ! Definição: – Sistema de monitoramento, análise e detecção de atividades indevidas ou anômalas. – Tipos: ! Host-based Intrusion Detection System (HIDS) ! Network-based Intrusion Detection System (NIDS) ! Hybrid Intrusion Detection System (Hybrid IDS) – Honeypots ! Sistemas com a exclusiva finalidade de colher informações relativas a invasões e assinaturas de ataques. Mecanismos de Segurança IDS (Intrusion Detection System) ! Definição: – Arte ou processo de escrever em caracteres secretos ou em cifras. Mecanismos de Segurança Criptografia ! Visa garantir: – Privacidade - garantia de que a mensagem não será entendida por um intruso. – Integridade - garantia de que a mensagem não foi modificada por um eventual intruso ativo. – Autenticidade - garantia de que o emissor da mensagem é realmente quem diz ser. ! Alguns protocolos seguros: – SSL – SSH – IPSec Mecanismos de Segurança Criptografia Referências Livros ! Practical Unix & Internet Security – Simson Garfinkel and Gene Spafford ! TCP/IP Illustrated, Volume I – Richard Stevens ! Building Internet Firewalls – Brent Chapman ! Firewalls and Internet Security – Bill Cheswick and Steve Bellovin ! Applied Cryptography – Bruce Schneier ! Segurança de Redes em Ambientes Cooperativos – Emílio Tissato Nakamura e Paulo Lício de Geus Referências Links ! http://www.cert.org ! http://www.nbso.nic.br ! http://www.securityfocus.org ! http://www.insecure.org ! http://www.securenet.com.br ! http://www.security.unicamp.br ! http://www.securitybase.net ! http://www.las.ic.unicamp.br Referências
Compartilhar