Antes de começarmos de fato a entender o método de ataque é necessário pegar uma tangente para explicar o papel do DNS na internet e então entender com profundidade como essa investida funciona.
O QUE É O DNS
DNS é um protocolo cujo acrônimo significa Domain Name System, que traduzindo fica Servidor de Domínio de Nome. Esses servidores são como listas telefônicas e possuem a missão de traduzir nomes de domínio (Ex: www.ciberbox.seg.br) em endereços de IP na versão 4 (32 bits) ou na versão 6 (128 bits). O DNS surgiu na década de 1980, quando a internet estava começando a tomar maiores proporções, até então ainda era chamada de ARPANET. Nessa época, para se conectar a uma outra máquina era necessário digitar seu endereço de IP, o que dificultava na memorização e agilidade dos processos.
A fase embrionária do DNS eram arquivos de texto armazenados, atualizados e distribuídos pela Stanford Research Institute, onde você tinha o endereço e o serviço, mas precisava digitar manualmente. Por consequência, para tornar as conexões mais fáceis e de uma forma automatizar o processo dito anteriormente, Paul Mockapetris propôs uma arquitetura distribuída e hierárquica de serviços, o DNS. Para maiores interesses, seus primeiros trabalhos foram publicados nas RFC 882 e 883.
Fonte: Google Imagens
COMO FUNCIONA O DNS
O DNS é projetado para funcionar da seguinte forma, quando fazemos uma busca no navegador por www.ciberbox.seg.br, por exemplo, antes da requisição chegar até o servidor web do nosso site, ela passa pelo servidor de DNS, onde lá fará uma busca pela URL digitada e assim retornar o número de IP associado, caso a encontre. Assim que o navegador (máquina cliente) recebe o número IP, pode prosseguir com sua busca e demais processos nas camadas de rede e protocolos.
Como já deve imaginar, não existe apenas um servidor mundial que recebe todas as requisições de todos os usuários,na verdade existem vários servidores distribuídos pelo mundo, e esses por sua vez,estão divididos em diversas camadas de operação que serão melhor detalhadas logo em seguida. Google e Cloudflare (as mais famosas no Brasil) são exemplos de empresas que possuem seus próprios serviços de DNS disponibilizados gratuitamente, antes de escolher, sugiro se atentar as políticas de privacidade de cada empresa.
COMO CADA SERVIDOR DNS É DIVIDIDO
Cada servidor DNS, como um todo, é dividido em 4 partes: raiz, TLD, autoritativo e local. Esses servidores são conectados entre e si e responsáveis por apontar para o próximo, de acordo com cada parte do domínio. Esse tipo de arquitetura permite maior velocidade de resposta além de ser mais organizado. Para todo tipo de sistema e pessoas pragmáticas com tendência a desenvolver TOC isso é muito importante. Outro fator que permite alta velocidade de resposta do DNS é o protocolo UDP, que foge o escopo desse artigo, mas fica como dica de leitura e pesquisa. Uma outra maneira de tornar mais rápida a conexão e reduzir congestionamentos, nossa máquina armazena em cache os endereços IP dos últimos domínios por nós digitados, você pode vê-los pesquisando como achar o cache de DNS do seu navegador. Enfim, creio que já podemos falar agora o que é o Spoofing de DNS.
O QUE É DNS SPOOFING
Agora que entendemos o que é um DNS, como ele funciona e até mesmo sua história, podemos abordar que é o DNS spoofing. Como mencionei acima, todas as nossas requisições à sites ou serviços na internet antes passam ou pelo servidor DNS, ou pela cache de DNS em nossa máquina. Essa arquitetura resulta em dois principais ataques: comprometimento de servidores e cache poisoning. Em ambos os ataques o resultado é o mesmo, redirecionamentos para sites falsos e indesejáveis que muito provavelmente serão um clone de um site de banco ou de uma rede social. Feito isso, toda informação que você enviar ao site falso será vista sem criptografia pelos atacantes, afinal o protocolo que usam para o site é o HTTP, e não o HTTPS. Em outras palavras seu login e senha, número de cartão de crédito, sua senha de banco e tantas outras coisas que você enviar. Note que esse ataque não altera a associação existente entre o site real e o IP real daquele site, apenas altera o IP da máquina que você será redirecionado utilizando a URL digitada.
PARTE PRÁTICA
Se você veio até aqui através do nosso post no Linkedin, notou que existe um último slide mostrando um print que tirei da minha tela. Nela foi possível ver que claramente não é essa tela que você esperaria ver se digitasse aquela URL. Esse é apenas um exemplo prático de como funciona o DNS Spoofing em pequenas escalas.
Se você quiser repetir em sua casa poderá usar o XAMPP para hospedar um site no endereço 127.0.0.1, esse endereço de IP é de loopback, em outras palavras, não causa problemas a terceiros. Após iniciar o serviço pelo XAMPP você precisa fazer algumas alterações no arquivo "host" do Windows que pode ser acessado pelo caminho C:\Windows\System32\drivers\etc . Após abrir o arquivo host com o bloco de notas precisa adicionar o IP 127.0.0.1, espaço e ao lado a URL que deseja redirecionar para você mesmo, dessa forma (127.0.0.1 www.exemplopratico.com.br). Se você fez tudo certo foi redirecionado para uma página de dashboard do XAMPP, eu apenas fiz umas alterações adicionais pra ficar explícito como no print.
CASO REAL
Se você quiser saber um pouco mais sobre ataques como esses, recomendamos o excelente vídeo do Gabriel Pato, cujo título é "Esse site pode INVADIR o seu roteador!". Segue o link para o vídeo https://www.youtube.com/watch?v=FH7yuUhyF1k&t=610s .
REFERÊNCIAS
Redes de computadores e a internet - James F. Kurose | Keith W. Ross
Sistemas Operacionais Modernos - Andrew S. Tanenbaum
https://pessoatech.com.br/dns-o-que-e-como-surgiu-e-como-funciona/
Top