Prévia do material em texto
O que temos pra hoje? Temas de Hoje: • Ataques Man in the Middle • Serviço de DNS • DNS Spoofing - Conceito • DNS cache Poisoning • DNS cache Poisoning - Prevenção • IP Forward • IP Forward - Ativando • Mão na massa • Clonando Páginas • Ettercap • Ettercap - Parâmetros www.eSecurity.com.br MITM: Man in the Middle www.eSecurity.com.br O DNS, do inglês Domain Name System (Sistema de Nomes de Domínios), funciona como um sistema de tradução de endereços IP para nomes de domínios. Na verdade, é graças ao DNS que você pode digitar www.esecurity.com.br na barra de endereços do seu navegador para acessar o site da eSecurity, e não um monte de números e pontos. Existem duas formas de acessar uma página na internet: pelo nome de domínio ou pelo endereço IP dos servidores nos quais ela está hospedada. Para que você não precise digitar a sequência de números no navegador sempre que quiser visitar um site, o DNS faz o trabalho pesado de traduzir as palavras que compõem a URL para o endereço IP do servidor. Cada servidor possui um endereço IP único, logo, cada domínio leva a um IP específico. Por isso, não é possível ter dois sites diferentes com URLs iguais. Do contrário, diversos endereços diferentes poderiam encaminhar você para o mesmo IP. www.eSecurity.com.br MITM: Serviço de DNS www.eSecurity.com.br MITM: Serviço de DNS Quando você digita um endereço de host ou página, essa requisição é encaminhada ao servidor DNS que responderá com o IP ao qual está registrado em seu banco de dados, caso ele não possua, fará a busca em um servidor DNS interligado a ele ou responderá que não conhece esse endereço. DNS spoofing é um ataque onde o hacker compromete um servidor de nomes (Domain Name System). O servidor aceita e usa incorretamente a informação de um host que não tem autoridade de dar esta informação. Utilizando esta técnica, o atacante pode direcionar o email ou navegador da vítima para o seu próprio servidor. Com isso ele pode, por exemplo, capturar senhas de cartões de crédito em sites de compras. www.eSecurity.com.br MITM: DNS Spoofing - Conceito Envenenamento de cache DNS (DNS cache poisoning) é o comprometimento na segurança ou na integridade dos dados em um Sistema de Nomes de Domínios (Domain Name System DNS). Esse problema acontece quando os dados que são introduzidos na cache de um servidor de nomes DNS não se originam do servidor de nomes DNS com autoridade real. Tal problema pode ser uma tentativa de ataque malicioso em um servidor de nomes, mas também pode ser o resultado de um erro não intencional de configuração na cache do servidor DNS. Quando um servidor DNS recebe dados não autenticados e armazena os mesmos em sua cache para otimizar o desempenho, tais dados podem ser falsos e, portanto, podemos ter o envenenamento da cache do servidor que fornece os dados não autenticados para seus clientes. www.eSecurity.com.br MITM: DNS cache Poisoning Muitos ataques de envenenamento de cache podem ser evitados em servidores DNS, desde que os mesmos passem a confiar menos nas informações que são passadas para eles por outros servidores DNS, e ignorando qualquer registro DNS que não são relevantes para consulta. Por exemplo, as versões do BIND 9.5.0-P1 e acima, realizam esse tipo de checagem. Como dito acima, randomização da porta fonte para consultas DNS, combinado com o uso de criptografia segura para selecionar ambos, a porta fonte e o nonce 16-bit, pode reduzir bastante a probabilidade de que esses ataques sejam bem sucedidos. Contudo roteadores, firewalls, proxies, e outros dispositivos gateways que realizam tradução de endereços de rede (NAT), ou mais especificamente, tradução de endereço de portas (PAT), frequentemente reescrevem as portas fontes em ordem, a fim de acompanhar o estado da conexão. Quando modificam a porta de origem, os dispositivos PAT removem a aleatoriedade da porta de origem implementada por servidores de nome. www.eSecurity.com.br MITM: DNS cache Poisoning - Prevenção Este tipo de ataque pode também ser mitigado na camada de transporte ou na camada de aplicação por realizar uma validação fim a fim, uma vez que uma conexão é estabelecida. Um exemplo comum disso é o uso da Transport Layer Security e das assinaturas digitais. Por exemplo, ao usar uma versão segura de HTTP, HTTPS, os usuários podem checar se o certificado digital do servidor é válido e pertence ao proprietário esperado do site. Da mesma forma, a segurança do Shell de programas de login remoto checam o certificado digital nos terminais (se conhecido) antes de proceder com a sessão. Para aplicações que baixam atualizações automaticamente, a aplicação pode incorporar um cópia do certificado assinado localmente e validar a assinatura armazenada na atualização do software. Fonte: Wiki www.eSecurity.com.br MITM: DNS cache Poisoning - Prevenção O IP FORWARD é um tipo de roteamento. É estabelecido quando colocamos uma máquina entre dois ou mais segmentos de rede, permitindo a livre passagem de pacotes entre estes sempre que for necessário. É importante ressaltar que o roteamento só irá funcionar quando for feito entre REDES DIFERENTES. Não se pode colocar um roteador entre dois segmentos de rede iguais. Esse procedimento não serve apenas para estabelecer a comutação de segmentos. Ele também é útil para diminuir o tráfego na rede como um todo, pois só deixa o pacote mudar de segmento se isso for realmente necessário. www.eSecurity.com.br MITM: IP Forward www.eSecurity.com.br MITM: IP Forward Para estabelecermos o IP FORWARD entre dois segmentos de rede, basta: 1. Inserir um micro com duas placas de rede entre os segmentos de rede, configurando-as corretamente; 2. Definir, em cada máquina, de cada segmento, quem é o seu gateway; 3. Ativar o IP FORWARD via kernel. Para fazer isso no Linux, você possui 2 maneiras. 1. Não persistente, ou seja, quando você reiniciar, ele voltará ao estado inicial: Executando o comando echo 1 > /proc/sys/net/ipv4/ip_forward ou o comando sysctl -w net.ipv4.ip_forward=1 2. Persistente; estará disponível até que você efetue nova alteração: Editando o arquivo sysctrl.conf e descomentando a linha: net.ipv4.ip_forward = 1 www.eSecurity.com.br MITM: IP Forward - Ativando www.eSecurity.com.br MITM: Mão na Massa! Você pode clocar uma página utilizando um servidor WEB tradicional, porém, pode usar o SET (Social Engineering Toolkit) para realizar esse tipo de trabalho. Pode também fazer isso com diversos sites para ter melhores opções na coleta de dados, porém, isso depende muito do objetivo do seu ataque. Isso eliminará o processo de engenharia social, pois, não será necessário que seu alvo click em um link e muito menos se preocupe com o endereço da página, já que, ele de fato irá acreditar que a página acessada é a página original. www.eSecurity.com.br MITM: Clonando Páginas Ettercap Ettercap é um dos melhores Sniffers de rede para ataques Man in the Middle. Possui suporte com SSH1, SSL, Injeção de Caracteres, etc. Uso: ettercap –Tqi eth0 –M ARP // // -P dns_spoof -T = Apresenta em texto na tela o conteúdo sniffado -M = Man in the Middle Attack (arp, ICMP, DHCP, etc) -o = Only-mitm, desativa o Sniff e executa apenas o MITM -q = Quieto -i = iface, placa de rede ao qual quer capturar o conteúdo -P = Plugin, ativa o plugin necessário para o ataque // // = Seleciona todas as redes e todos os gateways, trocando broadcast entre todos. Você pode substituir o // por /192.168.1.1/ /192.168.1.2-10/ O primeiro // é seu gateway, o segundo é sua rede e as maquinas a serem sniffadas www.eSecurity.com.br MITM: Ettercap Verificar se o IP_Forward está ativo Editar o arquivo ettercap.conf #gedit /etc/ettercap.conf Zerar as linhas, ec_uid e ec_gid e descomentar as linhas do IPTABLES Corrigir o DNS do Ettercap #gedit /usr/local/share/ettercap/etter.dns Adicionar os dominios necessárioswww.eSecurity.com.br MITM: Ettercap - Parâmetros E-mail: alan.sanches@esecurity.com.br Twitter: @esecuritybr e @desafiohacker Skype: desafiohacker Fanpage: www.facebook.com/academiahacker printf ("\Chega por hoje\n"); www.eSecurity.com.br www.eSecurity.com.br mailto:alan.sanches@esecurity.com.br